Price Comparison Site Wobi Builds ‘Whole Customer Understanding’ with Neo4j

The Challenge

Wobi aims to give its customers best ‘value offers’, and to do that it needed to build a detailed financial picture of each customer, including savings, pensions, insurance policies, accounts and family background.

As CTO Shai Bentin explained: “We look at the customer’s account in such depth that we can tell them they have a leak in their house because they have been paying more for their water every month! We can offer to move a customer from, say, one phone company to another that better suits their needs.”

To achieve that level of understanding, Wobi needed a single customer database where it could rapidly drill-down into each individual’s history and add new information on the fly. It faced two key issues:

“One is that we needed to extract a lot of customer information very, very fast from the database,” Bentin said, “and the second is the way we needed to get the information. It’s a tree-like structure – under each customer will hang a lot of information, and for performance we needed to pull up all that information at once.”

The Solution

Bentin said that Neo4j has enabled Wobi to solve its key business challenge of providing customers with compelling ‘value offers’.

“We are all about understanding the customer. To do so, we need an easy way to describe them and build connections between them and their information. In object databases, I don’t actually have a ‘description’. But suddenly with Neo4j, I had the power to describe my data with relationships.”

“Describing a relationship is important,” Bentin said. “For example, we get new information about pensions monthly, and I need to be aware of what’s the latest and what’s history. To model this in a regular object-oriented way would be lengthy – whereas with Neo4j I have a relationship called ‘latest’ and a relationship called ‘previous’, and I can just do a ‘select’ and get whatever I need.”

“Neo4j runs about a million relationships a second. Everything is ordered and I don’t have to write code to do it. It would be a whole different thing if I had to use a SQL database; it’s more hassle, it really is.”

Download Case Study