Jump to ratings and reviews
Rate this book

Data Structures for Data-Intensive Applications: Tradeoffs and Design Guidelines (Foundations and Trends

Rate this book
Data structures are the means by which software programs store and retrieve data. This monograph focuses on key-value data structures, which are widely used for data-intensive applications thanks to the versatility of the key-value data model. Key-value data structures constitute the core of any data-driven system. They provide the means to store, search, and modify data residing at various levels of the storage and memory hierarchy. Designing efficient data structures for given workloads has long been a focus of research and practice in both academia and industry. Data Structures for Data-Intensive Applications explains the space of data structure design choices, how to select the appropriate data structure depending on the goals and workload of an application at hand, and how the ever-evolving hardware and data properties require innovations in data structure design. The overarching goal is to help the reader both select the best existing data structures and design and build new ones.

182 pages, Paperback

Published July 31, 2023

1 person is currently reading
11 people want to read

About the author

Manos Athanassoulis

1 book1 follower

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
0 (0%)
4 stars
2 (50%)
3 stars
2 (50%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 of 1 review
Profile Image for Bugzmanov.
238 reviews103 followers
February 14, 2024
Not really a book, more of a long white paper: very dense and dry with enormous amount of references.
As a white paper it is very approachable, but in order to appreciate it fully you'll need to follow the references as the "book" doesn't spent any time summarizing them.
What I liked:
- PyRUMID (Point queries, Range queries, Updates, Memory, Inserts, and Deletes) model to describe workload. It's a useful improvement over more popular RUM. (chapter 2)
- solid overview of design space dimensions and forces affecting design. This is the core of the paper.
(chapter 2)

The chapter on mapping workloads to data structures (chapter 3) worth skimming, but don't expect to see some revelation. This is pretty much old story of B+ trees vs LSM and how different modifications can compensate for workload patterns that are antagonistic to the original design of above mentioned data structures.

Everything else felt a bit like a filler to me. But it is relatively short.
Solid 3 stars
Displaying 1 of 1 review

Can't find what you're looking for?

Get help and learn more about the design.