ArcGIS Blog

Data Management

ArcGIS Enterprise

What is a Knowledge Graph?

By Adam Martin and Nolan Reichmann

A knowledge graph organizes and analyzes the relationships between data entities, offering powerful insights for decision-making. This blog explores how knowledge graphs, powered by graph databases, transform data analysis and how ArcGIS Knowledge enhances this process by integrating spatial relationships, providing a comprehensive solution for modern data challenges within GIS.

Graph Databases

Depending on the organization, the terms knowledge graphs, graph databases, and graphs may be used interchangeably. Let’s define each, starting with graph databases.

A graph database is a data store that is optimized to analyze and explore the relationships between connected data. Graph databases store relationships, which are often implicit in our data models, as explicit data points.

Graph versus Relational Database Comparison

Unlike traditional relational data management systems (RDBMS), which store data as tables, graph databases store data as entities (nodes) and relationships (edges). They excel in handling complex and evolving networks of data. For example, asking questions about how two people are connected financially across multiple different financial transactions and accounts becomes much easier and faster using a graph database. These relationships between entities in our data can also have stored directionality to support faster querying.

While handling data with complex many-to-many relationships, graphs can actually help simplify the conversations between analysts, managers and data engineers by providing an intuitive and efficient way to store data in a manner that better mirrors the real world.

This focus on networks, or connected data, makes graph databases ideal for social networking analysis, fraud investigation, export compliance, digital asset management, and supply chain resilience planning, among other types of analysis. While traditional databases, like relational databases, are capable of supporting some link analysis, they are not the best option when querying data from across multiple relationships, especially at larger scales.

Types of Graph Databases

When looking at the landscape of graph databases, we generally categorize them into two types: Property graphs and RDF graphs. The main difference between the two is how they model and query relationships as data.

  • Property graphs store data as set of entities (a.k.a. nodes or vertices), and a set of relationships (a.k.a edges or arrows) connecting those objects. These entities and relationships can each have multiple properties, or attributes, which are stored as key-value pairs. Each node can have a set of outgoing edges or incoming edges with directionality. Popularized by Neo4j, property graphs tend to use openCypher query language, which is also the foundation for the new Graph Query Language (GQL) ISO standard.
  • Resource Description Framework (RDF) graphs store information using a subject-predicate-object model known as ‘triples.’ Subjects and objects are essentially nodes and predicates are relationships. Unlike property graphs, relationships do not typically store properties. These data stores typically use the SPARQL query language, a W3C standard, and tend to be excellent for capturing formal language models. However, they can also explode to become much more detailed and complex as each property of an entity tends to be stored with its own relationship to the entity.

The distinctions between these types of databases continue to evolve and become less clear. Each graph database implementation comes with its own nuances, advantages and disadvantages. Additionally, there are tools for converting data models between the different databases. Property graphs, in particular, have gained popularity in recent years due to their relative efficiency, scalability, ease of use, and the support of a large user community.

Elements of a Property Graph

Knowledge Graphs

So, we now know what a graph database is, but what is a knowledge graph?

A knowledge graph is an implementation of a graph data model that organizes and defines how real-world objects (people, places, or events) are connected to each other. Not only does it store the relationships between “things”, but it also includes relationships and entities to define what those “things” are. Together, they help us explore, analyze, and understand the our networks of data with more precision and less ambiguity. Technically, knowledge graphs can be implemented in both property graphs and RDF graphs.

You can think of a knowledge graph as a combination of:

  • Instance data: Basic information about real-world things, where they are, and how they are related. This data can be imported from business systems, documents, or your GIS.
  • Conceptual data: This adds another layer, explaining the meaning or semantics behind the instance data. It acts like the official vocabulary or rules that explain how everything in the system is connected and why it’s important for the business or organization. Some organizations and industries may formalize this part as a managed ontology for their organization and data. Historically, this type of modeling has used the OWL language standard whose outputs are RDF files.
Bring in metadata and encyclopedic data into your knowledge graph to help clarify what your real world data means to stakeholders or improve the discovery of related things.

When put together, these elements create a self-describing data model that enhances the data’s fidelity to its intended uses and the potential for reuse.

