2013 · 317 citations · 22 references
ComputingComputer EngineeringComputer ScienceComputer ArchitectureData ManagementStorage SystemsCachingData Storage SystemsMemory HierarchyMemory Hierarchy DesignMemory Hierarchy OptimizationStorage ManagementB-treesCaching MechanismsFlash Memory StorageHierarchical Memory ArchitectureHigh PerformanceLog-structured StorageMain Memory OrganizationMemory Hierarchy Algorithms
The emergence of new hardware and platforms has led to reconsideration of how data management systems are designed. However, certain basic functions such as key indexed access to records remain essential. While we exploit the common architectural layering of prior systems, we make radically new design decisions about each layer. Our new form of B-tree, called the Bw-tree achieves its very high performance via a latch-free approach that effectively exploits the processor caches of modern multi-core chips. Our storage manager uses a unique form of log structuring that blurs the distinction between a page and a record store and works well with flash storage. This paper describes the architecture and algorithms for the Bw-tree, focusing on the main memory aspects. The paper includes results of our experiments that demonstrate that this fresh approach produces outstanding performance.
22
Skip lists: a probabilistic alternative to balanced trees
William Pugh · Communications of the ACM · 1990 · 1.2K citations · Full text