Graph Foundation for Internet-Scale Applications
The latest version of Neo4j delivers multi-data center support, enterprise governance capabilities, and performance improvements across the entire native graph stack.
Join the DZone community and get the full member experience.Join For Free
Neo Technology has released Neo4j 3.2, which introduces new enterprise scaling, governance, and security capabilities, and improves native graph performance, making it easier to deploy Neo4j at a global scale.
Neo4j 3.2 adds multi-data center capabilities, enabling customers to build the next generation of global internet scale applications. Also new to Neo4j are governance and security features ranging from new schema constraints to Kerberos support to advanced query monitoring.
It also improves performance across the entire native graph stack with features and optimizations ranging from new forms of indexing to a compiled runtime for Cypher to a rewrite of the Neo4j browser developer tool.
“Our large customers are using graph technology as the launchpad for building incredible, global applications,” says Neo Technology's Vice President of Products, Philip Rathle. “And they are winning awards like the Pulitzer Prize. With Neo4j 3.2, we wanted to demonstrate our commitment to their inspiration by transforming the Causal Clustering architecture we introduced last year into a globally scalable architecture. Not only did we succeed there, but we also made the native stack faster for the community and more refined for corporate IT.”
Top features of Neo4j 3.2 include the following.
Multi-Data Center Support
Neo4j is now multi-data center aware, which allows Neo4j customers and partners to support global-scale applications across continental data centers. Enhancements include:
Third-generation, Raft-based clustering architecture providing robustness, reliability, ACID transaction integrity, and global scale.
Globally aware clusters include intelligent routing to maximize scale and performance options both within and between data centers.
Developers and their applications are insulated from the complexities of clustering via this topology-aware Neo4j stack.
Developers have a wider choice of deployment options as RPM packages return and the Neo4j database fully supports the ability to deploy in AWS and Azure clouds.
For Enterprise Edition customers, Neo4j 3.2 improves IT administrator functionality by adding the following features:
A module for Kerberos security and authentication.
A new schema constraint, Node Keys, addresses the often-requested desire for Neo4j to enforce data quality rules that require uniqueness and existence within one or more node properties. This is especially useful when consolidating data sources into a graph.
Expanded monitoring metrics give users and admins new insights for tuning, testing, or controlling queries being run on the system
Performance in the Native Graph Stack
Neo4j owns the entire “native” graph database stack, which allows their developers to continuously improve performance across all areas of the database. The resulting efficiencies allow community and commercial customers alike to grow and innovate within their graph applications at a faster rate. The 3.2 release marks Neo4j’s fourth consecutive release to focus on write performance, notably:
Label Indexes have been rewritten from the ground up as graph-native, improving write speeds by 30%-250%.
New Composite Indexes improve performance and efficiency by allowing schema indexes to have more than one property.
A new compiled runtime for Cypher in Enterprise Edition offers an average 300% improvement over the previous runtime for basic queries.
Cypher’s cost-based query optimizer fully replaces the rule-based optimizer.
One significant improvement in the new optimizer affects deep traversals by an order of magnitude or better. Now reachability queries for large graphs — where queries exceed three levels of depth — will be very fast.
A new Cypher editor in the Neo4j Browser provides a more visually appealing and productive development experience by introducing syntax highlighting and autocompletion. This makes Cypher code easier to write and inspect, while autocompletion for labels, types, and properties, as well as automatic bracketing for nodes and relationships, reduces keystroke errors.
Neo4j 3.2 marks an expansion in scale, performance, and refinement, building from the foundation of Neo4j 3.1, which first introduced causal consistency and state-of-the-art clustering and security to its high-performance architecture.
Opinions expressed by DZone contributors are their own.