New version of the DBMS ArangoDB 3.6

Published Release of a multi-purpose DBMS ArangoDB 3.6, providing flexible models for storing documents, graphs, and key-value data. The database is accessed through an SQL-like query language AQL or through special extensions in JavaScript. Data storage methods meet ACID (Atomicity, Consistency, Isolation, Durability) requirements, support transactions, and provide both horizontal and vertical scalability. The DBMS can be managed through a web interface or a console client ArangoSH. The ArangoDB code is distributed is licensed under Apache 2. The project is written in C and JavaScript.

Key features of ArangoDB:

  • Ability to operate without predefined data storage schemas (Schema-free) — data is structured in the form of documents, where metadata and structural information are separated from user data;
  • Support for using ArangoDB as a server for web applications in JavaScript with access to the database via REST/Web API;
  • Utilization of JavaScript for browser applications accessing the database and for handlers executed on the DBMS side;
  • Multithreaded architecture that distributes the load across all CPU cores;
  • Flexible data storage model that can combine key-value pairs, documents, and parameters defining relationships between records (tools for traversing graph vertices are provided);
  • Different data representation models (documents, graphs, and key-value pairs) can be mixed in one query, simplifying the aggregation of heterogeneous data;
  • Support for queries with JOINs;
  • Ability to choose the index type suitable for the tasks at hand (for instance, an index can be used for full-text search);
  • Configurable reliability: the application can determine what is more important for it: higher reliability or higher performance;
  • An efficient storage system that fully utilizes the capabilities of modern hardware (such as SSDs) and can employ large caches;
  • Transactions: the ability to execute queries on multiple documents or collections simultaneously with optional transaction consistency and isolation;
  • Support for replication and sharding: the ability to create master-slave configurations and distribute data sets across different servers based on specific criteria;
  • A JavaScript framework is provided for building microservices Foxx, running within the DBMS server with direct access to the data.

Changes, introduced in the ArangoDB 3.6 release:

  • Performance optimization for subqueries, as well as for UPDATE and REPLACE operations;
  • The possibility of parallel execution of AQL queries has been implemented, allowing a reduction in the time required to gather data distributed across different cluster nodes;
  • Deferred materialization of documents has been implemented, allowing in some cases to eliminate the need for complete extraction of irrelevant documents;
  • Early filtering of documents that do not match the specified criteria is ensured during document scanning;
  • The ArangoSearch full-text search engine has been improved, supporting ranking based on data similarity. Support for an analyzer for query autocompletion has been added, along with the TOKENS() and PHRASE() functions for dynamic search query generation;
  • A maxRuntime setting has been added for selectively limiting the execution time of queries;
  • The option "--query.optimizer-rules" has been added to manage the activation of specific optimizations during query processing;
  • The capabilities for organizing cluster operations have been expanded. The option "--cluster.upgrade" has been added to select the node upgrade mode in the cluster;
  • Support for TLS 1.3 has been added for encrypting the communication channel between the client and the server (by default, the client continues to use TLS 1.2).

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster