Sharding là gì ? Sổ cái phân tán, mạng ngang hàng là gì ?
Tóm tắt
Tổng quan
Nói một cách dễ hiểu, sharding là đang chia nhỏ cơ sở dữ liệu thành các phần nhỏ hơn, dễ quản lý hơn và phân phối các phần đó trên nhiều máy chủ để tải và duy trì thông lượng cao.
Có hai cách chính để phân vùng cơ sở dữ liệu: phân vùng dọc và phân vùng ngang.
- Sharding- tách theo chiều dọc xảy ra khi các bảng khác nhau từ cùng một cơ sở dữ liệu được lưu trữ trong các trường hợp khác nhau. Mỗi bảng là một phân đoạn riêng biệt. Ví dụ đặt tất cả các giao dịch từ Bắc Mỹ vào một bảng và tất cả các giao dịch từ Châu Âu vào một bảng khác.
- Sharding- Phân vùng ngang là chia bảng cơ sở dữ liệu thành các tập hợp hàng riêng biệt và các hàng này được lưu trữ trong các thể hiện cơ sở dữ liệu khác nhau. Mỗi tập hợp các dòng là một phân đoạn. Ví dụ “Máy chủ 1” chấp nhận các dòng từ 1 đến 10.000 và “Máy chủ 2” chấp nhận các dòng từ 10,001 đến 20.000, v.v.
Chia nhỏ theo chiều ngang có lợi thế hơn so với chia nhỏ theo chiều dọc:
- Bạn không cần phải lên kế hoạch trước về cách phân chia dữ liệu;
- Cơ sở dữ liệu của bạn ít phức tạp hơn nhiều, bạn có thể tự động điều chỉnh tỷ lệ bao nhiêu trong toàn bộ cơ sở dữ liệu mà một máy chủ duy nhất cần để phục vụ.
Tại sao sharding lại quan trọng như vậy?
Nếu máy chủ không thể xử lý số lượng hoạt động được theo yêu cầu, bạn có thể chia tập dữ liệu này thành các phần có thể được lưu trữ trên các máy chủ khác nhau.
Ví dụ: nếu chúng ta chia một bảng thành hai phân vùng, mỗi máy chủ lưu trữ sẽ phải xử lý một nửa hoạt động của máy chủ lưu trữ ban đầu. Khi số lượng yêu cầu cho các hoạt động tăng lên, cơ sở dữ liệu có thể được chia thành nhiều phần hơn và nhiều hơn.
Sharding là một giải pháp đã được chứng minh tốt cho các hệ thống mở rộng quy mô với bộ dữ liệu lớn và / hoặc các hoạt động hiệu suất cao.
Công nghệ sổ cái phân tán (DLT) là gì?
Sổ cái phân tán là một cơ sở dữ liệu được sao chép, chia sẻ và đồng bộ hóa trên nhiều trang web, quốc gia và tổ chức. Sổ cái phân tán chứa một thuật toán đồng thuận, một cơ chế để thống nhất giữa các bên về phiên bản mới nhất của sổ đăng ký phải là gì và để giải quyết các trục trặc, lỗi hoặc xung đột.
Mạng DLT là mạng ngang hàng, có nghĩa là không có chức năng quản trị viên tập trung cũng không phải là nơi lưu trữ dữ liệu tập trung. Các blockchain công khai như Bitcoin và Ethereum được cho là những ví dụ nổi tiếng nhất của DLT.

Mạng ngang hàng yêu cầu các máy hoặc nút độc lập để ghi, đồng bộ hóa và trao đổi các giao dịch trong các thanh ghi tương ứng của chúng. Sổ đăng ký phân tán có thể được phép hoặc không được phép, tùy thuộc vào việc các nút có yêu cầu quyền sửa đổi sổ đăng ký hay không. Sổ đăng ký có thể là công khai hoặc riêng tư tùy thuộc vào việc ai đó (không chỉ các nút trên mạng) có thể truy cập sổ đăng ký.
DLT được sử dụng để làm gì?
DLT có thể được sử dụng để tạo:
- tiền tệ kỹ thuật số;
- các đối tượng kỹ thuật số duy nhất;
- các đối tượng kỹ thuật số có giá trị nội tại (ví dụ: vé).
Trên thực tế, sổ cái phân tán có thể được sử dụng dưới hình thức này hay hình thức khác ở bất cứ nơi nào mà các mối quan hệ kỹ thuật số cần được bảo vệ bởi hệ thống ghi chép và không có sự giám sát của cơ quan trung ương. Nói cách khác, DLT rất hữu ích khi cần có một mạng ngang hàng đáng tin cậy để chia sẻ các ưu đãi và giá trị.
Kết luận
Sổ cái là các bản ghi giao dịch và chúng tồn tại để đảm bảo rằng mỗi khoản chi tiêu chỉ xảy ra một lần. Trong sổ cái phân tán, không phải tất cả các phân đoạn tạo nên sổ cái đều ở cùng một vị trí. Theo định lý CAP về cơ sở dữ liệu phân tán, một kho dữ liệu phân tán (hoặc sổ đăng ký, trong trường hợp của chúng tôi) không thể đồng thời cung cấp nhiều hơn hai trong ba bảo đảm sau: tính nhất quán, tính khả dụng hoặc khả năng phục hồi của phân vùng. Nói một cách dễ hiểu, bạn cần đảm bảo rằng chi tiêu chỉ được thực hiện một lần trong toàn bộ mạng và sự hiện diện của số lượng lớn các phân đoạn làm phức tạp nhiệm vụ này.