Chuyển đến nội dung

PHẦN I: Nền Tảng Của Hệ Thống Dữ Liệu

Trang này thuộc ấn bản thứ 1, ấn bản thứ 2 chưa có sẵn.

Năm chương đầu tiên trình bày những ý tưởng nền tảng áp dụng cho mọi hệ thống dữ liệu, dù chạy trên một máy đơn hay phân tán trên nhiều máy trong một cụm:

  1. Chương 1 giới thiệu những đánh đổi (tradeoffs) mà các hệ thống dữ liệu phải đối mặt, chẳng hạn như cân bằng giữa tính nhất quán (consistency) và tính sẵn sàng (availability), và cách những đánh đổi này ảnh hưởng đến thiết kế hệ thống.

  2. Chương 2 thảo luận về các yêu cầu phi chức năng (nonfunctional requirements) của hệ thống dữ liệu, như tính sẵn sàng, tính nhất quán và độ trễ (latency), cùng cách chúng ta có thể cố gắng đạt được những mục tiêu này.

  3. Chương 3 so sánh một số mô hình dữ liệu (data models) và ngôn ngữ truy vấn (query languages) khác nhau - đây là yếu tố phân biệt rõ nét nhất giữa các cơ sở dữ liệu từ góc nhìn của lập trình viên. Chúng ta sẽ thấy các mô hình khác nhau phù hợp với những tình huống khác nhau như thế nào.

  4. Chương 4 đi sâu vào nội bộ của các storage engine (bộ máy lưu trữ) và xem xét cách cơ sở dữ liệu tổ chức dữ liệu trên đĩa. Các storage engine khác nhau được tối ưu cho các workload (khối lượng công việc) khác nhau, và việc chọn đúng loại có thể tác động rất lớn đến hiệu suất.

  5. Chương 5 so sánh các định dạng mã hóa dữ liệu (data encoding / serialization) khác nhau và đặc biệt xem xét chúng hoạt động như thế nào trong môi trường mà yêu cầu ứng dụng thay đổi và schema cần thích nghi theo thời gian.

Sau đó, Phần II sẽ đề cập đến những vấn đề riêng của các hệ thống dữ liệu phân tán.

1. Những Đánh Đổi Trong Kiến Trúc Hệ Thống Dữ Liệu

2. Xác Định Các Yêu Cầu Phi Chức Năng

3. Mô Hình Dữ Liệu và Ngôn Ngữ Truy Vấn

4. Lưu Trữ và Truy Xuất

5. Mã Hóa và Tiến Hóa Schema