2020
DOI: 10.1002/spe.2799
|View full text |Cite
|
Sign up to set email alerts
|

Robust and efficient memory management in Apache AsterixDB

Abstract: Traditional relational database systems handle data by dividing their memory into sections such as a buffer cache and working memory, assigning a memory budget to each section to efficiently manage a limited amount of overall memory. They also assign memory budgets to memory-intensive operators such as sorts and joins and control the allocation of memory to these operators; each memory-intensive operator attempts to maximize its memory usage to reduce disk I/O cost. Implementing such memory-intensive operators… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1

Citation Types

0
3
0

Year Published

2020
2020
2024
2024

Publication Types

Select...
5
1

Relationship

1
5

Authors

Journals

citations
Cited by 14 publications
(3 citation statements)
references
References 25 publications
0
3
0
Order By: Relevance
“…Prior to this work, efforts to systematically tune LSM trees assume that the workload information and the execution environment are accurately known. Under that assumption, the main focus on LSM tuning has been on deciding how to allocate the available main memory between Bloom filters and buffering [28,53,55], while often the size ratio and the merging strategy was also co-tuned [29]. Such design decisions are common across industry standard LSM-based engines such as Apache Cassandra [8], AsterixDB [6], RocksDB [72], and InfluxDB [51].…”
Section: Background On Lsm Treesmentioning
confidence: 99%
See 1 more Smart Citation
“…Prior to this work, efforts to systematically tune LSM trees assume that the workload information and the execution environment are accurately known. Under that assumption, the main focus on LSM tuning has been on deciding how to allocate the available main memory between Bloom filters and buffering [28,53,55], while often the size ratio and the merging strategy was also co-tuned [29]. Such design decisions are common across industry standard LSM-based engines such as Apache Cassandra [8], AsterixDB [6], RocksDB [72], and InfluxDB [51].…”
Section: Background On Lsm Treesmentioning
confidence: 99%
“…Given such knowledge, prior work optimizes for the memory allocation to Bloom filters across different levels, memory distribution between the buffers and the Bloom filters, and the choice of merging policies (i.e., leveling or tiering) [28,29]. Different optimization objectives have led to hybrid merging policies with more fine-grained tunings [30,31,46], optimized memory allocation strategies [16,53,55], variations of Bloom filters [59,90,91], new compaction routines [5,56,73,74,92], and exploitation of data characteristics [1,69,89].…”
Section: Introductionmentioning
confidence: 99%
“…However, such adaptivity is non-trivial due to several problems highlighted below. Existing LSM-tree implementations, such as RocksDB [2] and AsterixDB [12], instead use a static memory allocation scheme due to its simplicity while sacrificing efficiency.…”
Section: Introductionmentioning
confidence: 99%