AQL: Query Documents and Graphs Easily | ArangoDB 2013

Note: The following article was originally written as an answer in ArangoDB google group. It may help other people to understand the scope of ArangoDB and/or AQL, so we posted it here as well.

AQL, the query language, provides access to the data which is stored inside collections. The collections contain documents, identified by unique keys.

(more…)

More info...

Useful ArangoSH Tips and Tricks | ArangoDB 2012

arangosh, The ArangoDB shell, provides some options that may simplify an ArangoDB user’s life. Some of these options have been added in version 1.1.2, and some options have been around for a while but are probably still less known. It’s time to showcase them.
(more…)

More info...

Looking for Beta Tester for the Windows Port

We have a beta version of the Windows port ready for testing. If you are feeling adventurous you can try the brand new beta port of ArangoDB 1.1.1 for windows. Please note, that currently this port only contains the server. The following pieces are still missing:

  • no management front-end to start/stop the server or install it as Windows service; the server must be started using a batch script
  • arangosh: instead you can use the ArangoDB shell using the admin front-end in the browser
  • arangoimp (bulk-importer)

To test the windows port:

  • download the installer
  • execute the MSI
  • this will install the server and the support files und "c:\triagens" (or whatever directory you select)
  • execute the batch script "serverExample.bat" in that directory
  • wait until you see "Have fun"
  • point your browser to "http://localhost:9000"

We have checked the MSI with Avira and tests it under XP, W7, W8. But there will be bugs. Please help us by reporting bugs you encounter using

https://github.com/triAGENS/ArangoDB

If you have improvements or comments, please let us know using the Google group.

More info...

ArangoDB Version 1.1 Released: What’s New? | ArangoDB 2012

ArangoDB version 1.1 was released today. Builds for major distributions can be found on the downloads page.
The new version offers several improvements, namely:

  • an API for batch requests
  • partial updates (i.e. HTTP PATCH) for documents
  • improvements for AQL
  • disk synchronisation improvements
  • a statistics interface
  • SSL support

The complete list can be found here.

If you plan on upgrading from an existing ArangoDB 1.0 to version 1.1, please make sure to also read the upgrade notes.

More info...

ArangoDB PHP Driver Version 1.0 Released | ArangoDB 2012

Yesterday version 1.0 of the PHP driver for ArangoDB was released. It contains basic support for edges as well as fixes and tests. Check out the Changelog for further details. Many thanks go to Frank Mayer for his contribution! 🙂

There is also a comprehensive PHP driver tutorial available on Github.

More info...

ArangoDB: Using JavaScript in the Database | ArangoDB 2012

Jan was invited as a speaker to “Js.Everywhere” in Paris. He talked about using Javascript in a database, well, ArangoDB, to be precise, giving lots of examples on “actions” and related concepts in ArangoDB.

More info...

MRuby JIT and ArangoDB at RuPy 2012 | ArangoDB

@moonbeamlabs and I hold a workshop about ArangoDB and the Ruby driver Ashikawa, which will hopefully become one of the first DataMapper 2 NoSQL drivers. Currently, we are using the aequitas and virtus components of DataMapper 2.

Slides of the workshop can be found on slideshare:

I also gave a short talk about the possibilities of using MRuby in ArangoDB. In preparation for this talk, Achim did some experiments using JIT compilation of the RiteVM bytecode using LLVM. The results are consistent with result for other byte-compiled languages. You can expect a speed-up of 2 using LLVM. In order to gain larger improvements one needs type inference and optimizations to the method selection. Luckily within a context like ArangoDB one can expects to be dealing a lot with primitives types (floats and strings) and a fixed environment. So it seems plausible that one can eventually get near the performace of V8.

More info...

Comparing ArangoDB with CouchDB and MongoDB

The folks over at MongoDB have an article on their site on Comparing MongoDB and CouchDB.
They write:

“We are getting a lot of questions “how are mongo db and couch different?” It’s a good question: both are document-oriented databases with schemaless JSON-style object data storage. Both products have their place — we are big believers that databases are specializing and “one size fits all” no longer applies.”

The same applies to ArangoDB, we meet a lot of people especially developers using MongoDB who are interested in ArangoDB and ask us how it is different than other popular nosql databases. In this article we would like to add our answers to the questions asked.
(more…)

More info...

ArangoDB 1.1 Feature Preview: Batch Request API | ArangoDB 2012

Clients normally send individual operations to ArangoDB in individual HTTP requests. This is straightforward and simple, but has the disadvantage that the network overhead can be significant if many small requests are issued in a row.

To mitigate this problem, ArangoDB 1.1 offers a batch request API that clients can use to send multiple operations in one batch to ArangoDB. This method is especially useful when the client has to send many HTTP requests with a small body/payload and the individual request results do not depend on each other.
(more…)

More info...

ArangoDB 2012: Gain Factor of 5 with Batch Updates

ArangoDB 1.1 will come with a new API for batch requests. This batch request API allows clients to send multiple requests to the ArangoDB server inside one multipart HTTP request. The server will then decompose the multipart request into the individual parts and process them as if they were sent individually. The communication layer can sustain  up-to 800.000 requests/second – but absolute numbers strongly depend on the number of cores, the type of the requests, network connections and other factors. More important are the relative numbers: Depending on your use-case you can reduce insert/update times by 80%.
(more…)

More info...

Get the latest tutorials,
blog posts and news: