More robust analytics workloads and analyzing data in-place faster and more efficiently
As more and more data is being captured in the Aerospike Real-time Data Platform, our customers, in turn, are looking to, no, demanding to make their data even more accessible and valuable through better query capabilities. While Aerospike has always had secondary index capabilities, it is now delivering optimizations with our 5.7 release to deliver queries on larger, more mission critical data sets.
- Efficient memory management that results in 60% smaller indexes.
- Fast and efficient garbage collection of deleted index entries in real-time.
- Faster access times via directly linking from secondary index entries to primary index locations.
We have also been investing in providing more processing power and supporting richer query capability through our Expressions capabilities. Expressions allows complex filters to be composed referencing both data and metadata so that exactly the data required – and no more – is provided in response to queries. This makes the data in Aerospike more valuable and we are seeing our customers process data and gain insights from that data in place rather than move it to other data stores for processing.
Expressions can be used to enhance data in place through multi-operations in conjunction with operations allowing more processing to be done local to the data. This is a powerful new tool for developers that maintains the hyper-scale transactional speeds and high throughput that Aerospike is known for.
Expressions allow for more powerful read/write capability, something we’ve observed that developers crave. So now they can have, for example, a function or a case statement that can do a virtual column. This makes Expressions much faster and easier than user-defined functions (UDFs), so developers can do much more compute on the server side.
Because of Aerospike performance at scale, we are often used in a shared services model, where one cluster meets the data needs for 10s to 100s of applications. In support of that, we have the notion of Sets that essentially allow for tagging a set of records for use by a given application. This also allows for versioning of data within a broader context. We have added auto-indexing of Sets to provide significantly enhanced performance in access records within a set where the total Namespace is very large.
In further support of the shared service model, we have added additional support for transactional rate limits by Set, which can be associated with users (thereby achieving rate limit capabilities. This capability was released in Aerospike Database version 5.6). This solves the noisy neighbor problem in allowing multiple applications to operate within a single cluster.
As with most of our releases we continue to evolve our support for enterprise security models, where as many know, security is not a destination but rather a journey. Aerospike has added support for Public Key Infrastructures (PKI) to manage users, roles, and credentials centrally. In addition, we’ve simplified key rotation for encryption at rest to make our data platform even more robust.
To learn more about our Aerospike 5.7 release, see our technical blog.