Bài viết được sự cho phép của tác giả Kiên Nguyễn
1. Database Clustering là gì?
Như đã đề cập ở trên, trường hợp thiết kế Scalable Web Application, rất có thể một hoặc nhiều web service sẽ kết nối chung tới một Database. Cần nhiều web service là do ta cần handle một số lượng lớn request.
Liên kết ở đây được hiểu là dữ liệu ở các cụm Database không hệ khác nhau, được đồng bộ hóa trong quá trình thao tác.


Cùng có thể hiểu Database Clustering như là cách liên kết. Nhiều các DB liên kết với nhau để tăng cường sức mạnh, đảm bảo ứng dụng hoạt động trơn tru.
Xem thêm Công việc database hấp dẫn trên TopDev
2. Điểm mạnh
Với Database Clustering, có những ưu điểm rõ ràng có thể nhận thấy khi thao tác, bảo trì hệ cơ sở dữ liệu như sau:
2.1 Load Balancing
Bản thân một hệ cơ sở dữ liệu không hề có cơ chế cân bằng tải (Load Balancing) ngay từ ban đầu. Về cơ bản mà nói thì
Trường hợp số lượng request tăng đột biến, chỉ một services sẽ không thể handle nổi, lúc này sẽ có nhiều web services thực hiện đồng thời, phân bổ và điều tiết số lượng request. Điều này sẽ khả thi với Database Clustering, bởi vì tất cả các web services đó đều sử dụng chung một database
2.2 High Availability
Tính sẵn có cao cũng là một yếu tố để cân nhắc cho việc sử dụng Database Cluster. Sẵn có tức là khi cần truy cập tới database, ta có thể truy xuất được.
Trường hợp số lượng request lớn hoặc xử lý ở phía server tương đối phức tạp, rất có thể xảy ra trường hợp các request bị từ chối.
2.3 Data redundancy
Dự phòng dữ liệu cũng là một điểm mạnh khi sử dụng Database Clustering. Do các DB node trong mô hình Clustering được đồng bộ. Trường hợp có sự cố ở một node, vẫn dễ dàng truy cập dữ liệu node khác.
Việc có node thay thế đảm bảo ứng dụng hoạt động mượt mà. Ngay cả khi một hoặc một vài node trong mạng bị down.
3. Khi nào nên sử dụng database clustering?
Ngày nay, các ứng dụng web (web application) thường được yêu cầu hoạt động mượt mà trong tất cả các trường hợp. Vậy khi nào thì cần tới database clustering?
Nắm vững khái niệm là một chuyện. Thực tế ở các hệ cơ sở dữ liệu khác nhau sẽ cần tìm hiểu thêm MySQL Cluster CGE
Bài viết gốc được đăng tải tại kieblog.vn
Có thể bạn quan tâm: