ArangoDB NoSQL database platform updates to 3.4
|Richard Harris in Programming Thursday, December 6, 2018|
NoSQL database platform, ArangoDB updates their solution to 3.4 to provide developers with support for GeoJSON, search engine tools, and more.
ArangoDB announced the GA release of ArangoDB 3.4 - a transactional database solution which enables developers to efficiently interact with multiple data models by using just one technology and one query language. Major new enhancements in ArangoDB 3.4 include ArangoSearch, a feature which transforms ArangoDB, when combined with traversals or joins in AQL, from a data retrieval to an information retrieval solution; and full GeoJSON Support enabled by a Google S2 Geo Index library integration.
ArangoSearch, the result of four years of research and development, combines Boolean and generalized ranking retrieval models (e.g. vector space model). Providing a rich set of information retrieval capabilities, ArangoSearch consists of two components - a search engine and an integration layer. The former is responsible for managing the index, querying and scoring, whereas the latter provides search capabilities for the end user in a convenient way. ArangoSearch can be combined with all three data models in ArangoDB. If used in conjunction with graph database capabilities, search results could be used, for example, to enhance fraud protection, individualize recommendations or simplify precision medicine.
Search uses a special kind of materialized view to enable full-text search on multiple collections at once. Within the view definition, one can specify entire collections or individual fields that should be covered by an inverted index using one or several general text analyzers. In search queries expressed with AQL, you can rank the results using multiple scorers (TFIDF and BM25) even combined. Users can now perform relevance-based matching, phrase and prefix matching, search with complex Boolean expressions, query time relevance tuning and combine complex traversals, geo-queries, and other access patterns with information retrieval techniques.
ArangoDB 3.4 includes full support for GeoJSON, an open standard format designed for representing simple geographical features, along with their non-spatial attributes. The support encompasses all geo primitives, including multi-polygons or multi-line strings. In 3.4 there has been a distinct engineering focus on increasing query and filtering functionality and optimizing performance. To this end, 3.4 also includes a Google S2 Geometry Library integration which complements ArangoDB’s RocksDB storage engine. Additionally, users can directly visualize results in OpenStreetMap which is integrated into the Query Editor of ArangoDBs WebUI.
Other notable enhancements in ArangoDB 3.4 include:
- Query Profiler: to provide developers with more insight into complex queries, it is now possible to execute the query with special instrumentation code enabled resulting in a printed query plan with detailed execution statistics. It is now much easier to profile your queries and get insights into how much time was spent where.
- Cluster Management: enhancements include faster cluster startup, synchronization, and query execution. To increase the reliability and predictability of the ArangoDB cluster, internal protocols and request handling have been significantly overhauled to improve cluster-wide query execution, an example being Distributed Collect.
- Streaming Cursors: at times the overall query performance is not a major priority, but rather how fast a user can obtain first results. Based on community feedback, 3.4 includes integrated streaming cursors which provide first results as they become available on the server.
- RocksDB is now the default Storage Engine: previous versions of ArangoDB used MMfiles as the default storage engine. With 3.4, this has changed to RocksDB. This provides numerous advantages to the user including optimized binary storage format, optional caching, reduced replication catch-up time, an exclusive collection access option, and enhanced WAL sync control.
Claudius Weinberger, CEO of ArangoDB, said: “Improved usability and enhanced application performance are at the heart of every release we deliver. We are constantly reviewing the functionality of our native multi-model solution to ensure it competes, and in many cases outperforms single-model alternatives. In 3.4 we have introduced ArangoSearch and extended the geospatial search capabilities of our database, which is a huge step forward for our technology. Our commitment to innovation is reflected in the number of new features ."