Release Date: 24 October 2017
We are proud to announce our latest Neo4j release – Neo4j 3.3. We encourage everyone to try out all the new features.
Neo4j 3.3 is the centre piece of The Neo4j Graph Platform, and of our commitment to continue being the world’s leading Graph Company. Neo4j 3.3 focuses on empowering our users to work with native graphs at scale more effectively and faster.
Performance & Scalability
With Neo4j 3.3 write performance has improved with on average 50% compared to Neo4j 3.2, making it possible to ingest more data in less time. Transactional writes benefit from new native indexes, which replace Neo4’s Lucene-based schema indexes for numeric properties. Neo4j’s ACID characteristics, as with the previous indexes, encompass the indexes in addition to the data. Bulk writes with the neo4j-admin import client have also received a major boost: reducing the memory footprint by up to 40%, and leveraging virtual memory in RAM-constrained environments.
Beyond drastically increased write performance Cypher performance and memory utilization has improved across the board with improvements in the runtime, by an average of 20% and as much as 50%. Neo4j 3.3 Enterprise also introduces the new Cypher Slotted Runtime which pushes these improves even further.
Security & Operations
Neo4j 3.3 introduces intra-cluster encryption enabling easily configured and secure communication between instances in your Causal Cluster. Intra-cluster encryption of course includes support of encrypted multi-DC cluster communication.
In order to make server configuration as easy as possible, we have unified the general certificate and key management of Neo4j so that all networking interfaces are managed and configured in the same way.
Client-to-Cluster communication has been highly optimized with Neo4j 3.3 when using Neo4j Drivers 1.5 by the introduction of the new Causal Cluster least-connected load balancing strategy, enabling clients to always connect to the cluster instance which will perform best. This minimizes the negative effects of instances that perform less optimally in your cluster, enabling you to get more performance out of your Neo4j 3.3 Causal Cluster.
Licensing
Neo4j Enterprise Edition binaries now include new proprietary add-ons. Intra-cluster encryption is the first of these. Consequently Neo4j Enterprise Edition can no longer be distributed under a dual license but the source is still available under AGPLv3.
This in no way impacts on Neo4j Community Edition, which remains GPL v3 licensed, as it has been since 2010.
To ensure developers remain able to use Neo4j Enterprise Edition for development work, we have created a new free license of Neo4j Enterprise Edition, called “Neo4j Enterprise Edition for Developers”, which is intended for single-user non-production desktop use. To get this, download the Neo4j Desktop, sign-up and use Neo4j Enterprise Edition under the new terms.
If this change causes something to break, we’re also sorry for the inconvenience. Reach out to us at info@neo4j.com and we’ll be happy to work with you. Neo4j also continues to offer a variety of licenses that enable free use of Neo4j Enterprise Edition. Contact licensing@neo4j.com for more information, or visit neo4j.com.
Highlights
- Write and read performance
- Write performance of transactional writes have improved with on average 50% for typical graphs compared to Neo4j 3.2, and with over 100% compared to Neo4j 3.1.
- Bulk writes at initial graph creation has an up to 40% smaller memory footprint.
- The new Cypher Slotted Runtime results in faster queries while using one third of the memory compared to the 3.2 Cypher Runtime.
- Least-connected load balancing strategy for clusters minimizes the effect on cluster performance when one server experiences heavy load.
- Enterprise Security
- New support introduced for intra-cluster encryption, including multi-DC cluster communication encryption.
- Kernel improvements
- Neo4j Enterprise now allows key configuration parameters to be changed on the fly, without needing to recycle a database instance.
- Local Schema Locks automatically narrow the scope of locks, avoiding the need for the database to take a global schema lock when creating or changing a schema object or constraint.
- Cache-hit ratio is now available at both a query and database level, as a new metric for helping to size one’s database cache.
Detailed Changes and Docs
For the complete list of all changes, please see the changelog. Look for 3.3 Developer manual here, and 3.3 Operations manual here.Upgrading
Neo4j Operations Manual: Upgrade3.3 Upgrade FAQ
When upgrading to Neo4j 3.3 for the first time, be sure to read the current upgrade instructions in the Neo4j Operations Manual, as there are additional steps and considerations.
Neo4j 3.3 supports direct upgrades from all 2.x releases (recommended to be on latest patch). Pre-2.x users need to upgrade to 2.x before upgrading to 3.3.