Open in app

Sign in

Write

Sign in

Aditi Lonhari
Aditi Lonhari

33 Followers

Home

Lists

About

Pinned

Book Report: Designing Data-Intensive Applications

This is a summary of the book — Design Data Intensive Application by Martin Kleppmann. Below are the links to each chapter so as to keep it short and simple to read. Part I. Foundations of Data Systems Chapter 1: Reliable, Scalable, and Maintainable Applications We call an application data-intensive if data is its primary challenge — the quantity of data, the complexity of data…aditilonhari.medium.com

2 min read

2 min read


Pinned

Book Report: Design and Build Great Web APIs

This is a summary of the book — Design and Build Great Web APIs by Mike Amundsen. Below are the links to each chapter so as to keep it short and simple to read. Getting Started Chapter 1: Getting Started with API First Adopting API-First principleaditilonhari.medium.com Chapter 2: Understanding HTTP, REST and APIs HTTP, short for hypertext transfer protocol, is an open standard to make sure machines talk to each other over the…aditilonhari.medium.com

API

1 min read

API

1 min read


Aug 23

Chapter 12: The Future of Data Systems

So far, this book has been mostly about describing things as they are at present. In this final chapter, we will shift our perspective toward the future and discuss how things should be. If you have a problem such as “I want to store some data and look it up…

9 min read

Chapter 12: The Future of Data Systems
Chapter 12: The Future of Data Systems

9 min read


Jun 29

Chapter 11: Stream processing

One big assumption we made throughout Chapter 10 was that the input is bounded — i.e., of a known and finite size — so the batch process knows when it has finished reading its input. In reality, a lot of data is unbounded because it arrives gradually over time. The…

19 min read

Chapter 11: Stream processing
Chapter 11: Stream processing

19 min read


Jun 22

Chapter 10: Batch Processing

On a high level, systems that store and process data can be grouped into two broad categories: Systems of record A system of record, also known as source of truth, holds the authoritative version of your data. When new data comes in, e.g., as user input, it is first written…

21 min read

Chapter 10: Batch Processing
Chapter 10: Batch Processing

21 min read


Jun 14

Chapter 9: Consistency and Consensus

In this chapter, we will talk about some examples of algorithms and protocols for building fault-tolerant distributed systems. The best way of building fault-tolerant systems is to find some general-purpose abstractions with useful guarantees, implement them once, and then let applications rely on those guarantees. This is the same approach…

14 min read

Chapter 9: Consistency and Consensus
Chapter 9: Consistency and Consensus

14 min read


Jun 12

Chapter 8: The Trouble with Distributed Systems

A recurring theme in the last few chapters has been how systems handle things going wrong. For example, we discussed replica failover, replication lag and concurrency control for transactions. As we come to understand various edge cases that can occur in real systems, we get better at handling them. However…

11 min read

Chapter 8: The Trouble with Distributed Systems
Chapter 8: The Trouble with Distributed Systems

11 min read


May 9

Chapter 7: Transactions

In the harsh reality of data systems, many things can go wrong: The database software or hardware may fail at any time (including in the middle of a write operation). The application may crash at any time (including halfway through a series of operations). Interruptions in the network can unexpectedly…

16 min read

Chapter 7: Transactions
Chapter 7: Transactions

16 min read


Apr 29

Chapter 6: Partitioning

In Chapter 5 we discussed replication — that is, having multiple copies of the same data on different nodes. For very large datasets, or very high query throughput, that is not sufficient: we need to break the data up into partitions, also known as sharding. Normally, partitions are defined in…

Partitioning

12 min read

Chapter 6: Partitioning
Chapter 6: Partitioning
Partitioning

12 min read


Apr 23

Chapter 5: Replication

Replication means keeping a copy of the same data on multiple machines that are connected via a network. There are several reasons why you might want to replicate data: To keep data geographically close to your users (and thus reduce latency) To allow the system to continue working even if…

Replication

14 min read

Chapter 5: Replication
Chapter 5: Replication
Replication

14 min read

Aditi Lonhari

Aditi Lonhari

33 Followers

The mind is everything. What you think, you become!

Following
  • Netflix Technology Blog

    Netflix Technology Blog

  • Harsh Darji

    Harsh Darji

  • Helen Pugh

    Helen Pugh

  • Julie Zhuo

    Julie Zhuo

  • Nidhi Gupta

    Nidhi Gupta

See all (83)

Help

Status

About

Careers

Blog

Privacy

Terms

Text to speech

Teams