ArangoDB Insert Performance Measurement: Techniques & Insights

Measuring ArangoDB insert performance

ArangoDB offers a few APIs to insert documents. First, there is an HTTP API for bulk document imports. This API was already covered in another post. In general, the bulk import API should always be used when the task is to create many documents into a collection at once, as fast as possible. This works well if the documents are known in advance, e.g. when importing data from a file.

(more…)

ArangoDB 1.4: Introducing Multiple Databases Feature

This version is deprecated. Download the new version of ArangoDB

ArangoDB 1.4 provides support for multiple databases, a feature often requested by our users.

Motivation In the old days, ArangoDB provided the option to create multiple collections, but all collections were created on the same level. As there was no hierarchy of collections, there was a chance of having a collection name clash when using one ArangoDB server for multiple applications. For example, running multiple applications inside the same ArangoDB server did not work if all applications created their own

users collections. Workarounds, such as prefixing collection names, were required to make older ArangoDB versions play nicely with multiple applications. With ArangoDB 1.4, multiple databases are supported natively. Workarounds such as prefixing collection names with application names, can go away now.

(more…)

Elasticsearch Plugin: ArangoDB Integration | ArangoDB ’13

ArangoDB River Plugin for ElasticSearch

ArangoDB offers now a plugin for automated data transfer from ArangoDB into ElasticSearch.

If you want to benefit from ElasticSearch’s full text search capabilities for your ArangoDB document data, the easiest way to do so is to use this new plugin.
Implementing the push approach, otherwise, would make it necessary to write your own indexer, using your favorite programming language.
The ArangoDB river plugin software is an initial alpha version and licensed under the Apache 2 license.
(more…)

ArangoDB 1.4: Replication Feature Overview | ArangoDB ’13

ArangoDB 1.4

comes with asynchronous master-slave replication. The new replication feature should make it much easier to create a backup from a running ArangoDB server. For example, a second ArangoDB instance can now be used as a slave by cloning all data from the master. The slave will be populated in the background while the master is running and accepting requests – not disrupting the master operations.

(more…)

ArangoDB 1.4.1 Available: Discover Enhancements | ArangoDB ’13

This version is deprecated. Download the new version of ArangoDB

The bug-fix release 1.4.1 of ArangoDB is available for download. The fixed issues can be found in the changelog. It also fixes a problem with some of the build packages. The arangod daemon process was under some distributions started as root.

ArangoDB 1.4.0 on Raspberry Pi: Database Power for Small Devices

This is a follow to the post about ArangoDB 1.3 running on Raspberry PI. With the release of ArangoDB 1.4.0 I now tried to compile it again. As all patches required for 1.3 are part of 1.4.0 it is now much easier.

  pi> sudo apt-get install libreadline6 libreadline6-dev libssl-dev
  pi> git clone -b v1.4.0 https://github.com/triAGENS/ArangoDB
  pi> cd ArangoDB
  pi> ./configure --enable-all-in-one-icu --enable-all-in-one-v8 --enable-all-in-one-libev --disable-mruby
  pi> make

After a few hours, everything (including V8 & ICU) is compiled and you can start ArangoDB on a raspberry

  pi> mkdir /tmp/testbase
  pi> ./bin/arangod -c etc/relative/arangod.conf /tmp/testbase

and the shell in another window

  pi> ./bin/arangosh -c etc/relative/arangosh.conf

or point your browser to http://pi:8529/

However, if you do not want to wait for hours, I’ve tried to build a debian package, which can be downloaded from here:

    pi> wget http://www.arangodb.com/repositories/raspbian/arangodb-1.4.0-raspbian.deb
    pi> sudo dpkg -i arangodb-1.4.0-raspbian.deb

This has not been tested in detail. So any feedback or improvements are welcome.

ArangoDB 1.4.0 Released: Discover New Features | ArangoDB ’13

This version is deprecated. Download the new version of ArangoDB

We are proud to announce that version 1.4.0 of ArangoDB has been released. The release is available for download here: https://www.arangodb.com/download Thanks to all contributors and testers for your enormous help!

Features This release is a major milestone for us, because it contains two of the most wanted features:

  • replication
  • multi-database support It also comes with:
  • Foxx, a lightweight framework for building APIs and applications, see https://www.arangodb.com/manuals/current/UserManualFoxx.html
  • a new and much improved admin web interface, including an intuitive graph browser, see http://www.arangodb.com/manuals/current/NewFeatures14.html#NewFeatures14WebInterface
  • full swagger API documentation, allowing you to easily test and play with the server API using a browser
  • an easy to use import/export tool, see http://www.arangodb.com/manuals/current/NewFeatures14.html#NewFeatures14DumpReload
  • an asynchronous request API (can be used for “fire-and-forget” requests and decrease client waiting time)
  • and several other improvments The complete list of new features can be found here:

http://www.arangodb.com/manuals/current/NewFeatures14.html (more…)

ArangoDB 1.3.3 Release: Enhancements & Fixes | ArangoDB ’13

This version is deprecated. Download the new version of ArangoDB

Packages for the bug-fix release 1.3.3 are now available from our web-site and from Homebrew. For a list of fixes checkout the CHANGELOG.

ArangoDB on Raspberry Pi: Database Power for Small Devices

During the ArangoDB Hackathon weekend, we tried to compile ArangoDB on a Raspberry PI using Raspbian as operating system.

ArangoDB needs some external libraries in order to compile

  • libev
  • ICU
  • V8
  • zlib

Libev, ICU and zlib compiled without problems. Raspbian comes with a precompiled version of V8 – but it’s too old for ArangoDB. So, we had to compile V8 ourself. A single make run takes hours and hours to complete. Using the default parameters it complains about wrong flags for the hard-float ABI. After some googling and endless hours of waiting for the compile to complete, we found a set of flags that finally worked.

  • you need to pass the options -march=armv6 to the compiler and linker
  • you need to disable CAN_USE_VFP3_INSTRUCTIONS
  • use -O2 instead of -O3 (I’m not sure if this is necessary or not)

If you downloaded ArangoDB 1.3, use the following diff to patch the Google V8 Makesystem

(more…)

ArangoDB on Raspberry Pi: Explore Possibilities | ArangoDB ’13

During the ArangoDB Hackathon weekend, we tried to compile ArangoDB on a Raspberry PI using Raspbian as operating system.

ArangoDB needs some external libraries in order to compile

  • libev
  • ICU
  • V8
  • zlib

Libev, ICU and zlib compiled without problems. Raspbian comes with a precompiled version of V8 – but it’s too old for ArangoDB. So, we had to compile V8 ourself. A single make run takes hours and hours to complete. Using the default parameters it complains about wrong flags for the hard-float ABI. After some googling and endless hours of waiting for the compile to complete, we found a set of flags that finally worked.

  • you need to pass the options -march=armv6 to the compiler and linker
  • you need to disable CAN_USE_VFP3_INSTRUCTIONS
  • use -O2 instead of -O3 (I’m not sure if this is necessary or not)

(more…)

Get the latest tutorials, blog posts and news: