Graph data is a way of expressing information in terms of entities and their connections. The ability to model connections, their direction, and their transitive connectedness (e.g. A, to B, to C, to D) provides entirely new ways to view, use, and extend data. This explicit emphasis on patterns can quickly yield insights that are difficult if not impossible to discover using older relational database models.

Anatomy of Graph Data

Graph data are composed of three elements: nodes, edges, and properties.

Nodes are entities, such as people or events. Each node is represented in the graph space by a circle. In GraphXR, a node can display an icon, portrait image, or caption. All nodes of a given type comprise a Category.

Edges are connections between nodes, such as taken_at or purchased_by, represented by a line connecting two nodes. All edges of a given type comprise a Relationship. Directed relationships such as parent_of have an arrow at one end, while directionless ones such as friends_with do not.

Properties are attributes, such as name or location that may be associated with nodes or edges. Property values can be in the form of numbers, text, geospatial coordinates, date or time. Multiple values can be entered for a single property of a node or edge.

Categories and relationships are used to define a pattern by which nodes and edges connect to one another. Once defined, patterns can be explicitly viewed, analyzed, and transformed in GraphXR's virtual 3D graph space.

Graph Data Modeling

For graph data, the pattern (or schema, or data model) is both flexible and extensible. New categories, relationships, and properties can be added, and old ones re-defined in response to new data sources and new inquiries that arise as investigation and analysis goes forward.

Since data exploration and analysis is highly iterative, this is a powerful advantage. You can quickly re-cast data to look at existing data from different perspectives, and you can easily incorporate new data sources as you need them. GraphXR’s transform functions let you map properties to new nodes and relationships, and reduce data complexity by aggregating or merging data in various ways.

Sources of Graph Data

GraphXR enables you to work with multiple data sources. You can:

  • Pull or query graph data from a Neo4j graph database connected to GraphXR, or load data exported in a variety of formats from other graph databases (or another GraphXR project). Data exported from a graph environment will include its defined categories, relationships, and properties.

  • Import data in CSV, JSON, and many other formats simply by drag and drop. When you import data that has no associated graph schema, such as a flat CSV file, each row in the table is imported as a node of a single default category.

  • Query a CSV file or RDBMS table, and construct graph patterns from the tabular data using GraphXR’s Mapping Editor.