skip to main content
research-article

The Concurrent Learned Indexes for Multicore Data Storage

Authors Info & Claims
Published:29 January 2022Publication History
Skip Abstract Section

Abstract

We present XIndex, which is a concurrent index library and designed for fast queries. It includes a concurrent ordered index (XIndex-R) and a concurrent hash index (XIndex-H). Similar to a recent proposal of the learned index, the indexes in XIndex use learned models to optimize index efficiency. Compared with the learned index, for the ordered index, XIndex-R is able to handle concurrent writes effectively and adapts its structure according to runtime workload characteristics. For the hash index, XIndex-H is able to avoid the resize operation blocking concurrent writes. Furthermore, the indexes in XIndex can index string keys much more efficiently than the learned index. We demonstrate the advantages of XIndex with YCSB, TPC-C (KV), which is a TPC-C-inspired benchmark for key-value stores, and micro-benchmarks. Compared with ordered indexes of Masstree and Wormhole, XIndex-R achieves up to 3.2× and 4.4× performance improvement on a 24-core machine. Compared with hash indexes of Intel TBB HashMap, XIndex-H achieves up to 3.1× speedup. The performance further improves by 91% after adding the optimizations on indexing string keys. The library is open-sourced.1

REFERENCES

  1. [1] Balmau Oana, Didona Diego, Guerraoui Rachid, Zwaenepoel Willy, Yuan Huapeng, Arora Aashray, Gupta Karan, and Konka Pavan. 2017. TRIAD: Creating synergies between memory, disk and log in log structured key-value stores. In 2017 USENIX Annual Technical Conference, USENIX ATC 2017, Santa Clara, CA, USA, July 12-14, 2017, Silva Dilma Da and Ford Bryan (Eds.). USENIX Association, 363375. https://www.usenix.org/conference/atc17/technical-sessions/presentation/balmau. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. [2] Bayer Rudolf and Schkolnick Mario. 1977. Concurrency of operations on B-trees. Acta Informatica 9 (1977), 121. DOI: DOI: https://doi.org/10.1007/BF00263762 Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. [3] Bingmann Timo. 2013. STX B+ Tree C++ Template Classes. https://panthema.net/2007/stx-btree/. (2013).Google ScholarGoogle Scholar
  4. [4] Binna Robert, Zangerle Eva, Pichl Martin, Specht Günther, and Leis Viktor. 2018. HOT: A height optimized trie index for main-memory database systems. In Proceedings of the 2018 International Conference on Management of Data (SIGMOD’18). Association for Computing Machinery, New York, NY, USA, 521534. DOI: DOI: https://doi.org/10.1145/3183713.3196896 Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. [5] Bloom Burton H.. 1970. Space/time trade-offs in hash coding with allowable errors. Commun. ACM 13, 7 (July 1970), 422426. DOI: DOI: https://doi.org/10.1145/362686.362692 Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. [6] Bohannon Philip, Mcllroy Peter, and Rastogi Rajeev. 2001. Main-memory index structures with fixed-size partial keys. In Proceedings of the 2001 ACM SIGMOD International Conference on Management of Data (SIGMOD’01). Association for Computing Machinery, New York, NY, USA, 163174. DOI: DOI: https://doi.org/10.1145/375663.375681 Google ScholarGoogle ScholarCross RefCross Ref
  7. [7] Bonomi Flavio, Mitzenmacher Michael, Panigrahy Rina, Singh Sushil, and Varghese George. 2006. An improved construction for counting bloom filters. In Algorithms - ESA 2006, 14th Annual European Symposium, Zurich, Switzerland, September 11-13, 2006, Proceedings (Lecture Notes in Computer Science), Azar Yossi and Erlebach Thomas (Eds.), Vol. 4168. Springer, 684695. DOI: DOI: https://doi.org/10.1007/11841036_61 Google ScholarGoogle ScholarCross RefCross Ref
  8. [8] Bronson Nathan G., Casper Jared, Chafi Hassan, and Olukotun Kunle. 2010. A practical concurrent binary search tree. In Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP’10). Association for Computing Machinery, New York, NY, USA, 257268. DOI: DOI: https://doi.org/10.1145/1693453.1693488 Google ScholarGoogle ScholarCross RefCross Ref
  9. [9] Bronson Nathan G., Casper Jared, Chafi Hassan, and Olukotun Kunle. 2010. A practical concurrent binary search tree. SIGPLAN Not. 45, 5 (Jan. 2010), 257268. DOI: DOI: https://doi.org/10.1145/1837853.1693488 Google ScholarGoogle ScholarCross RefCross Ref
  10. [10] Cha Sang K., Hwang Sangyong, Kim Kihong, and Kwon Keunjoo. 2001. Cache-conscious concurrency control of main-memory indexes on shared-memory multiprocessor systems. In Proceedings of the 27th International Conference on Very Large Data Bases (VLDB’01). Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 181190. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. [11] Chazelle Bernard and Guibas Leonidas J.. 1986. Fractional cascading: I. A data structuring technique. Algorithmica 1, 2 (1986), 133162. DOI: DOI: https://doi.org/10.1007/BF01840440Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. [12] Chazelle Bernard and Guibas Leonidas J.. 1986. Fractional cascading: II. Applications. Algorithmica 1, 2 (1986), 163191. DOI: DOI: https://doi.org/10.1007/BF01840441Google ScholarGoogle ScholarCross RefCross Ref
  13. [13] Chen Zhangyu, Huang Yu, Ding Bo, and Zuo Pengfei. 2020. Lock-free concurrent level hashing for persistent memory. In 2020 USENIX Annual Technical Conference, USENIX ATC 2020, July 15-17, 2020, Gavrilovska Ada and Zadok Erez (Eds.). USENIX Association, 799812. https://www.usenix.org/conference/atc20/presentation/chen. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. [14] Clements Austin T., Kaashoek M. Frans, and Zeldovich Nickolai. 2012. Scalable address spaces using RCU balanced trees. In Proceedings of the Seventeenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XVII). Association for Computing Machinery, New York, NY, USA, 199210. DOI: DOI: https://doi.org/10.1145/2150976.2150998 Google ScholarGoogle ScholarCross RefCross Ref
  15. [15] Clements Austin T., Kaashoek M. Frans, and Zeldovich Nickolai. 2012. Scalable address spaces using RCU balanced trees. SIGPLAN Not. 47, 4 (March 2012), 199210. DOI: DOI: https://doi.org/10.1145/2248487.2150998 Google ScholarGoogle ScholarCross RefCross Ref
  16. [16] Dai Yifan, Xu Yien, Ganesan Aishwarya, Alagappan Ramnatthan, Kroth Brian, Arpaci-Dusseau Andrea C., and Arpaci-Dusseau Remzi H.. 2020. From WiscKey to bourbon: A learned index for log-structured merge trees. In 14th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2020, Virtual Event, November 4-6, 2020. USENIX Association, 155171. https://www.usenix.org/conference/osdi20/presentation/dai. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. [17] DeBrabant Justin, Pavlo Andrew, Tu Stephen, Stonebraker Michael, and Zdonik Stan. 2013. Anti-caching: A new approach to database management system architecture. Proc. VLDB Endow. 6, 14 (Sept. 2013), 19421953. DOI: DOI: https://doi.org/10.14778/2556549.2556575 Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. [18] Diaconu Cristian, Freedman Craig, Ismert Erik, Larson Per-Ake, Mittal Pravin, Stonecipher Ryan, Verma Nitin, and Zwilling Mike. 2013. Hekaton: SQL server’s memory-optimized OLTP engine. In Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data (SIGMOD’13). Association for Computing Machinery, New York, NY, USA, 12431254. DOI: DOI: https://doi.org/10.1145/2463676.2463710 Google ScholarGoogle ScholarCross RefCross Ref
  19. [19] Ding Jialin, Minhas Umar Farooq, Yu Jia, Wang Chi, Do Jaeyoung, Li Yinan, Zhang Hantian, Chandramouli Badrish, Gehrke Johannes, Kossmann Donald, Lomet David, and Kraska Tim. 2020. ALEX: An updatable adaptive learned index. In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data (SIGMOD’20). Association for Computing Machinery, New York, NY, USA, 969984. DOI: DOI: https://doi.org/10.1145/3318464.3389711 Google ScholarGoogle ScholarCross RefCross Ref
  20. [20] Easton William B.. 1971. Process synchronization without long-term interlock. In Proceedings of the Third ACM Symposium on Operating Systems Principles (SOSP’71). Association for Computing Machinery, New York, NY, USA, 95100. DOI: DOI: https://doi.org/10.1145/800212.806505 Google ScholarGoogle ScholarCross RefCross Ref
  21. [21] Fan Li, Cao Pei, Almeida Jussara, and Broder Andrei Z.. 1998. Summary cache: A scalable wide-area web cache sharing protocol. In Proceedings of the ACM SIGCOMM’98 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM’98). Association for Computing Machinery, New York, NY, USA, 254265. DOI: DOI: https://doi.org/10.1145/285237.285287 Google ScholarGoogle ScholarCross RefCross Ref
  22. [22] Ferragina Paolo and Vinciguerra Giorgio. 2020. The PGM-index: A fully-dynamic compressed learned index with provable worst-case bounds. Proc. VLDB Endow. 13, 8 (April 2020), 11621175. DOI: DOI: https://doi.org/10.14778/3389133.3389135 Google ScholarGoogle ScholarCross RefCross Ref
  23. [23] Foundation OpenStreetMap. 2019. OpenStreetMap on AWS. https://aws.amazon.com/public-datasets/osm. Accessed: 2019-4-24.Google ScholarGoogle Scholar
  24. [24] Fredkin Edward. 1960. Trie memory. Commun. ACM 3, 9 (Sept. 1960), 490499. DOI: DOI: https://doi.org/10.1145/367390.367400 Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. [25] Galakatos Alex, Markovitch Michael, Binnig Carsten, Fonseca Rodrigo, and Kraska Tim. 2019. FITing-tree: A data-aware index structure. In Proceedings of the 2019 International Conference on Management of Data (SIGMOD’19). Association for Computing Machinery, New York, NY, USA, 11891206. DOI: DOI: https://doi.org/10.1145/3299869.3319860 Google ScholarGoogle ScholarCross RefCross Ref
  26. [26] Graefe Goetz, Kimura Hideaki, and Kuno Harumi. 2012. Foster B-trees. ACM Trans. Database Syst. 37, 3, Article 17 (Sept. 2012), 29 pages. DOI: DOI: https://doi.org/10.1145/2338626.2338630 Google ScholarGoogle ScholarCross RefCross Ref
  27. [27] Grossi Roberto and Ottaviano Giuseppe. 2015. Fast compressed tries through path decompositions. ACM J. Exp. Algorithmics 19, Article 3.4 (Jan. 2015), 20 pages. DOI: DOI: https://doi.org/10.1145/2656332 Google ScholarGoogle ScholarCross RefCross Ref
  28. [28] Herlihy Maurice P. and Wing Jeannette M.. 1990. Linearizability: A correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12, 3 (July 1990), 463492. DOI: DOI: https://doi.org/10.1145/78969.78972 Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. [29] Idreos Stratos, Zoumpatianos Kostas, Athanassoulis Manos, Dayan Niv, Hentschel Brian, Kester Michael S., Guo Demi, Maas Lukas M., Qin Wilson, Wasay Abdul, and Sun Yiyou. 2018. The periodic table of data structures. IEEE Data Eng. Bull. 41, 3 (2018), 6475. http://sites.computer.org/debull/A18sept/p64.pdf.Google ScholarGoogle Scholar
  30. [30] Idreos Stratos, Zoumpatianos Kostas, Chatterjee Subarna, Qin Wilson, Wasay Abdul, Hentschel Brian, Kester Mike S., Dayan Niv, Guo Demi, Kang Minseo, and Sun Yiyou. 2019. Learning data structure alchemy. IEEE Data Eng. Bull. 42, 2 (2019), 4758. http://sites.computer.org/debull/A19june/p47.pdf.Google ScholarGoogle Scholar
  31. [31] Idreos Stratos, Zoumpatianos Kostas, Hentschel Brian, Kester Michael S., and Guo Demi. 2018. The data calculator: Data structure design and cost synthesis from first principles and learned cost models. In Proceedings of the 2018 International Conference on Management of Data (SIGMOD’18). Association for Computing Machinery, New York, NY, USA, 535550. DOI: DOI: https://doi.org/10.1145/3183713.3199671 Google ScholarGoogle ScholarCross RefCross Ref
  32. [32] Kannan Sudarsun, Bhat Nitish, Gavrilovska Ada, Arpaci-Dusseau Andrea C., and Arpaci-Dusseau Remzi H.. 2018. Redesigning LSMs for nonvolatile memory with NoveLSM. In 2018 USENIX Annual Technical Conference, USENIX ATC 2018, Boston, MA, USA, July 11-13, 2018, Gunawi Haryadi S. and Reed Benjamin (Eds.). USENIX Association, 9931005. https://www.usenix.org/conference/atc18/presentation/kannan. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. [33] Kipf Andreas, Marcus Ryan, Renen Alexander van, Stoian Mihail, Kemper Alfons, Kraska Tim, and Neumann Thomas. 2020. RadixSpline: A single-pass learned index. In Proceedings of the Third International Workshop on Exploiting Artificial Intelligence Techniques for Data Management (aiDM’20). Association for Computing Machinery, New York, NY, USA, Article 5, 5 pages. DOI: DOI: https://doi.org/10.1145/3401071.3401659 Google ScholarGoogle ScholarCross RefCross Ref
  34. [34] Kraska Tim, Alizadeh Mohammad, Beutel Alex, Chi Ed H., Kristo Ani, Leclerc Guillaume, Madden Samuel, Mao Hongzi, and Nathan Vikram. 2019. SageDB: A learned database system. In CIDR 2019, 9th Biennial Conference on Innovative Data Systems Research, Asilomar, CA, USA, January 13-16, 2019, Online Proceedings. www.cidrdb.org. http://cidrdb.org/cidr2019/papers/p117-kraska-cidr19.pdf.Google ScholarGoogle Scholar
  35. [35] Kraska Tim, Beutel Alex, Chi Ed H., Dean Jeffrey, and Polyzotis Neoklis. 2018. The case for learned index structures. In Proceedings of the 2018 International Conference on Management of Data (SIGMOD’18). Association for Computing Machinery, New York, NY, USA, 489504. DOI: DOI: https://doi.org/10.1145/3183713.3196909 Google ScholarGoogle ScholarCross RefCross Ref
  36. [36] Kung H. T. and Robinson John T.. 1981. On optimistic methods for concurrency control. ACM Trans. Database Syst. 6, 2 (June 1981), 213226. DOI: DOI: https://doi.org/10.1145/319566.319567 Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. [37] Lamport Leslie. 1977. Concurrent reading and writing. Commun. ACM 20, 11 (Nov. 1977), 806811. DOI: DOI: https://doi.org/10.1145/359863.359878 Google ScholarGoogle ScholarCross RefCross Ref
  38. [38] Leis Viktor, Kemper Alfons, and Neumann Thomas. 2013. The adaptive radix tree: ARTful indexing for main-memory databases. In Proceedings of the 2013 IEEE 29th International Conference on Data Engineering (ICDE’13). IEEE Computer Society, 3849. DOI: DOI: https://doi.org/10.1109/ICDE.2013.6544812 Google ScholarGoogle ScholarCross RefCross Ref
  39. [39] Lepers Baptiste, Balmau Oana, Gupta Karan, and Zwaenepoel Willy. 2019. KVell: The design and implementation of a fast persistent key-value store. In Proceedings of the 27th ACM Symposium on Operating Systems Principles (SOSP’19). Association for Computing Machinery, New York, NY, USA, 447461. DOI: DOI: https://doi.org/10.1145/3341301.3359628 Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. [40] Leskovec Jure, Backstrom Lars, and Kleinberg Jon. 2009. Meme-tracking and the dynamics of the news cycle. In Proceedings of the 15th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD’09). Association for Computing Machinery, New York, NY, USA, 497506. DOI: DOI: https://doi.org/10.1145/1557019.1557077 Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. [41] Levandoski Justin J., Lomet David B., and Sengupta Sudipta. 2013. The Bw-tree: A B-tree for new hardware platforms. In 29th IEEE International Conference on Data Engineering, ICDE 2013, Brisbane, Australia, April 8-12, 2013, Jensen Christian S., Jermaine Christopher M., and Zhou Xiaofang (Eds.). IEEE Computer Society, 302313. DOI: DOI: https://doi.org/10.1109/ICDE.2013.6544834 Google ScholarGoogle ScholarCross RefCross Ref
  42. [42] Li Pengfei, Hua Yu, Zuo Pengfei, and Jia Jingnan. 2019. A scalable learned index scheme in storage systems. CoRR abs/1905.06256 (2019). arXiv:1905.06256 http://arxiv.org/abs/1905.06256.Google ScholarGoogle Scholar
  43. [43] Li Pengfei, Lu Hua, Zheng Qian, Yang Long, and Pan Gang. 2020. LISA: A learned index structure for spatial data. In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data (SIGMOD’20). Association for Computing Machinery, New York, NY, USA, 21192133. DOI: DOI: https://doi.org/10.1145/3318464.3389703 Google ScholarGoogle ScholarCross RefCross Ref
  44. [44] Lu Lanyue, Pillai Thanumalayan Sankaranarayana, Arpaci-Dusseau Andrea C., and Arpaci-Dusseau Remzi H.. 2016. WiscKey: Separating keys from values in SSD-conscious storage. In 14th USENIX Conference on File and Storage Technologies, FAST 2016, Santa Clara, CA, USA, February 22-25, 2016, Brown Angela Demke and Popovici Florentina I. (Eds.). USENIX Association, 133148. https://www.usenix.org/conference/fast16/technical-sessions/presentation/lu. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. [45] Mao Yandong, Kohler Eddie, and Morris Robert Tappan. 2012. Cache craftiness for fast multicore key-value storage. In Proceedings of the 7th ACM European Conference on Computer Systems (EuroSys’12). Association for Computing Machinery, New York, NY, USA, 183196. DOI: DOI: https://doi.org/10.1145/2168836.2168855 Google ScholarGoogle ScholarCross RefCross Ref
  46. [46] Mckenney Paul and Slingwine John. 1998. Read-copy update: Using execution history to solve concurrency problems. In Parallel and Distributed Computing and Systems. 509518.Google ScholarGoogle Scholar
  47. [47] Mohan C., Haderle Don, Lindsay Bruce, Pirahesh Hamid, and Schwarz Peter. 1992. ARIES: A transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM Trans. Database Syst. 17, 1 (March 1992), 94162. DOI: DOI: https://doi.org/10.1145/128765.128770 Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. [48] Nathan Vikram, Ding Jialin, Alizadeh Mohammad, and Kraska Tim. 2020. Learning multi-dimensional indexes. In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data (SIGMOD’20). Association for Computing Machinery, New York, NY, USA, 9851000. DOI: DOI: https://doi.org/10.1145/3318464.3380579 Google ScholarGoogle ScholarCross RefCross Ref
  49. [49] O’Neil Patrick E., Cheng Edward, Gawlick Dieter, and O’Neil Elizabeth J.. 1996. The log-structured merge-tree (LSM-Tree). Acta Informatica 33, 4 (1996), 351385. DOI: DOI: https://doi.org/10.1007/s002360050048 Google ScholarGoogle ScholarCross RefCross Ref
  50. [50] Papagiannis Anastasios, Saloustros Giorgos, González-Férez Pilar, and Bilas Angelos. 2018. An efficient memory-mapped key-value store for flash storage. In Proceedings of the ACM Symposium on Cloud Computing (SoCC’18). Association for Computing Machinery, New York, NY, USA, 490502. DOI: DOI: https://doi.org/10.1145/3267809.3267824 Google ScholarGoogle ScholarCross RefCross Ref
  51. [51] Pheatt Chuck. 2008. Intel® threading building blocks. Journal of Computing Sciences in Colleges 23, 4 (2008), 298298. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. [52] Putze Felix, Sanders Peter, and Singler Johannes. 2007. Cache-, hash- and space-efficient bloom filters. In Experimental Algorithms, 6th International Workshop, WEA 2007, Rome, Italy, June 6-8, 2007, Proceedings (Lecture Notes in Computer Science), Demetrescu Camil (Ed.), Vol. 4525. Springer, 108121. DOI: DOI: https://doi.org/10.1007/978-3-540-72845-0_9 Google ScholarGoogle ScholarCross RefCross Ref
  53. [53] Schnaitter Karl, Abiteboul Serge, Milo Tova, and Polyzotis Neoklis. 2007. On-line index selection for shifting workloads. In Proceedings of the 23rd International Conference on Data Engineering Workshops, ICDE 2007, 15-20 April 2007, Istanbul, Turkey. IEEE Computer Society, 459468. DOI: DOI: https://doi.org/10.1109/ICDEW.2007.4401029 Google ScholarGoogle ScholarCross RefCross Ref
  54. [54] Sears Russell and Ramakrishnan Raghu. 2012. BLSM: A general purpose log structured merge tree. In Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data (SIGMOD’12). Association for Computing Machinery, New York, NY, USA, 217228. DOI: DOI: https://doi.org/10.1145/2213836.2213862 Google ScholarGoogle ScholarCross RefCross Ref
  55. [55] Shalev Ori and Shavit Nir. 2006. Split-ordered lists: Lock-free extensible hash tables. J. ACM 53, 3 (May 2006), 379405. DOI: DOI: https://doi.org/10.1145/1147954.1147958 Google ScholarGoogle ScholarCross RefCross Ref
  56. [56] Tu Stephen, Zheng Wenting, Kohler Eddie, Liskov Barbara, and Madden Samuel. 2013. Speedy transactions in multicore in-memory databases. In Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles (SOSP’13). Association for Computing Machinery, New York, NY, USA, 1832. DOI: DOI: https://doi.org/10.1145/2517349.2522713 Google ScholarGoogle ScholarCross RefCross Ref
  57. [57] Wang Peng, Sun Guangyu, Jiang Song, Ouyang Jian, Lin Shiding, Zhang Chen, and Cong Jason. 2014. An efficient design and implementation of LSM-tree based key-value store on open-channel SSD. In Proceedings of the Ninth European Conference on Computer Systems (EuroSys’14). Association for Computing Machinery, New York, NY, USA, Article 16, 14 pages. DOI: DOI: https://doi.org/10.1145/2592798.2592804 Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. [58] Wu Xingbo, Ni Fan, and Jiang Song. 2019. Wormhole: A fast ordered index for in-memory data management. In Proceedings of the Fourteenth EuroSys Conference 2019 (EuroSys’19). Association for Computing Machinery, New York, NY, USA, Article 18, 16 pages. DOI: DOI: https://doi.org/10.1145/3302424.3303955 Google ScholarGoogle ScholarCross RefCross Ref
  59. [59] Yao Ting, Zhang Yiwen, Wan Jiguang, Cui Qiu, Tang Liu, Jiang Hong, Xie Changsheng, and He Xubin. 2020. MatrixKV: Reducing write stalls and write amplification in LSM-tree based KV stores with matrix container in NVM. In 2020 USENIX Annual Technical Conference, USENIX ATC 2020, July 15-17, 2020, Gavrilovska Ada and Zadok Erez (Eds.). USENIX Association, 1731. https://www.usenix.org/conference/atc20/presentation/yao. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. [60] Zhang Huanchen, Andersen David G., Pavlo Andrew, Kaminsky Michael, Ma Lin, and Shen Rui. 2016. Reducing the storage overhead of main-memory OLTP databases with hybrid indexes. In Proceedings of the 2016 International Conference on Management of Data (SIGMOD’16). Association for Computing Machinery, New York, NY, USA, 15671581. DOI: DOI: https://doi.org/10.1145/2882903.2915222 Google ScholarGoogle ScholarCross RefCross Ref
  61. [61] Zhang Huanchen, Lim Hyeontaek, Leis Viktor, Andersen David G., Kaminsky Michael, Keeton Kimberly, and Pavlo Andrew. 2018. SuRF: Practical range query filtering with fast succinct tries. In Proceedings of the 2018 International Conference on Management of Data (SIGMOD’18). Association for Computing Machinery, New York, NY, USA, 323336. DOI: DOI: https://doi.org/10.1145/3183713.3196931 Google ScholarGoogle ScholarCross RefCross Ref
  62. [62] Zheng Wenting, Tu Stephen, Kohler Eddie, and Liskov Barbara. 2014. Fast databases with fast durability and recovery through multicore parallelism. In 11th USENIX Symposium on Operating Systems Design and Implementation, OSDI’14, Broomfield, CO, USA, October 6-8, 2014, Flinn Jason and Levy Hank (Eds.). USENIX Association, 465477. https://www.usenix.org/conference/osdi14/technical-sessions/presentation/zheng_wenting.Google ScholarGoogle Scholar

Index Terms

  1. The Concurrent Learned Indexes for Multicore Data Storage

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Transactions on Storage
        ACM Transactions on Storage  Volume 18, Issue 1
        February 2022
        245 pages
        ISSN:1553-3077
        EISSN:1553-3093
        DOI:10.1145/3512348
        • Editor:
        • Sam H. Noh
        Issue’s Table of Contents

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 29 January 2022
        • Accepted: 1 July 2021
        • Revised: 1 March 2021
        • Received: 1 August 2020
        Published in tos Volume 18, Issue 1

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
        • Refereed

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Full Text

      View this article in Full Text.

      View Full Text

      HTML Format

      View this article in HTML Format .

      View HTML Format
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!