Abstract
We present KiWi, the first atomic KV-map to efficiently support simultaneous large scans and real-time access. The key to achieving this is treating scans as first class citizens and organizing the data structure around them. KiWi provides wait-free scans, whereas its put operations are lightweight and lock-free. It optimizes memory management jointly with data structure access. We implement KiWi and compare it to state-of-the-art solutions. Compared to other KV-maps providing atomic scans, KiWi performs either long scans or concurrent puts an order of magnitude faster. Its scans are twice as fast as non-atomic ones implemented via iterators in the Java skiplist.
Original language | English |
---|---|
Article number | 16 |
Journal | ACM Transactions on Parallel Computing |
Volume | 7 |
Issue number | 3 |
DOIs | |
State | Published - Aug 2020 |
Keywords
- Concurrent data structures
- key-value maps
All Science Journal Classification (ASJC) codes
- Software
- Modelling and Simulation
- Hardware and Architecture
- Computer Science Applications
- Computational Theory and Mathematics