It Takes Two: Instrumenting the Interaction between In-Memory Databases and Solid-State Drives

Abstract

In-memory databases rely on non-volatile storage devices for services such as durability and recovery. SSDs can provide the high-performance these services require. When performance problems occur, however, SSDs offer no mechanism to help analyze them. The only alternative is to instrument the database side of the problem and conjecture about what might be the cause of performance degradation. In this paper, we show that SSDs can in fact produce performance profiling information. We extend the Cosmos+OpenSSD, a full-edged SSD with open-source firmware, to track performance information on a per-IO-request granularity. We use such information, for instance, to analyze the interaction between a modern transaction log and checkpoint workloads, offering explanations to problems that were quite obscure before. We believe that an SSD providing such level of instrumentation is an essential tool towards co-designing a new class of high-performance storage/database stack

    Similar works

    Full text

    thumbnail-image

    Available Versions