TY - GEN
T1 - Kiwi
T2 - 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2017
AU - Basin, Dmitry
AU - Bortnikov, Edward
AU - Braginsky, Anastasia
AU - Golan-Gueta, Guy
AU - Hillel, Eshcar
AU - Keidar, Idit
AU - Sulamy, Moshe
N1 - Publisher Copyright: © 2017 ACM.
PY - 2017/1/26
Y1 - 2017/1/26
N2 - Modern big data processing platforms employ huge inmemory key-value (KV) maps. Their applications simultaneously drive high-rate data ingestion and large-scale analytics. These two scenarios expect KV-map implementations that scale well with both real-time updates and large atomic scans triggered by range queries. 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.
AB - Modern big data processing platforms employ huge inmemory key-value (KV) maps. Their applications simultaneously drive high-rate data ingestion and large-scale analytics. These two scenarios expect KV-map implementations that scale well with both real-time updates and large atomic scans triggered by range queries. 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.
UR - https://www.scopus.com/pages/publications/85014506237
U2 - 10.1145/3018743.3018761
DO - 10.1145/3018743.3018761
M3 - Conference contribution
T3 - Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP
SP - 357
EP - 369
BT - PPoPP 2017 - Proceedings of the 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
PB - Association for Computing Machinery
Y2 - 4 February 2017 through 8 February 2017
ER -