Sale!

Database Internals: A Deep Dive into How Distributed Data Systems Work

Add your review

Original price was: $65.99.Current price is: $36.33.

Original price was: $65.99.Current price is: $36.33.

Sale!

Note: Prices may fluctuate as sellers adjust them regularly. You'll see the latest price at final checkout.
Add to wishlistAdded to wishlistRemoved from wishlist 0
Add to compare


When it comes to choosing, using, and maintaining a database, understanding its internals is essential. But with so many distributed databases and tools available today, it’s often difficult to understand what each one offers and how they differ. With this practical guide, Alex Petrov guides developers through the concepts behind modern database and storage engine internals.

Throughout the book, you’ll explore relevant material gleaned from numerous books, papers, blog posts, and the source code of several open source databases. These resources are listed at the end of parts one and two. You’ll discover that the most significant distinctions among many modern databases reside in subsystems that determine how storage is organized and how data is distributed.

This book examines:

Storage engines: Explore storage classification and taxonomy, and dive into B-Tree-based and immutable Log Structured storage engines, with differences and use-cases for each Storage building blocks: Learn how database files are organized to build efficient storage, using auxiliary data structures such as Page Cache, Buffer Pool and Write-Ahead Log Distributed systems: Learn step-by-step how nodes and processes connect and build complex communication patterns Database clusters: Which consistency models are commonly used by modern databases and how distributed storage systems achieve consistency

From the brand

oreillyoreilly

Databases, data science & more

Data Science

Data Visualization

Databases

Streaming

Sharing the knowledge of experts

O’Reilly’s mission is to change the world by sharing the knowledge of innovators. For over 40 years, we’ve inspired companies and individuals to do new things (and do them better) by providing the skills and understanding that are necessary for success.

Our customers are hungry to build the innovations that propel the world forward. And we help them do just that.

Publisher ‏ : ‎ O’Reilly Media
Publication date ‏ : ‎ November 5, 2019
Edition ‏ : ‎ 1st
Language ‏ : ‎ English
Print length ‏ : ‎ 370 pages
ISBN-10 ‏ : ‎ 1492040347
ISBN-13 ‏ : ‎ 978-1492040347
Item Weight ‏ : ‎ 2.31 pounds
Dimensions ‏ : ‎ 7 x 0.75 x 9 inches
Best Sellers Rank: #53,272 in Books (See Top 100 in Books) #3 in Management Information Systems #3 in Data Warehousing (Books) #7 in Data Processing
Customer Reviews: 4.6 4.6 out of 5 stars (522) var dpAcrHasRegisteredArcLinkClickAction; P.when(‘A’, ‘ready’).execute(function(A) { if (dpAcrHasRegisteredArcLinkClickAction !== true) { dpAcrHasRegisteredArcLinkClickAction = true; A.declarative( ‘acrLink-click-metrics’, ‘click’, { “allowLinkDefault”: true }, function (event) { if (window.ue) { ue.count(“acrLinkClickCount”, (ue.count(“acrLinkClickCount”) || 0) + 1); } } ); } }); P.when(‘A’, ‘cf’).execute(function(A) { A.declarative(‘acrStarsLink-click-metrics’, ‘click’, { “allowLinkDefault” : true }, function(event){ if(window.ue) { ue.count(“acrStarsLinkWithPopoverClickCount”, (ue.count(“acrStarsLinkWithPopoverClickCount”) || 0) + 1); } }); });

11 reviews for Database Internals: A Deep Dive into How Distributed Data Systems Work

