Property Graphs in Kineviz

A labeled property graph expresses information as patterns built from labeled entities, connections, and their associated properties. Exploring graph patterns in terms of both direction and multi-hop connection can quickly reveal insights that are difficult or impossible to discover within tables or hierarchical structures.

Property Graph Elements

01 01 01 PropertyGraphExample

In Kineviz, a property graph consists of

  • Nodes labeled with a specific Category, rendered as circles or user-selected icons. In Kineviz, a node has only one category label and is therefore an entity within a single category. Each node appears on a Kineviz project canvas colored and styled according to its category.

  • Edges labeled with a specific Relationship, a source node ID and a destination node ID. An edge is rendered as a line connecting two nodes, colored according to its relationship label. A relationship can be defined as directed or directionless. For example, a directed relationship such as PARENT_OF would have an arrow at one end, while a directionless one such as FRIENDS_WITH would not.

    Unconnected (floating) nodes can exist; unconnected edges cannot.
  • Properties are key-value pairs consisting of a Property Name and its Property Value, associated with a specific category or relationship and a specific node or edge. For example, the selected node of the Book category shown below includes author, published, series, and title properties, each with its property value.

    01 01 02 PropertyGraph

    Property values are not initially shown on nodes or edges. You can select properties whose values are displayed as captions. You can also review and work with properties and their values in an information panel, tables or the Kineviz legend list.

    Property values can be defined in Kineviz as numbers, text, geospatial coordinates, urls, dates or timestamps. Multiple values can be entered for a property of a node or edge.

The Property Graph Schema

The categories, relationships, and properties in a property graph define its current data model, or schema.

01 01 03 PropGraphSchema

A property graph schema is flexible. You can easily extend and modify it, which lets you explore data from different perspectives. At any time you can:

  • Create new categories and relationships.

  • Add a property to a node or edge.

  • Delete a property value.

  • Save and export the schema, or import it into another project.

Sources of Graph Data

Data can be added to your graph from many sources. You can:

  • Pull or query graph data from a connected graph database, or load data exported from other graph databases or another Kineviz project. Data exported from a graph database 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 model, such as a flat CSV file, each row in the table is imported as a node of a single default category. In most cases, you will re-model data imported by drag and drop using Kineviz transforms.

  • Add new nodes and edges of existing or new categories or relationships directly in Kineviz. Normally, this is only done for very small amounts of data.

  • Edit category, relationship, or property labels, and edit property values.

Graph Data Modeling

A property graph data model is both flexible and extensible, a powerful advantage for iterative exploration. New categories, relationships, and properties can be added, and existing ones re-defined as investigation and analysis proceeds.

  • The Kineviz Mapping Editor lets you construct graph patterns from the columns in one or more flat CSV files or relational database tables, and apply the model during import. Your mapping is saved and can be re-used and edited. It can even be applied to other tabular files that have the same column headings.

    01 01 04 SourceCSVMapping

  • Once a property graph is created in a project, you can

    • Edit category, relationship, or property labels, and edit property values.

    • Use Kineviz Transforms to quickly define and apply new data models. You can extract a property as a new category and define its connected relationship, aggregate, merge, or simplify complex patterns, and re-format and combine property values as needed.