Book Image

Graph Data Modeling in Python

By : Gary Hutson, Matt Jackson
Book Image

Graph Data Modeling in Python

By: Gary Hutson, Matt Jackson

Overview of this book

Graphs have become increasingly integral to powering the products and services we use in our daily lives, driving social media, online shopping recommendations, and even fraud detection. With this book, you’ll see how a good graph data model can help enhance efficiency and unlock hidden insights through complex network analysis. Graph Data Modeling in Python will guide you through designing, implementing, and harnessing a variety of graph data models using the popular open source Python libraries NetworkX and igraph. Following practical use cases and examples, you’ll find out how to design optimal graph models capable of supporting a wide range of queries and features. Moreover, you’ll seamlessly transition from traditional relational databases and tabular data to the dynamic world of graph data structures that allow powerful, path-based analyses. As well as learning how to manage a persistent graph database using Neo4j, you’ll also get to grips with adapting your network model to evolving data requirements. By the end of this book, you’ll be able to transform tabular data into powerful graph data models. In essence, you’ll build your knowledge from beginner to advanced-level practitioner in no time.
Table of Contents (16 chapters)
Part 1: Getting Started with Graph Data Modeling
Part 2: Making the Graph Transition
Part 3: Storing and Productionizing Graphs
Part 4: Graphing Like a Pro


As this ebook edition doesn't have fixed pagination, the page numbers below are hyperlinked for reference only, based on the printed edition of this book.


Aspergillus fumigatus 66


adding, to graph 21, 22

Awesome Procedures on Cypher (APOC) plugin

reference link 168


bipartite graph 69

bottom-up approach 65


chained statements

using, with select() 193, 194


exploring, in graph 181, 182

community detection 83

connected component 30

connected components, projection

exploring 180, 181


measuring 30


adding 148, 149

used, for handling duplicates 202, 203

constraints, Neo4j

reference link 148

Counter-Strike Global Offensive 56

Cypher query language 92-96

reference link 93

used, for optimizing travel 104-112



examining 18, 19


initializing 147

degree centrality 28

directed graphs 6