Tác giả: Martin Kleppmann, nhà nghiên cứu tại Đại học Cambridge vào thời điểm viết sách. O'Reilly, xuất bản tháng 3/2017, khoảng 614 trang. Trong giới làm backend, cuốn này thường được gọi tắt là "DDIA".
Thuộc tầng 2 — Làm nghề giỏi dần lên.
Cuốn này nói về gì: Những ý tưởng lớn đằng sau các hệ thống dữ liệu đáng tin cậy, mở rộng được và dễ bảo trì. Sách đi từ nền tảng — lưu trữ và mô hình dữ liệu — qua replication (nhân bản dữ liệu), phân mảnh (partitioning), transaction, tính nhất quán và đồng thuận, đến xử lý dữ liệu batch và stream. Điểm đặc biệt: sách không dạy "dùng công nghệ X như thế nào", mà dạy "vì sao các công nghệ đó tồn tại và chúng đánh đổi cái gì".
Những ý hay nhất:
- Khung tư duy để đánh giá mọi hệ thống dữ liệu. Đọc xong, nhìn vào Postgres, Kafka, Redis hay bất kỳ hệ thống nào, bạn cũng hiểu được nó đang đánh đổi cái gì lấy cái gì. Đây là thứ giúp bạn không còn chọn công nghệ theo phong trào.
- Giải thích từ gốc, không học vẹt. Vì sao cần replication, vì sao transaction khó, vì sao "nhất quán" có nhiều mức độ khác nhau — tất cả đều được lý giải từ vấn đề gốc, chứ không phải đưa ra như định nghĩa phải thuộc.
- Cân bằng lý thuyết và thực tế. Sách nói thẳng về trade-off, không tô hồng công nghệ nào. Có những chương đọc xong bạn sẽ thấy hệ thống mình đang làm có vấn đề — và biết vấn đề nằm ở đâu.
Hợp với ai: Senior, backend dev 3–5 năm trở lên, ai thiết kế hệ thống hoặc chuẩn bị cho phỏng vấn system design. Không dành cho người mới — đọc khi chưa có kiến thức nền thì rất dễ nản giữa chừng.
Điểm trừ/lưu ý: Dày và nặng, đọc cần kiên nhẫn và kiến thức nền, không phải sách đọc một lèo cuối tuần. Một số công nghệ lấy làm ví dụ đã thay đổi từ 2017, nhưng tư duy nền tảng thì vẫn đúng — nên đọc để lấy tư duy, đừng đọc để học thuộc tên công nghệ.