0.0 out of 5
0
0
0
0
0
Write a review
Show all Most Helpful Highest Rating Lowest Rating
  1. FingolfinTEK

    Packed with details, great read
    Can’t believe I forgot to write a review for this one!Partly it’s probably because I usually have less to say (or more precisely it’s harder for me to be properly articulate) about things I like than I do about the ones I don’t. And boy did I like Database Internals! I’ll try my best to explain why, the book and the author surely deserve it.Being a back-end engineer, the main reason for picking this one up was to better understand the distributed databases that I may end up in (or have already had) contact with. With that in mind, I planned on just skimming the first part of the book but imagine my surprise when I found myself Googling BW and LSM trees and going through papers comparing this and that algorithm and their impacts on memory, storage and CPU caches in multicore systems. The geek got suckered in! With my curiosity circuits pleasantly warmed by the first part, I moved on to the second part of the book – the main dish – where a similar scenario unfolded: again I swallowed up whatever was served and ended up digging for more and adding scores of books and papers to my to-read list.All in all, Database Internals reads felt a lot like a trip to the zoo or a local museum: chock full of data structures and algorithms used by modern-day databases (and distributed systems in general), the book will showcase each item with sufficient details for you to grasp what they’re about and then provide you with enough bibliography and reference material to last you a lifetime… or at least a couple of years.

    Helpful(0) Unhelpful(0)You have already voted this
  2. J. Bodah

    Worth the effort
    This book took me a few years to get through. It is much more low-level than something like DDIA. Having worked on database code for the past couple of years, that context was crucial in helping me understand the book. The book is great because it covers all of the important ideas in databases and talks about the tradeoffs of using various algorithms. Succinct, detailed, and quality.

    Helpful(0) Unhelpful(0)You have already voted this
  3. anonymous

    Very knowledgeable and detail oriented but concise at the same time
    Strong recommend to anyone from a beginner to an expert

    Helpful(0) Unhelpful(0)You have already voted this
  4. Nilendu Misra

    Summarized Recent Overview of Storage & Distributed Systems
    Mastery in systems abstraction comes through a philosophical pivot. While an enthusiastic beginner considers successful “use cases”, an experienced traveler – through her implicit awareness of futility against entropy – often only considers failure and just tries her best. As more systems, and more of every system, are being dictated by the twin forces of economics and architectural modernism, a much higher percentage of design and development efforts in software should be dedicated to understanding fundamentals (CPU registers, branch prediction etc.) and essential complexities (multi-node consensus, replication failures etc.). This book is a good start.Database Internals is divided into two parts – the first deals with database storage. Especially good sections put a 9-cell flash-light on how many recent architectures are indeed built to tackle complexity bottom-up. i.e., LSM (log-structured merge) trees nicely complement the “write amplification” of Solid-State Disks. The discussion on the canonical B-tree and its multiple siblings (especially Bw-tree) is very well done. The functional difference between locks and latches would be enlightening even for experienced database practitioners – locks are used to manage transactions, latches to guard the *physical* storage representation.The second half of the book focusing on distributed systems is more uneven in quality. It is, however, a great start of economized discussion of about 50 “Best Papers” on Leader Election, Failure/Crash detection, Replication and how distributed systems friendly “consensus protocols”, rather than atomic ones like 2-phase commit work better. In many ways, distributed systems have veered from monarchy (single, immutable leader deciding everything, including the next leader) to a true republic (leader is still almost omnipotent, but is regularly replaced by the constituents). The comparative analysis of Paxos, ZAB and Raft – with clear sequence diagrams – is very well done.The quality of writing is good, though could have been helped with more ruthless editing. The area covered is simply too broad, other than the intersect of SSDs and Modern DB architecture which is very deep and very good. Still the book easily deserves at least 4-stars for the enthusiasm and for its good attempt to convey distributed systems pedagogy to general practitioners. Pair it with Martin Kleppmann’s “Designing Data Intensive Applications” and Ken Birman’s “Guide to Reliable Distributed Systems”.

    Helpful(0) Unhelpful(0)You have already voted this
  5. travis

    I’ve been looking for this book for years
    I’ve been looking for a book that covers these topics for a long time. Even just working with different databases on a day-to-day basis it’s incredibly helpful to understand how components of each database actually work. Furthermore the topics covered in this book span a very wide array of different topics and techniques which are incredibly handy for distributed systems. It’s really hard to find this much information in a single book. Usuaully you’d have to know each of the topics you’re interested in and buy an entire book on that topic. This book packs a pretty in depth view on several topics related to database systems into one book without needless fluff.I highly recommend this book not only to people working on distributed data systems, but to anyone working with databases. This is one of my most frequently referenced books I own.

    Helpful(0) Unhelpful(0)You have already voted this
  6. Ashish Paliwal

    One of the Best Books out there
    This is one of the best texts covering Database internals. Databases are used everyday, and understanding what happens under the hood is daunting task. This book takes a pragmatic approach on the topic, starting with basics and then taking a deeper dive into how the basic data structures and concept come together. IMHO, this book shall appeal to both Database developer’s and engineer’s who want to understand how databases work. This book is must have to for the engineer’s who really want to get into Database development. Otherwise also this book is a must have reference in general. I personally liked the attention to details in the book on what really matter’s when writing a real database. The concepts are equally applicable to SQL and NoSQL databases.

    Helpful(0) Unhelpful(0)You have already voted this
  7. Vladimir Kazanov

    There are two infinitely big and comparably old topics in software engineering: compilers and databases. Both have traditions and history, both are recognised as deep research topics, with developers and academics working on related problems for decades.It’s really hard to get an overview of the way databases work, given how diverse and, well, *big* they really are. Decades of practical experience don’t mean one has a clear understanding of query processing, optimisation, storage subsystems, transaction processing, concurrency control, etc.Sometimes, just sometimes, mortals get lucky and somebody writes a survey of a subfield, or an extended overview, of relevant problems. Best example I am aware of: the Red Book aka Readings in Database Systems. It’s a vast survey of academic work on databases. But it’s more of a collection of paper references than a linear reading.Database Internals also feels a bit like an extended survey: numerous paper references are, no code, mostly conceptual explanations. What stands out is its good linear narration, gradually coming up with definitions and clarifying explanations.So, what this book is not: introductory text, a textbook, theory-centric volume or practise-centric work.What this book is: a survey of typical approaches to two major aspects of databases (local storage subsystems and problems of distributed systems). Interested reader will have to follow the references, casual reader will get familiar with terminology and common concepts in a condensed way.I would (and definitely will) recommend the book to people already working with databases for at least a few years looking for additional insights or an overview of the field.

    Helpful(0) Unhelpful(0)You have already voted this
  8. Vamsee K

    If you’re looking for a not-too-deep introduction to distributed databases and plan to use it as a jumping off point for digging deep into the topics mentioned here, this is an excellent book.

    Helpful(0) Unhelpful(0)You have already voted this
  9. Clément Grimault

    Amazing book, in my top 3 technical books. I learned a lot, it goes really deep and explains everything very well. I would suggest to have at least a good understanding of database basics before starting though (indexes, distributed systems)

    Helpful(0) Unhelpful(0)You have already voted this
  10. hailizhang

    The book is really good, mint without any scratches. Love it!

    Helpful(0) Unhelpful(0)You have already voted this
  11. Amazon Kunde

    I was positively surprised by this book. Lots of programming books these days are hastily written, but this book is clearly a labor of love. It’s packed with information about how databases work under the hood that isn’t easily available to programmers, including man gnarly details. While this book is not quite at the level of Kleppmann’s Designing Data-Intensive Applications, it’s pretty close.

    Helpful(0) Unhelpful(0)You have already voted this

    Add a review

    Your email address will not be published. Required fields are marked *

    Database Internals: A Deep Dive into How Distributed Data Systems Work
    Database Internals: A Deep Dive into How Distributed Data Systems Work

    Original price was: $65.99.Current price is: $36.33.

    bestdealsavvy.com
    Logo
    Compare items
    • Total (0)
    Compare
    0
    Shopping cart