https://neo4j.com/blog/what-is-knowledge-graph/ Skip to content The GraphRAG Manifesto: Unlock Better GenAI Results With Knowledge Graphs | Read Now The Neo4j Graph Platform - The #1 Platform for Connected Data Menu Neo4j logo Search Close Menu * Products + Neo4j Graph Database Self-managed, deploy anywhere + Neo4j AuraDB Fully-managed graph database as a service + Neo4j Graph Data Science Graph analytics and modeling platform + Deployment Center Get started. Download, integrate, and deploy. + GRAPH TOOLS + Neo4j Developer Tools Tools to make graph application development easier + Neo4j Workspace Import, explore, and query Neo4j + Neo4j Bloom Easy graph visualization and exploration + Cypher Query Language Declarative graph query language, created by Neo4j + Neo4j GraphQL Library Low-code, open-source API library * Use Cases + Generative AI Back your LLMs with a knowledge graph for better business AI + Industries and Use Cases Fraud detection, knowledge graphs, financial services, and more + Case Studies Customer success stories across industries + Customers Companies, governments, and NGOs using Neo4j * Developers & Data Scientists + Developer Center Best practices, guides, tutorials, and downloads + GraphAcademy[Icon-Graph] Free online courses and certifications. Join the 100K+ Neo4j experts. + DEVELOPERS + Documentation[Icon-Docum] Manuals for Neo4j products, Cypher, and drivers + Developer Blog Deep dives into more technical Neo4j topics + Community A global forum for online discussion + DATA SCIENTISTS + Data Science Documentation[Icon-Docum] Manuals for the Graph Data Science library + Graph Data Science Home Learn what Neo4j offers for data science + Get Started With Graph Data Science Download or get started in Sandbox today + Data Science Community A global forum for data-driven professionals * Learn + LEARN + GraphAcademy[Icon-Graph] Free online courses and certifications + Resource Library White papers, data sheets, and more + Case Studies Customer success stories across industries + Executive Insights Get to know Graph Technology + CONNECT + Neo4j Events Hub[Icon-Event] Live and on-demand events, training, webinars, and demos + Neo4j Blog Daily reads on general Neo4j topics + FEATURED EVENTS + GraphSummit Touring 20+ cities globally. Join us for free and hear from data and business trailblazers. + Connections Free, online conference every quarter focusing on new themes every time * Pricing * QUICK LINKS * Partners + Find a Partner + Become a Partner + Solution Partners + OEM Partners + Technology Partners + Partner Portal Login * Company + About Us + Newsroom + Awards and Honors + Graphs4Good + Careers + Culture + Diversity + Leadership * Support * Aura Login Get Started Contact Us * Aura Login * PartnersPartners: submenu + Find a Partner + Become a Partner + Solution Partners + OEM Partners + Technology Partners + Partner Portal Login * CompanyCompany: submenu + About Us + Newsroom + Awards and Honors + Graphs4Good + Careers + Culture + Diversity + Leadership * Support * Search Neo4j logo * ProductsProducts: submenu [gdb] Neo4j Graph Database Intro to the advantages of graph databases [auradb] Neo4j AuraDB Fully-managed graph database as a service Neo4j Graph Data Science Graph Analytics and modeling platforms Deployment Center Get started. Download, integrate, and deploy. Graph Tools o Neo4j Developer Tools Tools to make graph application development easier o Neo4j Workspace Import, explore, and query Neo4j o Neo4j Bloom Easy graph visualization and exploration o Cypher Query Language Declarative graph query language, created by Neo4j o Neo4j GraphQL Library Low-code, open-source API library o Neo4j Data Connectors Download Apache Kafka, Apache Spark, and BI tools * Use CasesUse Cases: submenu [genai] Generative AI Back your LLMs with a Knowledge Graph for better business AI Learn More Industries & Use Cases Fraud detection, knowledge graphs, financial services, and more All Use Cases o Case Studies Customer success stories across industries o Customers Companies, governments, and NGOs using Neo4j * Developers & Data ScientistsDevelopers & Data Scientists: submenu Developer Center Best practices, guides, tutorials, and downloads Learn More GraphAcademy Free online courses and certifications. Join the 100K+ Neo4j experts. Learn More Developers o Documentation[Icon-Docum] Manuals for Neo4j products, Cypher, and drivers o Developer Blog Deep dives into more technical Neo4j topics o Community A global forum for online discussion DATA SCIENTISTS o Data Science Documentation[Icon-Docum] Manuals for the Graph Data Science library o Graph Data Science Home Learn what Neo4j offers for data science o Get Started With Graph Data Science Download or get started in Sandbox today o Data Science Community A global forum for data-driven professionals * LearnLearn: submenu LEARN o GraphAcademy[Icon-Graph] Free online courses and certifications o Resource Library White papers, data sheets, and more o Case Studies Customer success stories across industries o Executive Insights Get to know Graph Technology CONNECT o Neo4j Events Hub[Icon-Event] Live and on-demand events, training, webinars, and demos o Neo4j Blog Daily reads on general Neo4j topics FEATURED EVENTS Neo4j GraphSummit logo Hear directly from data and business trailblazers Touring 20+ cities globally | Free Neo4j Connections logo Join our online conference. New themes every time. Virtual | Every Quarter | Free * Pricing * Contact Us * Get Started Free Warning: JavaScript is disabled on your browser. Parts of Neo4j.com will not work properly. (Neo4j Blog)-[:BACK] What Is a Knowledge Graph? John Stegeman Picture John Stegeman, Graph Database Product Specialist, Neo4j Jul 22 11 mins read --------------------------------------------------------------------- Knowledge graph concept that includes organizing principles, relationships, and data. A knowledge graph is an organized representation of real-world entities and their relationships. It is typically stored in a graph database, which natively stores the relationships between data entities. Entities in a knowledge graph can represent objects, events, situations, or concepts. The relationships between these entities capture the context and meaning of how they are connected. A knowledge graph stores data and relationships alongside frameworks known as organizing principles. They can be thought of as rules or categories around the data that provide a flexible, conceptual structure to drive deeper data insights. The usefulness of a knowledge graph lies in the way it organizes the principles, data, and relationships to surface new knowledge for your user or business. The design is useful for many usage patterns, including real-time applications, search and discovery, and grounding generative AI for question-answering. Sometimes, people overcomplicate the concept of a knowledge graph. You might hear about enterprise-wide structures that consolidate and connect information across data silos and various sources. While that does describe a knowledge graph (one that can underpin a data integration use case), it describes one with a wide scope. Thinking only in terms of bridging large datasets and multiple data sources can make creating and implementing knowledge graphs seem complicated and time-consuming. But knowledge graphs don't need to be broad or elaborate. You can build one with a much smaller scope to solve a use-case-specific problem. How Knowledge Graphs Work You may have heard of knowledge graphs in the context of search engines. The Google Knowledge Graph changed how we search for and find information on the Web. It amasses facts about people, places, and things into an organized network of entities. When you do a Google search for information, it uses the connections between entities to surface the most relevant results in context, for example, in the box Google calls the "knowledge panel." La sagrada familia: Google knowledge graph. The Google knowledge panel of La Sagrada Familia includes an image of the site, a map, a description, address, hours of operation, the architects who built it, its height, and more. The entities in the Google knowledge graph represent the world as we know it, marking a shift from "strings to things." Behind this simple phrase is the profound concept of treating information on the web as entities rather than a bunch of text. Since information is organized as a network of entities, Google can tap into the collective intelligence of the knowledge graph to return results tailored to the meaning of your query rather than a simple keyword match. Key Characteristics Now that you understand how knowledge graphs organize and access data with context, let's look at the building blocks of a knowledge graph data model. The definition of knowledge graphs varies depending on whom you ask, but we can distill the essence into three key components: nodes, relationships, and organizing principles. Nodes Nodes denote and store details about entities, such as people, places, objects, or institutions. Each node has a (or sometimes several) label to identify the node type and may optionally have one or more properties (attributes). Nodes are also sometimes called vertices. For example, the nodes in an e-commerce knowledge graph typically represent entities such as people (customers and prospects), products, and orders: Example of nodes in an e-commerce graph. Relationships Relationships link two nodes together: they show how the entities are related. Like nodes, each relationship has a label identifying the relationship type and may optionally have one or more properties. Relationships are also sometimes called edges. In the e-commerce example, relationships exist between the customer and order nodes, capturing the "placed order" relationship between customers and their orders: Relationship of a person to Order. Organizing Principle(s) Organizing Principles are a framework, or schema, that organizes nodes and relationships according to fundamental concepts essential to the use cases at hand. Unlike many data designs, knowledge graphs easily incorporate multiple organizing principles. Organizing principles range from simple (product line -> product category -> product taxonomy) to complex (a complete business vocabulary that explains the data in the graph). Think of an organizing principle as a conceptual map or metadata layer overlaying the data and relationships in the graph. The model uses the same node-and-relationship structure as the rest of the knowledge graph to describe the organizing principles - which means you can write queries that draw from both instance data and organizing principles. In the e-commerce example, an organizing principle might be product types and categories: Organizing principle of a knowledge graph. What About Ontologies? When learning about knowledge graphs, you might come across articles on ontologies and wonder where they fit in. An ontology is a formal specification of the concepts and the relationships between them for a given subject area; semantic networks are a common way to represent ontologies. Put simply, ontologies are a type of organizing principle. Ontologies can be complex and require a great deal of effort to define and maintain. When deciding whether an ontology is needed, it's critical to consider the problems you're trying to solve with a knowledge graph. In many cases, it won't be necessary. In the e-commerce example, using a product taxonomy as the organizing principle is sufficient for a product recommendation use case. Think of the knowledge graph as a growing, evolving system to simplify your design in the early stages and deliver value sooner. If you pick the right technology to implement your knowledge graph, you can expand and evolve the graph as your needs change. In this way, you can add ontologies when your use case requires them rather than forcing yourself to build them up-front. Knowledge Graph Example Let's see what a knowledge graph might look like. Below is a simple knowledge graph of the e-commerce example that shows nodes as circles and relationships between them as arrows. The organizing principles are also stored as nodes and relationships, so the illustration uses some color shading to show which nodes and relationships are the instance data and which are the organizing principles: Example of a knowledge graph. An example knowledge graph showing nodes as circles and relationships as arrows. The instance data and organizing principles are highlighted for display. Knowledge Graphs and Graph Databases Creating a knowledge graph involves conceptually mapping the graph data model and then implementing it in a database. There are many databases to choose from, but choosing the right one can simplify the design process, speed up development and implementation, and make it easier to adapt to future changes and improvements. Property Graphs Native property graph databases, such as Neo4j, are a logical choice for implementing knowledge graphs. They natively store information as nodes, relationships, and properties, allowing for an intuitive visualization of highly interconnected data structures. The physical database matches the conceptual data model, making designing and developing the knowledge graph easier. When you use property graphs, you get: + Simplicity and ease of design: Property graphs allow for straightforward data modeling when designing the knowledge graph. Because the conceptual and physical models are very similar (often the same), the transition from design to implementation is more straightforward (and easy to explain to non-technical users). + Flexibility: It's easy to add new data, properties, relationship types, and organizing principles without extensive refactoring or code rewrites. As needs change, you can iterate and incrementally expand the knowledge graph's data, relationships, and organization. + Performance: Property graphs offer superior query performance compared to alternatives like RDF databases or relational databases, especially for complex traversals and many-to-many relationships. This performance comes from storing the relationships between entities directly in the database rather than re-generating them using joins in queries. A native property graph database traverses relationships by following pointers in memory, making queries that traverse even complex chains of many relationships very fast. + Developer-friendly Code: Property graphs support an intuitive and expressive ISO query language standard, GQL, which means you have less code to write, debug, and maintain than SQL or SPARQL. Neo4j's Cypher is the most widely used implementation of GQL. Property Graph Vs. Triple Stores (RDF) People sometimes think of property graphs and triple stores as equally viable options for building a knowledge graph, but triple stores (also known as RDF databases) have considerable disadvantages. Based on the Resource Description Framework (RDF), triple stores use a granular approach to design and storage. Triple stores express all data in the form of subject-predicate-object "triples." This model does not support relationships with properties or multiple same-typed relationships between entities. To accommodate real-world use cases, you will need to implement workarounds. Common workarounds include turning relationships into objects (called reification) or using singleton properties to capture properties using extra "type-of" relationships. These workarounds mean larger databases, additional complexity in the physical model, and poor query performance. Because reification and singleton properties force tough decisions about the design up front, triple stores don't lend themselves to solving real-world problems that involve messy data domains. Knowledge graphs built on a triple store are more challenging to design, time-consuming to implement, and difficult to change. Property Graph Vs. Relational Databases Relational databases and other non-native graph approaches suffer similar design friction. Neither relational nor document databases store relationships - they must be synthesized at runtime with joins or value lookups in query code. Since the relationships reside in the code rather than with the dataset, each application and data use must have its own implementation. SQL (the relational database query language) forces you to define every join in the query itself. As a result, the knowledge graph becomes more difficult to manage and yields poor runtime performance as the number of relationships expands. Knowledge Graph Use Cases Knowledge graphs offer a powerful tool for storing and organizing data to enable a more sophisticated understanding of that data. To understand how companies have done this, let's look at examples of using knowledge graphs to tackle particular problems. Though not a comprehensive list of use cases, it's a set of concrete examples demonstrating knowledge graphs in real-world applications. Generative AI for Enterprise Search Applications In generative AI applications, knowledge graphs capture and organize key domain-specific or proprietary company information. Knowledge graphs are not limited to structured data; they can handle less organized data as well. GraphRAG, a technique that grounds large language models with knowledge graphs, is emerging as the foundation of AI applications that use proprietary domain data (these are known as RAG applications). A knowledge graph grounding increases response accuracy and improves explainability with the context provided by data relationships. Industry leaders such as Deloitte highlight the critical role of knowledge graphs for building enterprise-grade GenAI. Gartner places knowledge graphs having a "high mass," being an impactful technology for GenAI today: This Impact Radar from Gartner highlights knowledge graphs as a high-impact technology within the Generative AI landscape. This Impact Radar from Gartner highlights knowledge graphs as a high-impact technology within the Generative AI landscape (Credit: Gartner) Fraud Detection and Analytics in Financial Services, Banking, and Insurance In Fraud Detection and Analytics, the knowledge graph represents a network of transactions, their participants, and relevant information about them. Companies can use this knowledge graph to quickly identify suspicious activity, investigate suspected fraud, and evolve their knowledge graph to keep up with changing fraud patterns. Algorithms such as pathfinding and community detection provide key signals to machine learning algorithms that can uncover more sophisticated fraud networks. Master Data Management In Master Data Management (e.g., for Customer 360 use cases), the knowledge graph provides an organized, resolved (i.e., "de-duped"), and comprehensive database of a company's customers and the company's interactions with them. This organized view of customers is especially important for companies with multiple divisions or applications interacting with customers. Without a knowledge graph, it can be difficult or impossible to obtain an accurate view of the customer. A knowledge graph links customer behaviors across multiple applications through an organizing principle that identifies them as coming from the same customer. Supply Chain Management In Supply Chain Management, a knowledge graph represents the network of suppliers, raw materials, products, and logistics that work together to supply a company's operations and customers. This end-to-end supply chain visibility allows managers to identify weak points and predict where disruptions may occur. Graph algorithms such as shortest path optimize the supply chain in real time by finding the most direct route between A and B. Investigative Journalism In Investigative Journalism, knowledge graphs capture key entities (companies, people, bank accounts, etc.) and activities under investigation. Organizing these entities in relation to one another makes it possible to find hidden patterns, such as distant relationships between entities that shouldn't be present. Investigators may use techniques such as entity resolution to reveal entities hiding behind fake or shell identities to mask their activities. Algorithms like community detection and link prediction also provide insight and areas for further investigation. Drug Discovery in Healthcare Research Knowledge graphs store information about the research subject in medical and other research use cases. For example, the knowledge graph could have protein and genome sequences together with environmental and chemical data, revealing intricate patterns and expanding our knowledge of proteins. Getting Started With Knowledge Graphs Knowledge graphs are organized representations of real-world entities and their relationships, overlaid with one or more organizing principles that frame the information in context to drive insight from the data. Knowledge graphs underpin insightful applications and artificial intelligence solutions across many use cases. O'Reilly in text above the book title, which reads Building Knowledge Graphs: A Practitioner's Guide. Image of horned goat lunging forward behind the Neo4j logo. Authors are Jesus Barrasa & Jim Webber. To master the concepts and techniques behind knowledge graphs and get hands-on experience, download a free copy of the O'Reilly book Building Knowledge Graphs: A Practitioner's Guide by Jesus Barrasa and Jim Webber. The guide covers how to build, manage, query, analyze, and visualize your knowledge graph so you can develop data-backed applications and advanced analytics. Get My Copy Learning Resources + Semantics workshops on GitHub. + Ontology-Based Reasoning 101. + Ontology-driven Knowledge Graph Construction. + GraphAcademy for knowledge graph fundamentals using a property graph model in the Neo4j Graph Database. [Blog-Asset] Neo4j's fully managed cloud service Learn More > [Blog-Asset] GraphAcademy Free online courses & certifications. Join 100K+ Neo4j experts! Start Learning > [Blog-Asset] Developer Blog Deep dives into more technical Neo4j topics Start Reading > [Blog-Asset] Knowledge Graphllmontology * * * Neo4j Community Disclaimer John Stegeman Image Author John Stegeman, Graph Database Product Specialist, Neo4j John "Steggy" Stegeman is a Senior Graph Database Product Specialist with Neo4j. Prior to joining Neo4j, he held solution architect and consulting roles at Oracle, DXC, Waterline Data, and Hitachi Vantara. John is a self-avowed technology nerd who loves using technology to solve real-world enterprise challenges Related Articles Dmitrii Kamaev This Week in Neo4j: Knowledge Graph, Podcast, Llamaindex, SQL/GQL and moreAug 10 3 mins read Sharmistha Chatterjee This Week in Neo4j: GenAI, MEAN stack, Knowledge Graph, Ransomware and moreJul 27 3 mins read Mike Morley This Week in Neo4j: GraphRAG, Visualization, GraphGeeks, CSV Import and moreJul 20 2 mins read [homepage-v] [homepage-v] [homepage-v] [homepage-v] Ready To Get Started? Neo4j has been downloaded over 2 million times and has a large global community of developers. Get Started for Free Products * Neo4j Graph Database * Neo4j AuraDB * Neo4j Graph Data Science * Deployment Center * Professional Services * Pricing Graph Tools * Neo4j Developer Tools * Neo4j Workspace * Neo4j Bloom * Neo4j GraphQL Library * Neo4j Data Connectors * Cypher Query Language Use Cases * Generative AI * Knowledge Graphs * Industries & Use Cases * Case Studies * Customers Developers * Developer Home * Documentation * Deployment Center * Developer Blog * Community * Virtual Events * GraphAcademy * Release Notes Data Scientists * Graph Data Science Home * Data Science Documentation * Get Started with Graph Data Science * Data Science Community * GraphAcademy for Data Science Learn * Resource Library * Neo4j Blog * GraphAcademy * Research Center * Case Studies * Executive Insights * Events Calendar * GraphSummit * Connections * Webinars Partners * Find a Partner * Become a Partner * Solution Partners * OEM Partners * Technology Partners * Partner Portal Login Company * About Us * Newsroom * Awards and Honors * Graphs4Good * Careers * Culture * Diversity * Leadership * Support * Trust Center Contact Us - * US: 1-855-636-4532 * Sweden: +46 171 480 113 * UK: +44 20 3868 3223 * France: +33 (0) 1 88 46 13 20 Social Networks (c) 2024 Neo4j, Inc. Terms | Privacy Policy | Sitemap Anti-Corruption Policy Neo4j(r), Neo Technology(r), Cypher(r), Neo4j(r) Bloom(tm), Neo4j(r) AuraDS(tm) and Neo4j(r) AuraDB(tm) are registered trademarks of Neo4j, Inc. All other marks are owned by their respective companies. [icon-toolt] Contact Us