Index Speedups in ArangoDB 2.8: Enhancements

The upcoming 2.8 version of ArangoDB will provide several improvements in the area of index usage and query optimization.

First of all, hash and skiplist indexes can now index individual array values. A dedicated post on this will follow shortly. Second, the query optimizer can make use multiple indexes per collection for queries with OR-combined filter conditions. This again is a subject for another post. Third, there have been some speed improvements due to changes in the general index handling code. This is what this post is about. Read more

More info...

Foxx Module Resolution Changes in ArangoDB 2.8

The implementation of the JavaScript require function will be adjusted to improve compatibility with npm modules. The current implementation in 2.7 and earlier versions of ArangoDB strictly adheres to the CommonJS module standard, which deviates from the behaviour implemented in Node and browser bundlers.

Module paths will now be resolved in the following ways: Read more

More info...

Enhanced Deadlock Detection: Improving ArangoDB Performance

The upcoming ArangoDB version 2.8 (currently in devel) will provide a much better deadlock detection mechanism than its predecessors.

The new deadlock detection mechanism will kick in automatically when it detects operations that are mutually waiting for each other. In case it finds such deadlock, it will abort one of the operations so that the others can continue and overall progress can be made. Read more

More info...

Using Bind Parameters in the AQL Editor: ArangoDB

The AQL editor in the web interface is useful for running ad hoc AQL queries and trying things out. It provides a feature to explain the query and inspect its execution plan. This can be used to check if the query uses indexes, and which.

So far the AQL editor only supported using query string literals, but it lacked support for bind parameters. Queries issued by application code however often will use bind parameters for security reasons. Often enough this prevented copying & pasting queries from the application code into the AQL editor and vice versa without making manual adjustments. Read more

More info...

ArangoDB 2.7.1: Latest Enhancements & Fixes

In the first maintenance release of ArangoDB 2.7 we have switched from readline to linenoise ng for line-editing and history capabilities on the command line.

Furthermore, the AQL function MERGE() improved, now working on a single array parameter, too. This allows combining the attributes of multiple objects from an array into a single object, e.g.: Read more

More info...

Benchmark: PostgreSQL, MongoDB, Neo4j, OrientDB and ArangoDB

In this blog post – which is a roundup of the performance blog series – I want to complete the picture of our NoSQL performance test and include some of the supportive feedback from the community. First of all, thanks for all your comments, contributions and suggestions to improve this open source NoSQL performance test (Github). This blog post describes a complete overhaul of the test with no need to read all the previous articles to get the picture – have a look at the appendix below to get all the details on hard- and software, the dataset and tests, used in this NoSQL performance comparison. Read more

More info...

ArangoDB 2.7 GA: Significant Improvements

Long awaited and now we´ve finished it! New major release of ArangoDB 2.7 is ready for download. First of all a big thanks to our community for your great support! We´ve implemented a lot of your ideas! After your feedback to RC1 and RC2 we are happy to bring a new major release to the world. With ArangoDB 2.7 we increased our performance even further and improved query handling a lot. Read more

More info...

ArangoDB 2.6.9: Maintenance Release Highlights

In ArangoDB 2.6.9 we have fixed an AQL skiplist issue that occurs in a combination of sort and limit.

When using a Skiplist index on an attribute (say “a”) and then using sort and skip on this attribute caused the result to be empty e.g.:

require("internal").db.test.ensureSkiplist("a");
require("internal").db._query("FOR x IN test SORT x.a LIMIT 10, 10");

Was always empty no matter how many documents are stored in test. This is now fixed.

More info...

ArangoDB 2.7 RC1: Preview the Latest Features

We put a lot of brainpower into the next major release of our favorite database. Thanks to your feedback and contributions we got some important steps forward. Share your professional experiences, opinions and feedback with us on this release candidate of ArangoDB 2.7.

This is a quick info about the upcoming 2.7 release – for details please check our documentation and the changelog. Read more

More info...

ArangoDB Weekly 34: Updates, Tips, and Community Highlights

In just a few days we will publish our release candidate of ArangoDB 2.7. As secure performance and ease of use are our key goals, we worked hard on some nice improvements like

  • Index Buckets (Reducing loading time for collections and enable faster resizing)
  • Throughput Enhancements (Real world tests showed 25-75% increase of throughput compared to 2.6)
  • Enhancements for AQL like “return distinct”, “template query strings” or the brand new “AQL query result cache” Read more
More info...

Get the latest tutorials,
blog posts and news: