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 02 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 03 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 04 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. This is a powerful advantage because data exploration and analysis is highly iterative. New categories, relationships, and properties can be added, and old ones re-defined as investigation and analysis proceeds.

  • The Kineviz Mapping Editor lets you construct graph patterns from the columns in a single flat CSV file or relational database table, 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 05 SourceCSVMapping

  • Once data have been imported, 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.

      • Re-format and combine property values as needed.

        01 01 06 SourceTransformExtract