Bingo! Gamesys wins with Neo4j
When Big Data gets really big – and very unstructured – a traditional relational database is not always the best match for the job at hand.
This was a job for a NoSQL graph database, O’Rourke decided. A graph database stores information in a structure that records the direct relationship between any two adjacent elements or ‘nodes’ – in Gamesys’ case, players. Each node has its own properties and connects to other nodes at ‘edges’.
According to Gartner analysts Merv Adrian and Nick Heudecker, this structure makes a graph database “ideal for storing and analysing connected data, for use in relationship analysis, route planning and optimisation, and identity access and control, among other uses.” Graph databases are also commonly used to power recommendation engines.
After assessing a number of graph databases – leading providers in this fledgeling market niche include Neo Technology, Objectivity, OrientDB and YarcData – Gamesys selected the Neo4j database from Neo Technology.
This step into the NoSQL world was a significant cultural shift for the company’s IT team, which largely runs on IBM DB2 databases, with a bit of MySQL thrown in. “It required a new mindset and new ways of working for everyone: developers, ops guys, the [quality assurance] team,” says O’Rourke.
But over the past three years, Gamesys has gradually been introducing NoSQL technologies for both transactional and analytic processing.
O’Rourke and his team are also using NoSQL document store MongoDB, for example, to tackle other Big Data challenges and are starting to think about how they might start to handle stream-processing jobs. “We’re very much taking the view that we’ll use the best technology for the problem at hand, rather than stick with one vendor or one type of technology,” he says.
For now, he’s extremely happy with the choice of Neo4j to power high-value social features in the company’s games. Today, it holds details of over one million relationships between individual Gamesys players, ensuring that Gamesys’s customers get to play alongside their friends, introduce new ones and be rewarded accordingly.
“We want to grab as much of our customers’ online time as we can,” says O’Rourke. “If we didn’t provide these social features, we’d be making it too easy for them to go elsewhere.”