Full-Text Index Enhancements: ArangoDB Search Optimization
This post is about improvements for the fulltext index in ArangoDB 2.6. The improvements address the problem that non-string attributes were ignored when fulltext-indexing. Effectively this prevented string values inside arrays or objects from being indexed. Though this behavior was documented, it was limited the usefulness of the fulltext index much. Several users requested the…
String Comparison Performance: ArangoDB Query Optimization
We’ve been using Callgrind with its powerful frontend KCachegrind for quiet some time to analyse where the hot spots can be found inside of ArangoDB. One thing always accounting for a huge chunk of the resource usage was string comparison. Yes, string comparison isn’t as cheap as one may think, but its been even a…
ArangoDB at Strata + Hadoop World London (5-7 May)
Max Neunhöffer from ArangoDB shows an use case for multi-model NoSQL databases on Strata + Hadoop World 2015 in London. Join his Session on 6th of May. Multi-model databases and the art of aircraft maintenance We describe a case study in aircraft fleet management, where we needed a database that would store data about all…
Return Value Optimization for AQL: ArangoDB Query Efficiency
While in search for further AQL query optimizations last week, we found that intermediate AQL query results were copied one time too often in some cases. Precisely, the data that a query’s ReturnNode will return to the caller was copied into the ReturnNode’s own register. With ReturnNode’s never modifying their input data, this demanded for…
ArangoDB 2.5.3: Maintenance Release for Enhanced Stability
This version is deprecated. Download the new version of ArangoDB The third maintenance release for ArangoDB 2.5 is available for download. This maintenance release is to address some issues in ArangoDB 2.5 and to support future releases.
ArangoDB Team in Silicon Valley: Innovation and Collaboration
ArangoDB’s outpost in the Bay area is getting more and more crowded. CTO Frank @fceller has joined the team of our CEO Claudius @weinberger, and ArangoDB´s lead developers: Max @neunhoef & Michael @mchacki. The latter are in San Francisco for a while already. You can meet our team by attending several Meetups, the Collision Conf…
Exporting Data for Offline Processing in PHP: ArangoDB Guide
A few weeks ago I wrote about ArangoDB’s specialized export API. The export API is useful when the goal is to extract all documents from a given collection and to process them outside of ArangoDB. The export API can provide quick and memory-efficient snapshots of the data in the underlying collection, making it suitable for…
AQL Functions Enhancements: Boosting ArangoDB Query Capabilities
Waiting for a git pull to complete over an 8 KiB/s internet connection is boring. So I thought I’d rather use the idle time and quickly write about some performance improvements for certain AQL functions that were recently completed and that will become available with ArangoDB 2.6. The improvements affect the following AQL functions: UNSET():…
Efficient Data Collection with Hash Tables: ArangoDB Insights
ArangoDB 2.6 will feature an alternative hash implementation of the AQL COLLECT operation. The new implementation can speed up some AQL queries that can not exploit indexes on the COLLECT group criteria. This blog post provides a preview of the feature and shows some nice performance improvements. It also explains the COLLECT-related optimizer parts and…
Creating Multi-Game Highscore Lists: ArangoDB Techniques
I just came across a question about how to create highscore lists or leaderboards in ArangoDB, and how they would work when compared to Redis sorted sets. This blog post tries to give an answer on the topic and also detailed instructions and queries for setting up highscore lists with ArangoDB. The additional section “Extensions”…