To wrap up our blog series highlighting the Graph Databases For Dummies book, we wanted to share our top 10 tips for creating successful graph applications.
These insightful graph database tips come from Chapter 6 of the book, and the download link for a free copy is at the bottom of this post.
1. Use the Right Tool for the Job
Stepping outside of your comfort zone isn’t always easy. You already know how relational databases work, and you can create brilliant workarounds for their limitations. But some problems that are difficult for relational databases are easily solved by changing the data model. If you’re querying paths, trees or networks, then a graph database will make your life much easier.
2. Make Connections
Many problems are conveniently and intuitively modeled as graphs, but until you’re into graphs you don’t necessarily see it. We call this the “graph problem-problem.” You can’t easily spot graph problems until you are an expert, but you can’t become an expert without spotting graph problems. As a shortcut to get you started, graphs work best where you have a lot of connections and where you can derive useful insights from these connections.
3. Take Advantage of Speed
Speed changes everything: It allows you to iterate and experiment more quickly, it allows you to do things in real time that you thought were only possible to do in overnight batches, and it allows you to save hardware, software and operational costs because you can do more with less. As you scale to thousands/millions/billions of entities and their connections, be sure to use a graph database.
4. Start to Use Graphs for Obvious Use Cases
Value in connections is abundant. Graphs are everywhere, but leveraging them efficiently often starts with obvious use cases that have been tried and tested. When you or your organization thinks about anything like social networks, knowledge graphs, real-time fraud detection, hyper-personal recommendation engines, or master data management, consider graphs. They’re excellently suited for the job – and there are plenty of proof points from existing systems to back up that claim.
5. Begin with Modeling
Good graph-based systems begin with modeling. Your tried and tested data modeling techniques have served you well throughout your career, and we know they’re hard to let go. But graph modeling is different, and perhaps a bit daunting at first, but if you push through, you’ll find it will feel natural and liberating in no time.
6. Start Small, Scale Next
After you have a graph data model, think about how you’re going to write data into it. We recommend starting small by using tools that offer fast feedback on your model and scaling later by using tools that support large data ingestion.
7. Model for Questions
Think about the questions you want to ask of the graph data – that process is prerequisite for good modeling and querying. Look for questions that you would struggle to answer in traditional data models. A lot of joins, recursion and unknown-depth pathfinding are examples of graph queries that can get you to value quickly. Chapter 2 gives you tips on modeling, and Chapters 3 and 4 tell you how to get started modeling.
8. Focus on Value
IT systems provide value when they enter production. Putting graphs into production is delivering value into the hands of business users. Graph databases provide many techniques for ensuring high performance, efficiency, and availability but need to be appropriately operationalized. Chapter 5 gives you helpful advice on how to get your graph-based system into production.
9. Explore Hidden Insights
Graphs are most valuable when you use them to find patterns and make predictions about future dynamics of the network. Graph data science is a superb next step: Graph algorithms that tell you about the similarity, connectivity and importance of different graph elements can give you useful predictions about the future state of your model, while graph data science can expose these hidden insights.
10. Connect with the Graph Community!
You aren’t alone in wanting to use graphs. Organizations, big and small, are adopting graph technology, and this community is rapidly growing. Connect with your graph community and get involved. You can learn from others and realize the value much more quickly. Visit the Neo4j community website to start making connections.