ArangoDB @NoSQLmatters Paris, March 26th / 27th

If you are interested in NoSQL and come from France, the NoSQL matters conference in Paris is your place to go. ArangoDB contributes with a workshop and a talk and is a silver sponsor of the conference as well. You can meet our team at the exhibition space and ask your ArangoDB questions in person.

Tickets are available for both days, starting at €299 for the conference pass.

For one lucky member of our community the conference could be for free – we have one ticket left for the conference day, March, 27th.

Here is the link to participate: Win a ticket for NoSQL matters Paris 2015 (more…)

Posted in General | Leave a comment

ArangoDB in San Francisco / Bay Area

Join parts of the ArangoDB team in San Francisco. Max and Claudius are visiting the Bay Area from mid-February till end of March. Starting with the StrataConf in San Jose, Feb 17–20, 2015 Max and Claudius want to meet people, start cooperations, visit meetups and tell people in the Bay Area about ArangoDB.

If you know any hackerspaces we definitely should go, drop us a line and we will try to be there. We would be happy to see some of you guys in person and to respond to every question you may have about ArangoDB.

Posted in General | 2 Comments

Comparison: Lockless programming with atomics in C++ 11 vs. mutex and RW-locks

ArangoDB is multithreaded and able to use several CPU-cores at once. Because of that access to common data structures to these threads have to be protected from concurrent access. ArangoDB currently uses mutexes, spinlocks and RW-locks for that. With the ongoing development of the MVCC the number of situations where protected access is needed grows significantly. If locking is done too often the scalability is effectively limited to one core. So this test was done to estimate the costs, and evaluate other solutions – so called lockless programming with atomics.


Posted in General | 11 Comments

Our new address on Github


We have moved our ArangoDB Github repository from triAGENS to arangodb.

The database:

triAGENS/ArangoDB –> arangodb/arangodb

We’ve also moved:

For a certain amount of time the old triAGENS – repositories will redirect to the new ones.

Posted in General | Leave a comment

Explaining AQL queries the fancier way

I have been looking at many AQL queries during the last few weeks…

Looking back, I can say that the JSON query execution plans provided by the explain() method have provided me with a lot of useful information about how the AQL optimizer had transformed a given query. This has helped testing and improving the query optimizer a great deal.

However, the JSON output produced by explain() is so detailed that even for the simplest cases queries it will span multiple screens. This is far too much for quickly assessing what a query will be doing and how it will be executed.

I therefore quickly put together a function that provides a much more compact explain output. Its input parameter is a query string, which it will send to the ArangoDB server to have it explained.

But it doesn’t print a voluminous JSON object. This one is for developers with a full schedule.

Read more on Jan’s Blog

Posted in General | Leave a comment

ArangoDB Christmas Release

Need a last minute Christmas toy. Why not try out Javascript ES6? Or maybe play with the Foxx generator to easily generate API? Our Foxx has been very busy the last day. We are proud to release the first beta version of ArangoDB 2.4.0. You can download the packages from our beta page or checkout the git 2.4 branch.

For more information about the new features, see the documentation and check the upgrading instructions.


Posted in General, Releases | Leave a comment

Bulk inserts in MongoDB, CouchDB, and ArangoDB (Dec. 2014)

More than two years ago, we compared the bulk insert performance of ArangoDB, CouchDB and MongoDB in a blog post.

The original blog post dates back to the times of ArangoDB 1.1-alpha. We have been asked several times to re-run the tests with the current versions of the databases. So here we go.


Posted in General, Performance | 5 Comments

Notes on a busy Month at ArangoDB

November 2014 was a month where our staff (and the cute ArangoDB Foxx) collected lot’s of miles by visiting conferences, meetups and inspiring people in Europe, Africa, the US and Canada. If you missed a talk, there are plenty of slideshares / recordings available.

Release 2.3

Everyone who was not on a plane worked on ArangoDB 2.3 – our major release with a re-written query optimizer that optimizes execution plans, added/improved AQL functions and several performance improvements (@see Query Optimizer Tour by Jan). You can download ArangoDB 2.3.1 and start optimizing.

Frank added a docker file, so you might start shipping ArangoDB in a docker container as well. (more…)

Posted in General | Leave a comment

Building Hypermedia APIs – Links and Forms in JSON

When we create websites we don’t just create single pages that have no connection to other Web pages. From the beginning, hyperlinks were part of the core concept of the World Wide Web and for that reason HTML. Links are so essential to the Web that they are even used to rank the popularity of the Web pages on search engines. And who hasn’t gone on a journey through Wikipedia clicking link after link? Even though we all know and appreciate the importance of links on Websites, we rarely use links in our Web APIs. (more…)

Posted in API, Foxx, General | Tagged , , , | Leave a comment

Running ArangoDB is as simple as …

I’ve created an automated build repository on docker, so that you can easily start a docker container with the latest stable release. If you miss anything in the container, please let me know. Thanks to frodenas, hipertracker, joaodubas, webwurst who also created dockerfiles.


A distributed open-source database with a flexible data model for documents, graphs, and key-values. Build high performance applications using a convenient sql-like query language or JavaScript extensions.

Start a ArangoDB instance

In order to start an ArangoDB instance run

By default ArangoDB listen on port 8529 for request and the image includes EXPOST 8529. If you link an application container, it is automatically available in the linked container. See the following examples. (more…)

Posted in General | 6 Comments