ArangoDB 2.4 Release: New Features & Enhancements

This version is deprecated. Download the new version of ArangoDB

We are proud to announce the release of Version 2.4 of our multi-model database ArangoDB. It’s ready for download now and available for all major platforms.

This release is a major step forward. Use Foxx to create your favorite microservice with a few clicks, dockerize it and access it via a REST/Web API from everywhere. – Dr. Frank Celler (CTO)

You can now use EcmaScript 6 features like iterators, symbols, maps and sets by default and enable even more ES6 features with ArangoDB start options. The V8 engine upgrade in ArangoDB 2.4 also improves performance and speeds up V8 garbage collections.

The ArangoDB query language (AQL) gets more efficient group count calculation queries, an optional return value for AQL data-modification queries and improved index handling in filtering AQL queries.

Foxx 2.0: The new Foxx-Generator is a framework that enables developers to build Hypermedia APIs easily. Developers can create Web APIs based on a semantic description of entities and transitions using a statechart alike design approach. Additional to the recently added job queues and authentication services, Foxx got a new web-frontend to easily create new or install Foxx applications from Github or the ArangoDB Store.

Try the new tutorial Foxx in 10 Minutes to build your first Foxx application. Starting with a new Foxx app has never been easier.

Along with ArangoDB the new light-weight JavaScript driver arangojs 3.0 is ready to use.

Download the current 2.4 release and start building your own applications on top of ArangoDB!

(more…)

ArangoDB Weekly Newsletter – January 8, 2015

The ArangoDB team is back from holidays, wishing you and your families a happy New Year 2015. This year will become a good one for multi-model databases – like ArangoDB – according to analysts, quoted in the NoSQL trends 2015 article from Dataversity. This newsletter covers the last 3 weeks, including the beta of ArangoDB 2.4, build on christmas eve.

(more…)

Foxx SendGrid Integration: ArangoDB Tutorial

ArangoDB Foxx allows defining job queues that let you perform slow or expensive actions asynchronously.

These queues can be used to send emails, call external APIs or perform other actions that you do not want to perform directly or want to retry on failure. Let’s say you want to send out an email every time you check off an item in your Foxx todo app and you want to use an external transactional email service to do that. (more…)

Crawling GitHub with Promises: ArangoDB Tutorial

The new Javascript driver no longer imposes any promises implementation. It follows the standard callback pattern with a callback using err and res.

I wanted to give the new driver a try. A github crawler seemed like a good side-project, especially because the node-github driver follows the same conventions as the Javascript driver.

There are a lot of promise libraries out there. The most popular one – according to NPM – was promises. It should be possible to use any implementation. Therefore I used this one.

(more…)

Weekly Newsletter – December 18, 2014 | ArangoDB Updates

ArangoDB Releases

We released ArangoDB 2.3.3 – a maintenance release with some bug fixes. Here are some of the fixes:

  • fixed error handling in instantiation of distributed AQL queries
  • issue #1185: parse non-fractional JSON numbers with exponent (e.g. 4e-261)
  • issue #1159: allow –server.request-timeout and –server.connect-timeout of 0

ArangoDB related (Drivers & more)

  • aqb 1.4.1: ArangoDB query builder (npm) fluent JS API by Alan Plum
  • guacamole 0.4.0 (rubygems.org): An ODM for ArangoDB by Dirk Breuer and Lucas Dohmen
  • Travesedo: J Patrick Davenport started a new Clojure driver for ArangoDB
  • pyArango (beta): Tariq Daouda contributed a python driver with validations. (more…)

Getting Started with Guacamole in Rails: ArangoDB Tutorial

Please note that parts of this article will not work out of the box with ArangoDB 3.0

Using ArangoDB as your main database is a good idea for various reasons. What I personally like about it is its query language AQL. I used relational databases in the past as my main database and writing statements in a language similar to SQL was a great way for me to get started with ArangoDB.

Having a HTTP based interface (like all the cool kids these days) we could build applications running solely on top of our database. That’s rather nice but then we would have to take care of all the gory details. So for our app we want at least an abstraction layer on top of the HTTP API. Better yet, something assisting us with modeling our domain logic.

Meet Guacamole: A object-document-mapper that takes care of all the busywork and allows you to focus on your domain. (more…)

Bulk Inserts: MongoDB vs CouchDB vs 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.

(more…)

ArangoDB 2.3.3 Release: Enhancements & Bug Fixes

This version is deprecated. Download the new version of ArangoDB

A maintenance release for ArangoDB 2.3 is available for download or via your favourite package manager.

v2.3.3 (2014-12-17)
-------------------

* fixed error handling in instantiation of distributed AQL queries, this 
  also fixes a bug in cluster startup with many servers

* issue #1185: parse non-fractional JSON numbers with exponent (e.g. `4e-261`)

* issue #1159: allow --server.request-timeout and --server.connect-timeout of 0

ArangoDB Query Builder: Simplifying Database Queries

The most powerful way to query your data in ArangoDB is by using ArangoDB’s own query language, AQL. In the past using AQL in your JavaScript code sadly would often require writing long, unwieldy strings. This made writing complex queries difficult and could often lead to subtle syntax errors or mistakes.

The ArangoDB Query Builder (AQB) is a JavaScript node packaged module that provides a fluid API for writing AQL queries in plain JavaScript. And if you’re using ArangoDB 2.3, the aqb module is already available to your Foxx applications. (more…)

Enhanced AQL in ArangoDB 2.4: Boost Query Performance

While on a retreat in Belgium, we found some spare time to work on improvements for AQL. These will be shipped with ArangoDB version 2.4, and are already available in the devel version for testing from now on.

Here’s a short overview of the improvements:

Collect with count

A common use case in query languages is to count the number of documents returned by a query. The AQL solution for this has been to use the LENGTH function and a subquery:

RETURN LENGTH((
  FOR doc IN collection 
    FILTER doc.someAttribute == someValue
    RETURN doc
  ))

This is quite long and probably unintuitive for people which have used SQL for years.

We therefore now allow using the following alternative version:

Read more on Jan’s Blog

Get the latest tutorials, blog posts and news: