Aerospike Data Modeling Part 5: Bucketing

Aerospike Engineering Blog, Technology, Data Modeling

Aerospike has a maximum record size, which is not an uncommon restriction in a database. When using storage, the entire record is located consecutively, creating predictability as well as performance. Through embedding, we can model and store large, complex objects. Ultimately, as objects get larger, these are restricted by maximum record size as well as …

Aerospike Data Modeling Part 4: Inventory Control

Aerospike Engineering Blog, Technology, Data Modeling

Have you ever tried to buy a concert ticket only to be told as you’re checking out that a ticket at the price you selected is no longer available? And what about trying to book flights? Airline reservation systems are notorious for returning fares that are no longer available. But what if these systems stopped …

Aerospike Data Modeling Part 3: State Machines and Queues

Aerospike Engineering Blog, Technology, Data Modeling

A common data pattern revolves around managing states and ensuring consistent transitions between states. This could be anything from a fulfillment process to workflows or other systems that require maintaining state. In this section, we will cover the concept of state machines using queues. Provisioning Let’s consider a simple provisioning system (see Figure 1) in …

Aerospike Data Modeling Part 2: The Faceting Pattern

Aerospike Engineering Blog, Technology, Data Modeling

Faceting is a pattern that can be applied to many domain problems. In this context, faceting presents summaries of important metrics and trends and aggregations of key quantitative and qualitative information sources. Applying faceting techniques to your operational datastore can help you make faster, more informed business decisions than if you were to use a …

Aerospike Data Modeling Part 1: Embedding, Linking, and Denormalization

Aerospike Engineering Blog, Technology, Data Modeling

The first section reviews the basic data modeling concepts of encapsulation and embedding, linking, and denormalization. These concepts will be built upon throughout this article.  Encapsulation and Embedding   The Aerospike record defines the transactional boundary. But unlike an RDBMS record, an Aerospike record can describe a complex object and its relationship. Figure 1: Simple …

Modeling Your Data with Aerospike

Aerospike Engineering Blog, Technology, Data Modeling

Data modeling is often the first step in database design and usually involves a progression from conceptual model to logical model to physical schema. But, as Aerospike is a key-value store, the way you think about, model, and access your data is inherently different. If you have experience with entity-relationship modeling, normalization, and SQL schema …