Estimated reading time: 4 minutes
We are proud to announce the GA release of ArangoDB 3.9!
Congrats to the team and community for the latest ArangoDB release 3.9! ArangoDB 3.9 is focused on extending the capabilities of advanced Analytics and especially at scaling Graph use cases even further. In the remainder of this blog post, we will dive further into some of the features including Hybrid SmartGraphs, new AQL functions, new ArangoSearch Analyzer, and various other performance and user experience improvements.
Just in case you prefer to try ArangoDB 3.9 directly rather than just reading about it, you can either download the Community Version or Enterprise Trial, pull our docker images, or head over to our Managed Service Oasis for a free trial.
What is new?
ArangoDB 3.9 comes with quite a number of improvements, bug fixes, and features. If you are interested in all these in more detail please refer to the release notes to appreciate all the work which has been gone into this release. In this blog post we want to focus on some of the highlights including Hybrid Smart Graphs, new ArangoSearch Segmentation and Collation Analyzers, new AQL decay and vector functions and UTF8 support for database names.
Join us on March 3rd, 2022 for our release webinar to learn more about ArangoDB 3.9. Registration is available now.
Hybrid Smart Graphs (Enterprise Edition)
ArangoDB has a number of Enterprise features enabling scaleout use-cases in Graph and document scenarios. Amongst the most frequently used ones are SmartGraphs (Smart sharding of large graphs combined with other Graph performance improvements) and Satellite Collections and Graphs (basically replicating a small part of the data across all servers so access is guaranteed to be local, often used for Metadata).
Hybrid SmartGraphs allow the combination of these features and hence allow SatelliteCollections within the SmartGraph definition. As SatelliteCollections (and the edges between SmartGraph collections and SatelliteCollection) are globally replicated to each participating DB-Server, (weighted) graph traversals and (k-)shortest path(s) queries can partially be executed locally on each DB-Server. This means a large part of the query can be executed fully locally whenever data from the SatelliteCollections is required. This of course also works for Disjoint SmartGraphs.
If you want to gain hands-on experience of using Hybrid SmartGraphs check out the following Colab Notebook (without even having to install ArangoDB yourself thanks to Oasis!).
P.S. Our Graph and Beyond: Lunch and Learn sessions are back, with our first session of the year focused on Hybrid SmartGraphs. Register today and receive the recording in your inbox on February 23rd, 2022 at 12 PM local time.
ArangoSearch: Segmentation and Collation Analyzers
ArangoDB Search in 3.9 extends its list of Analyzers with two Analyzer focused on wider language support: Segmentation and Collation Analyzers. While the Segmentation Analyzer allows to tokenize text in a language-agnostic manner as per Unicode Standard Annex #29, the Collation Analyzer converts the input into a set of language-specific tokens.
ArangoDB 3.9 added three decay functions to AQL:
DECAY_EXP(), DECAY_LINEAR(), DECAY_GAUSS()
These functions allow users to calculate a score that decays depending on the distance of a numeric value from a user-given origin. These are especially helpful in analytics scenarios when dealing with time-series data that includes measurements which change over time or when trying to group (or separate) entities based a given distance metric.
Added three vector functions to AQL for calculating the similarity between two vectors: Cosine similarity (COSINE_SIMILARITY), Manhattan distance (named L1_DISTANCE), and Euclidean distance (named L2_DISTANCE). This is useful for grouping similar documents together, powering use cases such as text analytics and recommendations.
Other notable features
- Upsert with Index Hint
- Traversal filtering optimizations
- Traversal partial path buildup
- Prune Variable
- Warnings on invalid OPTIONS
- Memory usage tracking
- Execution of complex queries
- Query complexity limits
- RocksDB block cache control
- UI support for Rebalance shards
- Analyzers in Web Interface
- Improvement to Client tools
Upgrading to ArangoDB 3.9 can be performed with zero downtime following the upgrade instructions for your respective deployment option.
The easiest way to give ArangoDB 3.9 a spin is Oasis, ArangoDB’s managed service in the cloud!
Please consider the list of deprecations and potentially incompatible changes before upgrading.
Feel free to provide any feedback either via our slack channel or mailing list!
Hear More from the Author
Introducing ArangoDB 3.8 – Graph Analytics at Scale
Introducing the ArangoDB-DGL Adapter
Introducing the ArangoDB-NetworkX Adapter