Discover how graph databases can help you manage and query highly connected data. With this practical book, you’ll learn how to design and implement a graph database that brings the power of graphs to bear on a broad range of problem domains. Whether you want to speed up your response to user queries or build a database that can adapt as your business evolves, this book shows you how to apply the schema-free graph model to real-world problems.
This second edition includes new code samples and diagrams, using the latest Neo4j syntax, as well as information on new functionality. Learn how different organizations are using graph databases to outperform their competitors. With this book’s data modeling, query, and code examples, you’ll quickly be able to implement your own solution.
Model data with the Cypher query language and property graph model
Learn best practices and common pitfalls when modeling with graphs
Plan and implement a graph database solution in test-driven fashion
Explore real-world examples to learn how and why organizations use a graph database
Understand common patterns and components of graph database architecture
Use analytical techniques and algorithms to mine graph database information
AI Reading Assistant
Whole-book reading guide from stratified index samples; jump to passages in the text
Tip the Site
Support this siteYour recognition and a small knowledge-service contribution help keep this technical work open source.Scan the WeChat Pay or Alipay code below. Logged-in and guest visitors can both tip.
WeChat Pay
Alipay
Open WeChat or Alipay and scan. No login required.
AI guide
【One-Line Pitch】
A practical guide for developers, data architects, and technical decision-makers who need to model, query, and build applications around highly connected data, using the labeled property graph model and Neo4j's Cypher language to move beyond the limitations of relational and NoSQL stores.
【Book Arc】
- **Opening (~0%–9%)**: Introduces the motivation for graph databases, tracing the rise of connected data through companies like Google and Facebook, and outlines the book's scope—focusing on transactional graph databases (OLTP) rather than offline analytics engines.
- **Early (~9%–25%)**: Establishes the labeled property graph model (nodes, relationships, properties, labels) and contrasts it with relational databases and aggregate NoSQL stores, highlighting how connectedness is a first-class citizen in graphs versus an afterthought elsewhere.
- **Early–Middle (~25%–38%)**: Moves into data modeling with graphs, comparing relational and graph approaches in a systems management domain, and introduces Cypher as a pattern-matching query language designed to mirror how we draw graphs on a whiteboard.
- **Middle (~38%–53%)**: Covers practical modeling techniques—fine-grained vs. generic relationships, modeling facts as nodes, representing complex value types, and handling time—along with iterative development and validation methods like "reading the graph" and designing for queryability.
- **Late (~53%–end)**: Shifts to application architecture and implementation, including embedded vs. server deployments, clustering, load balancing, test-driven data model development, performance testing, and capacity planning, with real-world use cases showing how organizations apply graph databases.
【Key Takeaways】
- **Connectedness is the core value proposition** (Early): Unlike relational or aggregate stores, graph databases make relationships first-class, enabling index-free adjacency where elements directly link to neighbors—this yields millisecond traversals for pattern-matching queries that would require expensive joins or external batch processing elsewhere.
- **The labeled property graph model is simple yet expressive** (Early): Nodes hold key-value properties and can carry labels; relationships are named, directed, and can also have properties. This small vocabulary covers the overwhelming majority of graph use cases while remaining intuitive to non-technical stakeholders.
- **Relational modeling hides semantic relationships** (Early): Join tables mix business data with foreign key metadata, sparse tables need special code checks, and reciprocal queries ("which customers bought this product?") become disproportionately costly—problems that graph modeling eliminates by design.
- **Aggregate stores are not graph databases** (Early): Document and key-value stores may support links or nested structures, but they lack index-free adjacency and consistency for connected data, forcing latent, map-reduce-powered link walking or external Hadoop processing for relationship queries.
- **Cypher is ASCII-art for graphs** (Middle): The query language lets you express patterns visually, like `(emil)<-[:KNOWS]-(jim)-[:KNOWS]->(ian)`, making queries readable by developers, DBAs, and business stakeholders alike—a stark contrast to SQL's join-heavy syntax.
- **Model facts and complex values as nodes** (Middle): To keep the graph flexible and queryable, represent domain facts (like a purchase event) and complex value types as nodes rather than burying them in properties, and treat time explicitly in the model to support temporal queries.
- **Validate models by reading the graph and designing for queryability** (Middle): Walk the graph from a start node, reading labels and relationship names to form sensible sentences about the domain; then craft Cypher queries for your key use cases to confirm the model supports them before committing.
- **Graph modeling is iterative and incremental** (Middle): Unlike relational design's normalize-then-denormalize cycle, graph models evolve with business changes, not storage constraints—reviewing the domain model early avoids design decisions that hamper later development.
【Reading Tips】
- **Skim the opening chapters (0–25%)** if you already know why graphs matter; focus instead on the labeled property graph model definition and the comparison tables with relational/NoSQL stores, which crystallize the "why" in one place.
- **Deep-read the modeling chapters (25–53%)**: The systems management domain example is the book's centerpiece—work through the relational vs. graph comparison and the "reading the graph" validation technique carefully, as these are the most transferable skills.
- **Treat Cypher as a learn-by-doing language**: Don't just read the syntax; trace the ASCII-art patterns against the diagrams, and try rewriting the example queries with different relationship directions to internalize how patterns map to intent.
- **Pay attention to the architecture chapter (53%+) only if you're building**: The embedded vs. server, clustering, and load-balancing sections are practical but less conceptual; skim testing and capacity planning unless you're planning a production deployment.
- **Watch for the "design for queryability" mindset**: This is the book's most valuable mental model—before finalizing any graph, write the queries your users will ask, and let those queries shape the model rather than the other way around.
【Coverage Limits】
This guide synthesizes the book's core concepts—graph modeling, Cypher, and architecture—but the excerpts do not cover the full set of real-world case studies, advanced analytical algorithms, or the appendix on alternative graph data models, which are referenced but not detailed in the provided material.
Page 5
ement Domain 38 Testing the Model 39 Cross-Domain Models 41 Creating the Shakespeare Graph 45 Beginning a Query 46 Declaring Information Patterns to Find 48...
e named and directed, and always have a start and end node. • Relationships can also contain properties. Most people find the property graph model intuitive...
the nodes in our networks according to the roles they play. Some nodes, for example, might represent users, whereas others represent orders or products. In N...
t, and simplest, is just to check that the graph reads well. We pick a start node, and then follow relationships to other nodes, reading each node’s labels a...
break a single complex query into several simpler patterns. Common Modeling Pitfalls Although graph modeling is a very expressive way of mastering the comple...
ples show how we might model facts and actions using inter‐ mediate nodes. Employment Figure 4-2 shows how the fact of Ian being employed by Neo Technology i...
returns a nonempty result containing a distance value of 4. Having written the test, we now start developing our first query. Here’s the imple‐ mentation of...
l for handling regular batch updates from upstream systems. 100 | Chapter 4: Building a Graph Database Application Summary In this chapter we’ve discussed th...
Support this siteYour recognition and a small knowledge-service contribution help keep this technical work open source.
Scan the WeChat Pay or Alipay code below. Logged-in and guest visitors can both tip.
WeChat PayAlipay
Open WeChat or Alipay and scan. No login required.
Add Tag
Enter tag name (max 50 characters)
Share E-Book
Graph Databases New Opportunities for Connected Data (Ian Robinson, Jim Webber, Emil Eifrem)(Z-Library)
Scan QR code with your phone to access
Copy the link or scan the QR code to access this e-book on your phone
Share E-Book via Email
Please enter email address
Donation Statistics
¥.00
Total Donations
0
Donation Count
Graph Databases New Opportunities for Connected Data (Ian Robinson, Jim Webber, Emil Eifrem)(Z-Library)
Find Your Favorite Books
Only registered users can comment after logging in. Comments need to be reviewed by administrators before being displayed
Loading comments...
Reply to Comment
Edit Comment