← All episodes SALI: Fixing Concurrency Bottlenecks in Learned Indexes

SALI: Fixing Concurrency Bottlenecks in Learned Indexes

Sep 24, 2026
This episode examines SALI, a 2024 SIGMOD systems paper diagnosing why learned database indexes like ALEX and LIPP see throughput drop as thread counts rise, rather than scale with additional concurrency. The discussion traces the lineage from Google's 2018 Recursive Model Index through the buffer-based and model-based approaches that emerged to handle inserts, focusing on the shift-versus-chain tradeoff between ALEX's coarse-grained locking and LIPP's fine-grained, chain-based node design. The key finding is that fine-grained locking solves data contention but not statistics contention — shared counters tracking when a node needs reorganization become a cacheline-thrashing bottleneck under heavy concurrent writes. Listeners interested in database internals or concurrent data structures will find the breakdown of exactly where and why two well-regarded designs fail at scale particularly compelling, especially the setup for SALI's proposed fix using self-adapting nodes instead of shared bottleneck counters.
Sources:
1. SALI: A Scalable Adaptive Learned Index Framework based on Probability Models — Jiake Ge, Huanchen Zhang, Boyu Shi, Yuanhui Luo, Yunda Guo, Yunpeng Chai, Yuxing Chen, Anqun Pan, 2023
http://arxiv.org/abs/2308.15012
2. The Case for Learned Index Structures — Tim Kraska, Alex Beutel, Ed H. Chi, Jeffrey Dean, Neoklis Polyzotis, 2018
https://scholar.google.com/scholar?q=The+Case+for+Learned+Index+Structures
3. ALEX: An Updatable Adaptive Learned Index — Jialin Ding, Umar Farooq Minhas, Jia Yu, Chi Wang, Jaeyoung Do, Yinan Li, Hantian Zhang, Badrish Chandramouli, Johannes Gehrke, Donald Kossmann, David Lomet, Tim Kraska, 2020
https://scholar.google.com/scholar?q=ALEX%3A+An+Updatable+Adaptive+Learned+Index
4. Updatable Learned Index with Precise Positions (LIPP) — Jiacheng Wu, Yong Zhang, Shimin Chen, Jin Wang, Yu Chen, Chunxiao Xing, 2021
https://scholar.google.com/scholar?q=Updatable+Learned+Index+with+Precise+Positions+%28LIPP%29
5. XIndex: A Scalable Learned Index for Multicore Data Storage — Chuzhe Tang, Youyun Wang, Zhiyuan Dong, Gansen Hu, Zhaoguo Wang, Minjie Wang, Haibo Chen, 2020
https://scholar.google.com/scholar?q=XIndex%3A+A+Scalable+Learned+Index+for+Multicore+Data+Storage
6. Are Updatable Learned Indexes Ready? — Chaichon Wongkham, Baotong Lu, Chris Liu, Zhicong Zhong, Eric Lo, Tianzheng Wang, 2022
https://scholar.google.com/scholar?q=Are+Updatable+Learned+Indexes+Ready%3F
7. Adaptive Hybrid Indexes — Christoph Anneser, Andreas Kipf, Huanchen Zhang, Thomas Neumann, Alfons Kemper, 2022
https://scholar.google.com/scholar?q=Adaptive+Hybrid+Indexes
8. DILI: A Distribution-Driven Learned Index — Pengfei Li, Hua Lu, Rong Zhu, Bolin Ding, Long Yang, Gang Pan, 2023
https://scholar.google.com/scholar?q=DILI%3A+A+Distribution-Driven+Learned+Index
9. Updatable Learned Indexes Meet Disk-Resident DBMS: From Evaluations to Design Choices — Hai Lan, Zhifeng Bao, J. Shane Culpepper, Renata Borovica-Gajic, 2023
https://scholar.google.com/scholar?q=Updatable+Learned+Indexes+Meet+Disk-Resident+DBMS%3A+From+Evaluations+to+Design+Choices
Interactive Visualization: SALI: Fixing Concurrency Bottlenecks in Learned Indexes