Graph database growth curve spurred on with release of Neo4j 2.1
Graph database pioneers Neo Technology shook up the traditional RDMS world in 2000 with the launch of their radically different data management system. Following a decade or so of relatively conservative tinkering, the shock-meisters were at it again in December, with a shake-up of their core data model in Neo4j 2.0 (full summary of all the ace new additions here). Although their release of Neo4j 2.1 this week lacks any similarly dramatic changes, it has had a good number of tunings geared at upping productivity and performance.
With this latest drop, Neo4j now has an integrated ETL process (which stands for “Extract, Transform, Load”), which enables seamless data importing from relational and other data sources. The process makes it possible to combine data from differently structured data sources into a single target database.
Neo Technologies co-founder Emil Eifrem commented that: "Neo4j 2.1 represents a step forward in lowering the bar to graph database adoption for organizations who have massive amounts of data in their relational databases," adding that "Companies are recognizing the value that comes from reimagining their existing data as a graph. The new built-in ETL capabilities here enable when moving data from an RDBMS into a graph."
There were also alterations to Cypher query language within Neo4j 2.1 (here’s a handy tutorial if you’d like to find out more about Cypher). As the image below demonstrates, it now supports the extraction and mapping from CSV files.
With its unique design, Neo4j occupies a special place in a highly competitive NoSQL market, packed to the rafters with diverse data solutions. Because of its quixotic model, the open source tech has no other NoSQL competitors - and whilst it’s certainly not the perfect solution for everyone, the inherent ability of graph DBMSs to represent and process a multitude of different objects and the many connections between means there are a host of potential use cases for the technology.
As Eifrem observes, “the majority of the world still doesn't know that graph databases exist,” although with around 30 - 40 groups working on projects, products and companies related to graph databases, including Oracle IBM, SAP, and Facebook, that’s rapidly changing.
A (slightly contentious) study by DB-ENGINE concluded that, in 2013, graph databases enjoyed a 250% boost in popularity - something that may well be partly attributable to the maturation of the technology. For example, with Neo4j 2.0, users can now create ‘subgraphs’ within their datasets, giving a leaner, simpler, and guaranteed indexing mechanism to the data. As it’s evolved, the technology has also become far easier to use, making for less intimidating novice user experiences.
Whilst there’s been some debate on DB-ENGINE’s methodology, there’s no denying that, after a decade of relative obscurity, the world is opening up to the power of graph DBMS, with Forrester estimating, by 2017, over 25 percent of enterprises will be employing the technology in some fashion.
If you’d like to get ahead of the curve (we couldn’t resist), have a watch of this talk from JAX London 2013, where Ian Robinson presents some design and implementation strategies you can employ when building a Neo4j-based graph database solution: