August 17, 2013

Aerospike 3

My clients at Aerospike are coming out with their Version 3, and as several of my clients do, have encouraged me to front-run what otherwise would be the Monday embargo.

I encourage such behavior with arguments including:

Aerospike 2’s value proposition, let us recall, was:

… performance, consistent performance, and uninterrupted operations …

  • Aerospike’s consistent performance claims are along the lines of sub-millisecond latency, with 99.9% of responses being within 5 milliseconds, and even a node outage only borking performance for some 10s of milliseconds.
  • Uninterrupted operation is a core Aerospike design goal, and the company says that to date, no Aerospike production cluster has ever gone down.

The major support for such claims is Aerospike’s success in selling to the digital advertising market, which is probably second only to high-frequency trading in its low-latency demands. For example, Aerospike’s CMO Monica Pal sent along a link to what apparently is:

*I haven’t watched the video, but Monica helpfully included a small amount of transcript.

Monica also updated Aerospike’s business highlights as (with some editing by me):

  • Headcount – 50 and hiring.
  • # of production customers – fairly high double digits, all paying.
  • Biggest database – 30TB and growing.
  • Most customers are at 1-4TB of unique data; most replicate 2x; many also replicate across data centers.
  • Pricing – Free Community Edition with 2 servers and 200GB data. Enterprise Edition priced per terabyte and per datacenter, unlimited nodes per cluster, unlimited number of clusters, pay only for unique data, not replicas. Most start at $50k.

However, Aerospike 2 didn’t have much in the way of data manipulation options. Aerospike described its eponymous product as a key-value store, although I gather it was possible to look into the values up to a point; specifically:

Aerospike 3 adds more data manipulation features. Notes on that start:

Secondary indexes in Aerospike 3 just work with strings and integers, but Aerospike doesn’t dispute my opinion that it would be nice to index the (values inside the) new datatypes as well.

Specifically, Aerospike 3 adds four new datatypes, which it calls “complex”:

Aerospike also added what it calls “large” datatypes, which is a pointer-like way to link blocks. The point of those is to work around what is otherwise the record size limit (typically 128 Kb), so as to tie together all the information on, say, a single user.* Aerospike gives the impression that customers have been custom-building datatypes of these kinds all along, with stacks being especially popular.

*When I heard “collect all a user’s interaction data in one place”, the first thing I thought of was WibiData.

Notes on the Lua UDFs include:

So yes — Aerospike 3 may be regarded as Aerospike’s version of support for real-time analytics.


3 Responses to “Aerospike 3”

  1. Mark Callaghan on August 18th, 2013 11:45 am

    This is a bold claim, or maybe I don’t understand what the words mean (from I guess they should also add, “no bugs”.

    “We’re also reliable — no outages, zero downtime, no data loss:”

    And then goes on to describe whey they never fail.

  2. Srini V. Srinivasan on August 18th, 2013 12:57 pm

    Hi Mark,

    Your point is a good one that merits clarification. The statements are based on internet scale services running using Aerospike software for over 3 years now – individual nodes can fail due to hardware faults but the service needs to be up without data unavailability, complete loss of performance, etc.. By focusing on real-time performance, replication, self-management, linear scalability, etc., Aerospike has been able to deliver high availability for RTB and other services in the Digital Advertising Market – the SLAs here are very stringent – 99.9% of requests under a few milliseconds, 24X7 uptime, no service means no revenue, etc.

    You may find it interesting to look at our technical paper in the 2011 VLDB conference that explains some of our techniques for delivering real-time performance with immediate consistency:

    — Srini

  3. Peter Corless on April 21st, 2015 12:58 pm

    Just as an update, the nodes per cluster in Aerospike Community Edition (as well as Enterprise Edition) is now the same since we went open source: 127 nodes per cluster, with is no limit to the total number of clusters you can run with the open source edition.

Leave a Reply

Feed: DBMS (database management system), DW (data warehousing), BI (business intelligence), and analytics technology Subscribe to the Monash Research feed via RSS or email:


Search our blogs and white papers

Monash Research blogs

User consulting

Building a short list? Refining your strategic plan? We can help.

Vendor advisory

We tell vendors what's happening -- and, more important, what they should do about it.

Monash Research highlights

Learn about white papers, webcasts, and blog highlights, by RSS or email.