Choosing Neo4j


Originally posted on Medium

A summary of scenarios and benefits, told through customer stories.

Neo4j is a graph database. According to independent site db-engines.com, as of December 2014 graph databases are by far the fastest growing database segment.

1-saE92CBTiE_b8VN6bfWjsw

Neo4j is relied on by companies like eBay, HP, Cisco, Medium, Walmart, Johnson & Johnson, TechCrunch, and countless others. In this article I will explore three scenarios where people choose Neo4j, but let’s first consider what Neo4j brings to the table.

Four Advantages

The high-level advantages of Neo4j have been summed up quite well by my colleague Rik van Bruggen as:

  1. Improved Ability: Do something that you could not do before.
  2. Improved Performance: Do something faster and/or more efficiently.
  3. Improved Flexibility: Be more adaptive in your systems and business.
  4. Lowered Cost: Do something at a much lower cost.

You may be asking, so what if I can do something faster, or in a more flexible way. How does that affect my business? To illustrate, let me walk you through three kinds of scenarios where our customers have been successful with Neo4j, and where we see the main use of Neo4j today.

Scenario 1 — Things Are Falling Apart

You have an existing, degrading system that in varying states of panic needs to be fixed, or bad things will eventually happen. It’s usually driven by an increase in users and/or data. Extrapolating your growth to date, you realize that your current system will fail at some point in the future. It could be in weeks, months, or years. Regardless, you need a plan to address this looming problem.

Often the degradation can be traced to a low data/storage fit, which means that your database is unfit for storing and querying the kind of data you’re dealing with at the projected volumes.

telenor

A while back, global mobile operator Telenor projected that in a few years’ time their access control system, originally built with Sybase, would slow to the point where all their business customers would be unable to sign in before lunch every day. At this point they took a step back and reconsidered their approach. In doing so, they realized that they were actually dealing with a hierarchical graph, not square tabular data. By replacing Sybase with Neo4j, they were able to completely eliminate this threat. Neo4j has been powering the access control system for all of Telenor’s business accounts for the past years, and continues to do so with real-time lookups on the latest data.

Scenario 2 — Eat Or Be Eaten

Sometimes an existing system is working fine, but accommodating a new requirement proves challenging. The requirement is usually driven by one or a combination of the following situations:

2.a — Addressing competitor pressure

This frequently revolves around one’s market share being threatened. A competitor may be rolling out a new feature or capability that will give them an advantage. Depending on the market segment, these kinds of threats may have to be addressed quickly in order to maintain feature/capability parity.

ebay

When eBay acquired Shutl, a UK-based home-delivery platform, they added a critical capability to their portfolio. This system now powers all of eBay Now, allowing you to order pretty much any retail item to your door faster than a pizza. All this would simply not have been possible, had it not been for the flexibility that Neo4j provided Shutl, enabling them to develop their highly competitive solution and take it to market quickly.

2.b — Expanding the market share

This is essentially the proactive version of the previous situation, while exerting pressure on the competitors. Market share can be expanded by improving time-to-market when rolling our new features and capabilities, thereby beating the competition in the race to the customers.

pitneybowes

Pitney Bowes’ Spectrum platform for Master Data Management is quite novel in that it embeds Neo4j to provides companies with deep insights into their data. This relates to the concept of dark data, which is about doing more with the data you already have to unlock insights you previously thought were unreachable. Pitney Bowes’ Neo4j-based MDM platform does just that — look at your data from a graph perspective. In fact, financial analysts at Zacks upgraded Pitney Bowes to a BUY rating based on the partnership with Neo4j, and the advantages that gives PB’s customers.

2.c — Improving the customer experience

Improving customer stickiness, also known as retaining users or minimizing churn, is a constant challenge for many businesses. One way to achieve this is by improving the customer’s experience of the product or service you are offering. For an online service, this commonly involves introducing new capabilities and features, along with a website overhaul.

crunchbase

When CrunchBase designed their next-generation site, flexibility and agility were of importance. They did not want to go down the RDBMS road, as they knew it would put some fundamental limitations on how fast they could develop and evolve the site. They chose to use Neo4j, as they recognized that the data is clearly a graph — people, companies, VCs, funding rounds, all connected in complex ways.

2.d — Optimizing/extending/simplifying processes

Organizations can often save time and/or money by doing something in a smarter way. It could be changing an internal processes, such as Cisco centralizing commonly used data internally to enable collaboration around that data, or adding graph search to promote search and reuse of existing assets.

tomtom

TomTom uses Neo4j to power their map quality assurance testing, to troubleshoot any geospatial logistical snares, and to ultimately ensure a smooth trip for their users. For example, TomTom uses Neo4j to detect and avoid Restricted Access Islands, or RAIs, which are pieces of the Road Network where you can navigate locally but not reach or leave globally. By instituting a series of algorithms and spatial analysis tools, TomTom was able to ensure that these islands were avoided. Similar procedures are used in other aspects of the QA process to avoid the complex logistical issues associated with road navigation.

Scenario 3 — Greenfield Projects

Lastly, when building a completely new system you often have much more flexibility in your technology choices. When you’re not carrying technical bagage you can freely choose the best tool for the job.

Most startups fall into this scenario, though it also happens that larger companies roll out entirely new products. Either way, choosing a technology that secures the future and growth of the project is very important.

lufthansa

Lufthansa Systems is a fully owned subsidiary of Lufthansa. Among other things, they develop in-flight digital asset management systems for commercial airlines. This includes tracking of digital content delivery across the entire fleet, including content, aircraft, hardware, content licensing, rules, and more. A modern graph-based solution provides the operational flexibility needed to evolve this advanced application over time.

Want to learn more about graph databases? Click below to get your free copy of O’Reilly’s Graph Databases ebook and discover how to use graph technologies for your application today. Download My Ebook