Why Enterprises Are Increasingly Using Graph Technology
DataStax sponsored this post.
The market for graph databases is expected to nearly triple by 2024, and for good reason: graph technology enables organizations to build applications that meet ever more demanding user expectations. So, what exactly are users demanding that graph solves? Users are demanding personalized context.
Although graph data is becoming more and more integral to the success of the data-driven enterprise, the technology is still in a relatively nascent stage for enterprises. We are, however, seeing graph technology pick up a lot of traction. We’re also seeing some common data models emerge for transactional graph databases.
In this article I’ll explain why developers are increasingly using graph technology, what those common data models are, and what the future holds for the graph industry.
What Do Users Expect from Modern Applications?
The answer to this question is simple: personalized experiences.
According to Salesforce data, 84% of customers say that being treated like a person is important to winning their business. What’s more, 59% of customers say bespoke experiences based on past engagements is crucial when it comes to winning their business.
Technologists who are most familiar with graph data and graph technology are also those who are most familiar with graph algorithms. This makes perfect sense: early adopters of any new technology are always going to focus on the R&D aspects of the new toy.
The initial R&D efforts involved running algorithms across global structures of graph data. If you’re like me or most of the people I know, you interact with graph algorithms every day. Here are three examples of those engagements.
3 Everyday Examples of Graph Technology in Action
Google Search Results
You’re on the internet, so you’ve used Google to find information before (maybe even to arrive at this article!). What you might not have known is that the ranked results of a Google search are ordered by PageRank, a popular graph algorithm for determining the relevance of content according to how many other pages link to it.
You can think about it as like a popularity contest of who-knows-who. But in the graph world, it’s what’s-linked-to-what.
The ‘People You May Know’ Section of LinkedIn
This is the professional social network giant’s version of Six Degrees of Kevin Bacon (also known as Bacon’s Law), which hypothesizes that everyone on planet Earth can be linked to the Footloose star by six acquaintances or fewer.
Instead of tracking folks who starred in movies together, the algorithm puts the who-worked-with-who game at the forefront of your search results.
Netflix’s Recommendation Engine
If you’ve wasted countless hours or even countless days binge-watching content on Netflix — or even just watching little snippets that showcase what’s available on Netflix — you’re not alone.
This is the same kind of example:
Keep in mind, though, that all three of these massive algorithms are pre-compute results of graph algorithms. The focus, here, is on pre-compute. There’s absolutely no way that when you click search on Google, LinkedIn or Netflix, that any graph algorithm could crawl billions of links to determine the relevance of content at the exact moment you’re searching for it.
I mention that because the emergence of pre-computed graph algorithms into transactional databases is the first trend to notice around the graph industry.
The next step to making graph-structured data available in real-time in a cloud-based application is to understand how today’s leading companies are actually doing it.
4 Common Use Cases for Transactional Graph Databases
At its core, using graph data in production applications empowers better questions. Here are the four most common problems and data models we find in production uses of graph data in transactional databases.
Today’s most effective organizations know everything there is to know about their customers; including where they live, what their last purchase was, what their contact info is, the last store they visited, their preferred payment method, which devices they use, and more.
Altogether, this information pools together to create a Customer 360 application, which gives enterprises a bird’s-eye view of everything that pertains to a particular customer.
While solutions like data lakes and data warehouses were used for these purposes in the past, today’s applications require data to be much more accessible. Graph technologies allow developers to create robust retrieval systems that complement longer search expeditions across data lakes and data warehouses.
As a result, organizations are able to deliver consistent experiences across platforms and channels, meeting consumer expectations and driving more sales.
Which employees report to which directors? Which department or cost center does Employee A belong to?
Graph technology provides a more natural way to show nested relationships within hierarchical data (like org charts), which in turns increases developer productivity, as dev teams have less code to maintain.
For example, an early adopter of graph technology was able to simplify 150 lines of a query on top of HBase into 20 lines of Gremlin. Since people like working with simpler codebases, it’s likely that more and more organizations will follow their lead.
If you’ve used a network like Facebook, you’ve no doubt said something like this to yourself at one point in time: How the heck does Facebook know I know this random person?
Graph technology can help you figure out how two people know each other, how many connections (if any) are between two people, how many airports are reachable within two flights from a specific airport, and things like that.
In the age of blockchain — and Bitcoin in particular — pathfinding will become more and more important, if for no other reason than it helps users know whether they can trust a particular unknown user on a network.
If someone has transacted with one person you yourself trust, would you be willing to trust that user? What if they transacted with 25 people you trust?
Last but not least, we come to the recommendations use case; which is the way companies like Netflix and Amazon use graph technology to suggest to users what they might want to do next.
In 2006, Netflix launched a 1 million dollar machine learning contest. Participants were encouraged to try to create an algorithm that could beat Netflix’s own content rating prediction process.
Ultimately, the contest taught us that graph thinking was more effective than traditional matrix-based algorithms for this kind of use case. If you like a certain number of movies, another group of people also likes those movies, and you look at the other movies that group of people likes, and voila, there’s a list of movies you might like too.
Using a graph, recommendations engines follow a three-step process to serve up personalized suggestions:
- Figure out a user’s most recently rated, viewed or purchased items.
- Find similar items based on historical rating, viewing or purchasing patterns.
- Deliver content suggestions based on a scoring model.
Bottom Line: Graph Helps Answer Higher-Value Questions
As you can see, graph technology already plays a pivotal role in our lives. As more and more organizations look to become cloud native and transform into data-driven enterprises, it’s almost a given that we’ll see even more powerful use cases arise in the coming years that will help them answer increasingly important questions.
I don’t know about you, but I’m excited to see what comes next.
If you’ve liked what you’ve read so far and want to learn more, consider checking out The Practitioner’s Guide to Graph Data: Applying Graph Thinking and Graph Technology to Solve Complex Problems, a book I co-wrote with Matthias Broecheler.
Feature image via Pixabay.
At this time, The New Stack does not allow comments directly on this website. We invite all readers who wish to discuss a story to visit us on Twitter or Facebook. We also welcome your news tips and feedback via email: firstname.lastname@example.org.