Neo4j 3.0 Moves Graph Databases Closer to Mainstream

Neo Technology's latest release of its graph database, Neo4j 3.0, delivers new scalability and developer-friendly features.

big data

Graph database maker Neo Technology recently delivered Neo4j 3.0, the latest release of its graph database solution, which provides increased scalability and developer-friendly features such as language drivers.

Philip Rathle, vice president of products at Neo, said the top three new features in Neo4j 3.0 are as follows:

--redesigned internals that remove previous limits on the number of nodes, relationships and properties that can be stored and indexed;

--new supported language drivers backed by the Bolt binary protocol with support for Java Stored Procedures, together enabling full-stack developers to build applications; and

--a streamlined configuration and deployment structure to deploy Neo4j on-premises or in the cloud.

These new features are integral to Neo's goal of propelling graph databases into the mainstream.

"We are looking to cultivate a community around graph databases," Emil Eifrem, founder and CEO of Neo Technology, told eWEEK. There have been more than 2 million downloads of the Neo4j database and more than 30,000 people have registered for further education on the database, he noted.

A graph database is a database that uses graph structures for semantic queries with nodes, edges and properties to represent and store data. Graph databases are used for storing, managing and querying complex and highly connected data. Moreover, the graph database architecture is particularly well-suited for exploring data to find commonalities and anomalies among large data volumes and unlocking the value contained in the data's relationships.

"Every aspect of the architecture has been revisited to make graph database development productive and intuitive, while at the same time supporting massive graphs into the hundreds of billions and trillions of nodes and relationships," said Jim Webber, Neo Technology's chief scientist, in a statement. "We've achieved all of this whilst retaining Neo4j's signature 'minutes-to-milliseconds' performance."

Neo4j 3.0's new storage engine eliminates the scaling limits of the previous version. The new release also features Bolt, a new, lightweight binary protocol that provides fast access to the graph. Moreover, the release offers new programming language drivers for Java, .NET, JavaScript and Python.

"Convenience is the killer app for mainstream tech adoption," said James Governor, co-founder and analyst at market research and analyst firm RedMonk, in a statement. "Neo4j 3.0 aims to be more developer-friendly thanks to Bolt and drivers for the most popular programming languages in their specific distribution systems."

In addition to adding support for Java Stored Procedures, which allows for features such as schema introspection to be added easily to the database, Neo also improved the performance of its Cypher graph query language.

The company also added a new cost-based query optimizer for database writes, which, along with the improvements to Cypher, helps to produce better, faster queries across the board. And Neo added a new configuration and logging structure to support modern deployment scenarios such as the cloud and containers such as Docker.

"Before Neo4j 3.0, graph sizes were limited to tens of billions of records. With Neo4j 3.0, those limits go away," Rathle said in a statement. "We are already working with customers who are pushing into hundreds-of-billions scale graphs. This release takes them there—and beyond."

Graph databases are best applied to use cases in which there are lots of connected devices or assets with multiple relationships between and among them.

Rathle said Neo4j 3.0 is the fastest, most powerful, easy-to-use and productive product the company has produced to date.

"Most of our engineering goes into being the database that you can trust," he said. "We also spend a great deal of time thinking about new possibilities. The new language drivers together with Bolt radically change the way developers and applications interact with the database, offering enormous possibilities for innovative graph applications to emerge."

The new release enables users to carry out real-time queries against massive graphs, making it useful for large-scale applications and typical graph database use cases including real-time retail recommendations, on-the-fly fraud prevention and Internet of things (IoT) applications, as well as master data management, network security and IT operations.