Interview Emil Eifrem, CEO and co-founder of Neo Technology, says the world is at “a huge inflection point for graph databases” as his company, which supports the open source Neo4j graph database management system, releases v3.0 of the software.
Ahead of releasing an architecturally overhauled v3.0 of the data management system, the author of O'Reilly Graph Databases spoke to The Register about his focus on staying customer funded, on tweaking how to tweak pitches to developers for managers, his company's involvement with the Panama Papers, and offered his thoughts on Richard Stallman.
38-year-old Eifrem, who is originally from Sweden, started programming “at a very young age, I did a lot of open source work in my teenage years, free software, open source, all that good stuff, in the nineties.”
Neo4j was initially released in 2007, and its community edition is available under the Gnu Public License v3. “Our summary is, whenever you can use MySQL free, you can use Neo4j community for free,” said Eifrem.
“For the longest time, I was a free software guy, not an open source guy,” he told us. “Richard Stallman has done some amazingly important work. I think the world needs idealists and he's definitely one of them. He is one the purest idealists on the planet. I bought a higher percentage of his philosophy when I was twenty than when I'm forty.”
Running a business has driven Eifrem towards what he calls pragmatism: “RMS is many things,” he said, but “pragmatic is not one of them.”
Now quite comfortable with being described as “an open source guy”, alongside the community edition, the company also offers a commercial enterprise edition.
“The community edition is a fully-featured graph database, you can store, retrieve, you can do anything that you want with it. The enterprise edition has certain features that big companies really value. These are things like clustering, fail-over, and high availability.”
Unsurprisingly, Eifrem reckons we're at “a huge inflection point for graph databases. So there used to be ony four databases at all, like, on the planet, and then – bam – there's like 400, for a number of different reasons.”
For Eifrem, graph databases take “relationships or connections in data, and put them front and centre.”
“If you're a developer and you're building a system which includes some kind of connections – let's say that the obvious one will be a social network, but it may also be fraud – where you want to take patterns amongst connected data elements,” said Eifrem.
Making these connections requires “four or five hops already” said Eifrem, “and if you try to squeeze that all into a data model that does not have relationships as a first class citizen – which is basically all the other popular data models suffer from this deficiency, relational, key value, document, etcetera, that is going to lead to two big problems:
“One that I call a compile-time problem, which is basically as you build your application you're going to have to artificially encode this using foreign keys or EmbeddedIDs, stuff like that. And the second one is a performance problem, where when you try to traverse these connections.”
A graph database can be “sometimes a thousand times faster, sometimes a million times faster than a relational database or a document database” Eifrem claimed, and as such “it's really going mainstream.”
“It used to be that it had classic early adopters, which is the Silicon Valley early adopter alpha geek crowd, that paid attention and knew about graph databases and used them. Now, we have 200 customers today, 40-50 per cent of which are the global 2000, and we're talking like financial services, we're talking telcos, four of the top ten retailers on the planet, the biggest 10 retailers in the planet, four are using neo4j. It's really going mainstream, and I think that is a huge shift for us in the graph database space.