Knowledge graphs can be narrowly or broadly scoped. They can be narrowly scoped to specific domains and applications to accomplish specific queries and workflows. But graph databases are especially flexible and well-suited to fusing additional data over time without disrupting previous analysis workflows and performance. Therefore as knowledge graph implementations mature in an organization, they begin to serve as a broader analytical foundation for multiple functions within an organization.

Typically, as graph adoption increases within an organization, the return on investment with graph data modeling increases. New data-driven decisions can be made more quickly, since there is a consensus on the meaning and context of their data.

ArcGIS Knowledge and Knowledge Graphs

Now that we know what a graph database is and how it can support a knowledge graph, we can now look at how ArcGIS Knowledge can help us create and enhance our knowledge graphs.

In short, ArcGIS Knowledge enables the use of property graph databases that are spatially-enabled within ArcGIS applications.

The importance of spatially enabled knowledge graph

As we discussed, knowledge graphs help us explore, analyze, and understand the patterns of relationships within a network of data. Spatial relationships are one critical class of relationships that represent the world around us. Spatial relationships – such as proximity, intersecting with, or in line of sight of – are often critical for finding important connections not discoverable through other data.

In order to create spatial relationships, entities need location properties stored within the knowledge graph and to be easily explored and analyzed within your applications. With locations and spatial relationship easily accessible within your knowledge graph, analysts can more easily answer critical questions. Such as, how will my supply chain and customers be impacted if this specific hurricane disrupts a key supplier in its path? Or, which people who have been seen loitering near critical infrastructure have also been making phone calls to a known terrorist through a intermediary?

 

Entities can have location properties and relationships can represent spatial relationships.

ArcGIS Knowledge enables users to easily create, manage, explore and query knowledge graphs within a spatial context.

ArcGIS Knowledge builds upon ArcGIS Enterprise technology by enabling access to a turnkey graph data store with a flexible data model that supports location properties with points lines and polygons. It allows users to create and manage multiple knowledge graphs, enables link analysis, and advanced data investigations through multiple desktop and web application options. It works with GIS applications like ArcGIS Pro, ArcGIS AllSource, ArcGIS Knowledge Studio, and ArcGIS Developer APIs.

ArcGIS is one of the few platforms that provides unified analytic applications to its users. ArcGIS provides multiple turnkey data storage options for analytics and data management, including a graph store, which power knowledge graphs. ArcGIS also provides applications that work seamlessly with various data types and stores – graph networks, real-time, spatial, imagery. Enabling all of these data in one application suite provide analysts with the full context and analytical power they need to support decision makers. Combining spatial analysis and visualization with deep graph queries and link analysis workflows provides a serious advantage these workflows.

This simple knowledge graph example shows how property owners are connected to properties within a spatial context.

Knowledge Graphs in Third Party Graph Databases

Unlike some enterprise link analysis platforms, ArcGIS Knowledge was designed with interoperability in mind and works with external graph databases. This additional functionality enables ArcGIS Knowledge to support Neo4j Enterprise, AuraDB from Neo4j, and ArangoDB Enterprise.

With Neo4j, organizations also have the option to connect directly to their existing graph databases loaded by their own data management tools. This allows users to quickly connect their graph databases to the ArcGIS visualization and analytics applications and developer SDKs without having to copy or create new data pipelines. Neo4j databases however only support storage of point geometries as properties. With ArangoDB, organizations can also store lines and polygon as spatial properties with their entities as they scale up their data holdings.

By supporting multiple graph databases, ArcGIS Knowledge provides users with the flexibility to choose the database that best fits their specific needs and use cases. Since each graph database has its own strengths and capabilities, the user is given the option to choose which tool best meets their needs.

Conclusion

Knowledge graphs are transforming how organizations understand and leverage complex relationships within their data. By integrating graph databases and spatial analytics, ArcGIS Knowledge allows users to visualize and analyze these connections with greater precision. Whether it’s enhancing supply chain resilience, uncovering fraud, or managing digital assets, knowledge graphs provide a flexible and scalable foundation for data-driven decision-making. As graph technologies continue to evolve, adopting tools like ArcGIS Knowledge will enable organizations to gain deeper insights, streamline workflows, and unlock new opportunities for innovation across industries.

If you are interested in ArcGIS Knowledge and how it can benefit you, please reach out to your account representative or visit us on our website.

Share this article

Subscribe
Notify of
0 Comments
Oldest
Newest
Inline Feedbacks
View all comments