What is New?

Since I wrote a blog post a couple of months ago covering The Power of Aerospike Predicates, Predicate Filters have moved to an EOL status with legacy support to be continued for the foreseeable future. They have been replaced with Aerospike Expressions. This post is an update for my previous blog post, replacing the Predicate syntax with the Expression syntax.

Why use Expressions?

Aerospike is a high throughput/low latency distributed NoSQL database. Records may be retrieved on the basis of a primary key, secondary index query, or full scan using the most basic API functionality. As Aerospike only supports retrieval of records via…


With Aerospike version 5.x, the Cross Data Center (XDR) feature was rearchitected from scratch to make it more customizable and resilient, making it much more useful. Additional functionality is forthcoming later this year to enhance the customizability even further.

In prior Aerospike versions, connectivity from a source database to multiple destination databases were interdependent. If there was an issue (whether network, latency, or throughput issues), then shipment to all destinations were affected. With V5.x, shipment to multiple destinations has been completely decoupled.

A couple of excellent blog posts covering XDR as well as Multi-Site Cluster functionality were written by Srini…


Why use Predicates?

Aerospike is a high throughput/low latency distributed NoSQL database. Records may be retrieved on the basis of a primary key, secondary index query, or full scan using the most basic API functionality. As Aerospike doesn’t support retrieval of records other than via a primary key, a secondary index, a record UDF function, or a full set (table) or namespace scan, what if you require greater selectivity than one of those basic retrieval methods? Obviously, the selected records may be filtered further by executing code within your client application. …


A common use case that is implemented with Aerospike involves storing time series data that arrives at a very high throughput rate. The ability to view that data is real-time is also a desired component of this use case. A demo using price data for equity (stock) prices has been created which will demonstrate both of those capabilities.

First we want to populate a baseline of historical opening and closing stock price data for some symbols. To populate this data, a Java program loaded source data for a few stock symbols, IBM, WMT, XOM, BRK, and AMZN from freely available…


Photo by Matt Artz on Unsplash

Aerospike is a high throughput, low latency NoSQL distributed DBMS which supports 24x365 availability. One area where its functionality was previously limited was in the efficiency of tracking activities via bit manipulation.

Why would you wish track activities via bit manipulation? The most obvious, common use of this functionality would be to track unique daily active users for each page/site. Each user is assigned a unique id within a range of values. For each user that visits the page/site, you would want to set the appropriate bit in the array.

Of course, you were always able to read a record…

Reuven Kaswin

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store