Creating Powerful, Personalised Art Recommendations with Graph Databases

The Challenge

Artfinder’s Chef Technology Officer, David Tilleyshort, says the challenge was to solve the ‘needle in a haystack’ problem for its users. Hundreds of new artworks are added to Artfinder every day, and he and his team have to present artwork that’s relevant to customer interest.

It’s a market about individual preference, he comments. “One person can look at a piece of art and say, ’That’s rubbish!’ and another will say, ‘What are you talking about? It’s fantastic!’”

For Tilleyshort and the Artfinder’s leadership, personalisation is the key route to success, but it has to be done well. “Poor personalisation is worse than no personalisation at all,” he observes.

Artfinder’s problem of establishing people’s interests and finding the most relevant artwork is compounded by the fact that users often don’t know how to describe what they want. It would need to collate hundreds of millions of data relationships to cope with this need and build a personal database for each customer.

It’s clear a technology platform was crucial to delivering on its brand promise. “A straightforward ecommerce site for art was not going to cut it, primarily because of the sheer volume of art that we had,” he states. “And it’s just not feasible to manage in real time in a relational database.”

The Solution

After market evaluation, Tilleyshort and his development team opted for leading graph database Neo4j. For Tilleyshort, “What we can get from Neo4j is real-time recommendations.”

That’s because a graph database prioritises the connections between nodes on the graph representing customers, artworks and artists, allocating as much value to these connections as to the data itself. It can include as much metadata in nodes as it likes, meaning analysis of relationships becomes richer and recommendations are better.

Artfinder was also delighted by Neo4j’s ease of use, as well as other positive aspects of working with it: “We looked at other graphs, but were attracted by Neo4j’s wealth of community and online resources, while the Cypher query language is very intuitive. It was quite simple to get something up and running very quickly,” he confirms.

Download Case Study