English
Related papers

Related papers: Don't Persist All : Efficient Persistent Data Stru…

200 papers

Concurrent data structures are the data sharing side of parallel programming. Data structures give the means to the program to store data, but also provide operations to the program to access and manipulate these data. These operations are…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-02-13 Daniel Cederman , Anders Gidenstam , Phuong Ha , Håkan Sundell , Marina Papatriantafilou , Philippas Tsigas

Data management applications store their data using structured files in which data are usually sorted to serve indexing and queries. However, in-place insertions and removals of data are not naturally supported in a file's address space. To…

Operating Systems · Computer Science 2021-08-06 Chen Chen , Wenshao Zhong , Xingbo Wu

Log-Structured Merge (LSM) Trees provide a tiered data storage and retrieval paradigm that is attractive for write-optimized data systems. Maintaining an efficient buffer in memory and deferring updates past their initial write-time, the…

Databases · Computer Science 2018-09-11 Aron Szanto

We present the first learning-augmented data structure for implementing dictionaries with optimal consistency and robustness. Our data structure, named RobustSL, is a skip list augmented by predictions of access frequencies of elements in a…

Data Structures and Algorithms · Computer Science 2024-02-16 Ali Zeynali , Shahin Kamali , Mohammad Hajiesmaili

Byte-addressable persistent memories (PM) has finally made their way into production. An important and pressing problem that follows is how to deploy them in existing datacenters. One viable approach is to attach PM as self-contained…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-01-08 Shin-Yeh Tsai , Yiying Zhang

We study the problem of designing a \emph{resilient} data structure maintaining a tree under the Faulty-RAM model [Finocchi and Italiano, STOC'04] in which up to $\delta$ memory words can be corrupted by an adversary. Our data structure…

Data Structures and Algorithms · Computer Science 2021-09-21 Luciano Gualà , Stefano Leucci , Isabella Ziccardi

As data volumes continue to grow rapidly, traditional search algorithms, like the red-black tree and B+ Tree, face increasing challenges in performance, especially in big data scenarios with intensive storage access. This paper presents the…

Databases · Computer Science 2025-04-02 Songpeng Liu

The persistent programming systems of the 1980s offered a programming model that integrated computation and long-term storage. In these systems, reliable applications could be engineered without requiring the programmer to write translation…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-06-21 Alan Dearle , Graham Kirby , Stuart Norcross , Andrew McCarthy

Distributed Hash Tables offer a resilient lookup service for unstable distributed environments. Resilient data storage, however, requires additional data replication and maintenance algorithms. These algorithms can have an impact on both…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Matthew Leslie

Most cloud services and distributed applications rely on hashing algorithms that allow dynamic scaling of a robust and efficient hash table. Examples include AWS, Google Cloud and BitTorrent. Consistent and rendezvous hashing are algorithms…

Data Structures and Algorithms · Computer Science 2022-05-17 Mike Heddes , Igor Nunes , Tony Givargis , Alexandru Nicolau , Alex Veidenbaum

Performance analysis has always been an afterthought during the application development process, focusing on application correctness first. The learning curve of the existing static and dynamic analysis tools are steep, which requires…

Machine Learning · Computer Science 2021-04-23 Nathan Pinnow , Tarek Ramadan , Tanzima Z. Islam , Chase Phelps , Jayaraman J. Thiagarajan

This paper presents the tracking approach for deriving detectably recoverable (and thus also durable) implementations of many widely-used concurrent data structures. Such data structures, satisfying detectable recovery, are appealing for…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-07-29 Hagit Attiya , Ohad Ben-Baruch , Panagiota Fatourou , Danny Hendler , Eleftherios Kosmas

The tremendous expanse of search engines, dictionary and thesaurus storage, and other text mining applications, combined with the popularity of readily available scanning devices and optical character recognition tools, has necessitated…

Databases · Computer Science 2012-07-04 Sourav Dutta , Arnab Bhattacharya

Persistent memory (PMEM) devices present an opportunity to retain the flexibility of main memory data structures and algorithms, but augment them with reliability and persistence. The challenge in doing this is to combine replication (for…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-05-17 Pradeep Fernando , Daniel Zahka , Ada Gavrilovska , Amitabha Roy , Subramanya R. Dulloor

Concurrent hash tables are one of the most important concurrent data structures with numerous applications. Since hash table accesses can dominate the execution time of the overall application, we need implementations that achieve good…

Data Structures and Algorithms · Computer Science 2016-09-07 Tobias Maier , Peter Sanders , Roman Dementiev

Many emerging Web services, such as email, photo sharing, and web site archives, need to preserve large amounts of quickly-accessible data indefinitely into the future. In this paper, we make the case that these applications' demands on…

Digital Libraries · Computer Science 2007-05-23 Mary Baker , Mehul Shah , David S. H. Rosenthal , Mema Roussopoulos , Petros Maniatis , TJ Giuli , Prashanth Bungale

High capacity and scalable memory systems play a vital role in enabling our desktops, smartphones, and pervasive technologies like Internet of Things (IoT). Unfortunately, memory systems are becoming increasingly prone to faults. This is…

Hardware Architecture · Computer Science 2019-09-04 Prashant J. Nair

There has been a significant amount of work in the literature proposing semantic relaxation of concurrent data structures for improving scalability and performance. By relaxing the semantics of a data structure, a bigger design space, that…

Data Structures and Algorithms · Computer Science 2025-11-11 Adones Rukundo , Aras Atalar , Philippas Tsigas

The design and implementation of efficient concurrent data structures have seen significant attention. However, most of this work has focused on concurrent data structures providing good \emph{worst-case} guarantees. In real workloads,…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-08-04 Vitaly Aksenov , Dan Alistarh , Alexandra Drozdova , Amirkeivan Mohtashami

This paper presents a comprehensive analysis of performance trade offs between implementation choices for transaction runtime systems on persistent memory. We compare three implementations of transaction runtimes: undo logging, redo…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-04-04 Virendra Marathe , Achin Mishra , Amee Trivedi , Yihe Huang , Faisal Zaghloul , Sanidhya Kashyap , Margo Seltzer , Tim Harris , Steve Byan , Bill Bridge , Dave Dice