Arango Weekly 28: New Release 2.6 & Latest Updates
This week we’ve finally released ArangoDB 2.6! Try it out and we would love to see some feedback. Look at our list of important changes in the API for 2.6 if you are one of ArangoDB’s developers.
Alan talked about Getting Started with Foxx in ArangoDB 2.6 in our webinar. If you didn’t had the chance to be there, you can watch it on our youtube channel.
Stay tuned and follow @arangodb for more news.
Improving Databases: Open Source Competitive Benchmark
TL;DR: Our initial benchmark has raised a lot of interest. Initially we wanted to show that multi-model can compete with other solutions. Due to the open and competitive way we have conducted the benchmark, the discussions around it have lead to improvements in all products, better algorithms, faster drivers and better ways to use the databases.
General Setup
From the outset we published all code and data and asked the vendors of all tested products as well as the general public, not only to run the tests on their own machines, but also to suggest improvements in the data models, test code, database configuration, driver usage and server configuration. This lead to a lively discussion, lots of pull requests and even to the release of improved versions of the database products themselves!
This process exceeded all our expectations and is yet another great example of community collaboration not only for fact finding but also for product improvements. Obviously, the same benchmark code will always show slightly different results when run on different hardware, operating systems, network setups and with more or less RAM. Therefore, a reliable result of a benchmark can essentially only be achieved by allowing everybody to run it on their own machines.
The technical setup is described in the above blog post. Let me briefly repeat the key facts.
Meet Patrick: ArangoDB User & Community Contributor
In April 2015, Thomas Pfeiffer, a user experience researcher and active open-source contributor, did an interview with one very active member of the ArangoDB community – J Patrick Davenport from Palatka, FL, USA. The aim was to get an idea about the open-source project ArangoDB as a whole and the development process so far – from the perspective of a developer. This interview first appeared in Thomas Pfeiffer sessellift blog on April 27th.
Thomas: Hi Patrick, to start off, could you tell me a little about yourself (your background, the job in which you’re using ArangoDB, …)?
Patrick: About me: I’m a Solutions Architect, working for my own company, DeusDat Solutions. I’ve been working over 8 years as a software Bob Villa (This Old House, American Reference). My clients call me in to renovate code bases that are near collapse. I’ve improved multiple Fortune 500 company’s core business applications. Recently I designed half to the Medicare Fraud Detection System for the US Government. That was based on Hadoop.
ArangoDB 2.6 New Release: Enhanced Features & Performance
We are proud to announce the latest release of ArangoDB with lot’s of improvements and many new features. ArangoDB 2.6 is available for download for many different operating systems. In the new release the focus is on performance improvements. For instance sorting on a string attribute is up to 3 times faster. There are also improvements in the shortest-path implementation and other graph related AQL queries.
Look at some of our previous blogposts like: Reusable Foxx Apps with Configurations, Document your Foxx Apps with Swagger 2 or the Improved System User Authentication to learn more about ArangoDB 2.6 and check the manual for a deeper dive into specific features.
Claudius, CEO: “The performance improvements in every area of ArangoDB 2.6 make ArangoDB an effective alternative to other databases. I am very proud of the product and the team, and we can expect much more in the next few months.”
ArangoDB Weekly 27: Beta Release 2.6 & AQL Preview for 2.7
This week we’ve released ArangoDB 2.6 beta! We would love to see you testing the beta and give us some feedback. If you are one of the great developers who made the drivers for ArangoDB, you should look at our list of important changes in the API for 2.6.
Let’s a have glimpse into the future and look at AQL improvements for 2.7. Stay tuned and follow @arangodb for more news.
AQL Improvements for ArangoDB 2.7: Enhanced Query Capabilities
With ArangoDB 2.6 being in beta already, it’s time to look at some features scheduled for 2.7. Today I’ll showcase a few AQL parser improvements that are present in the devel
branch already, which will be the foundation for the 2.7 release.
Star operator
The already existing star operator ([*]
) is much more flexible in 2.7 than in previous ArangoDB versions. It now allows filtering the values it iterates over, and optional projections.
These features will be demonstrated using the following example member data:
[
{ "name" : "sir alfred", "age" : 60, "likes" : [ "lettuce", "tortoises" ] },
{ "name" : "mozquito", "age" : 15, "likes" : [ "skateboards", "music" ] },
{ "name" : "murphy", "age" : 28, "likes" : [ "juice", "tarts", "cakes" ] },
{ "name" : "helga", "age" : 52, "likes" : [ "home", "garden", "tortoises", "cakes" ] }
]
Speeding Up Array Operations: ArangoDB Performance Tips
Last week some further optimization slipped into 2.6. The optimization can provide significant speedups in AQL queries using huge array/object bind parameters and passing them into V8-based functions.
It started with an ArangoDB user reporting a specific query to run unexpectedly slow. The part of the query that caused the problem was simple and looked like this:
FOR doc IN collection
FILTER doc.attribute == @value
RETURN TRANSLATE(doc.from, translations, 0)
In the original query, translations
was a big, constant object literal. Think of something like the following, but with a lot more values:
{
"p1" : 1,
"p2" : 2,
"p3" : 40,
"p4" : 9,
"p5" : 12
}
The translations were used for replacing an attribute value in existing documents with a lookup table computed outside the AQL query.
The number of values in the translations
object was varying from query to query, with no upper bound on the number of values. It was possible that the query was running with 50,000 lookup values in the translations
object.
Arango Weekly 26: OrientDB Benchmark & Latest Updates
Last week we’ve published a benchmark post: Native multi-model can compete with pure document and graph databases. An article that attracted some great attention on HN / social media. Many asked us to add the multi-model database OrientDB to the benchmark post. We did and published Performance comparison between ArangoDB, MongoDB, Neo4j and OrientDB today.
We would appreciate and welcome your feedback.
Performance Comparison: ArangoDB vs MongoDB, Neo4j, OrientDB
My recent blog post “Native multi-model can compete” has sparked considerable interest on HN and other channels. As expected, the community has immediately suggested improvements to the published code base and I have already published updated results several times (special thanks go to Hans-Peter Grahsl, Aseem Kishore, Chris Vest and Michael Hunger).
Please note: An update is available (June ’15) and a new performance test with PostgreSQL added.
Here are the latest figures and diagrams:
The aim of the exercise was to show that a multi-model database can successfully compete with special players on their own turf with respect to performance and memory consumption. Therefore it is not surprising that quite a few interested readers have asked, whether I could include OrientDB, the other prominent native multi-model database.
Working with ArangoDB: Insights from Francis at Boostport
As an open-source project we are always happy when we learn about new projects that use ArangoDB and we are thankful for any feedback; on how working with ArangoDB and/or interacting with the team – has helped your projects to develop. If you have a story you want to share, please get in touch.
Recently we have received a nice feedback from Francis (Boostport) that reached us with the launch of his new product. Parts of Boostport are realized using Foxx-JavaScript extensions on ArangoDB:
“I really enjoyed working on ArangoDB. It’s very stable, well-documented and the API docs are very clear, as I use the REST api. Support is also top-notch. Bugs were often fixed hours or days after discovery and in one case, after I submitted an enhancement request for custom AQL functions, Jan implemented them over the next few days.
For me, the most important feature is being able to build custom AQL functions in javascript. This allowed me to easily perform analytics on social data, generate the appropriate views and send them back to the client for consumption. Finally, I also really liked how minimal configuration is needed to get it up and running. As a plus, I like how you can set up replication using the REST interface. :)”
Get the latest tutorials,
blog posts and news:
Thanks for subscribing! Please check your email for further instructions.