Câu trả lời:
3 điều này không có gì để làm với nhau. Tôi sẽ giới thiệu cho bạn và bạn có thể tìm kiếm hoặc yêu cầu cụ thể hơn một cách riêng biệt:
MySQL Cluster là tên tiếp thị của cái mà nhiều người trong chúng ta gọi - để tránh những nhầm lẫn như cái mà bạn hiện đang mắc phải - "Cụm NDB" hoặc "Cụm NDB của MySQL". Đây là kho lưu trữ khóa-giá trị chủ yếu chỉ có bộ nhớ cho phép kiến trúc không chia sẻ cho MySQL (cung cấp phụ trợ cho Công cụ NDB). Nó cung cấp shending tự động (vì vậy, thông lượng đọc và viết tốt hơn) và tính sẵn sàng cao. Nó hoạt động tốt đối với các hệ thống dữ liệu nhỏ có giá trị khóa thông lượng cao, nhưng việc thiết lập tương đối phức tạp (dẫn đến sự cố nếu nó không được cấu hình đúng hoặc được sử dụng theo cách không mong muốn) và đó không phải là độ trễ tốt nhất- khôn ngoan (tốc độ thô). Đây là phiên bản đơn giản hóa (nó có thể được sử dụng cho nhiều thứ hơn chỉ bộ nhớ và khóa-giá trị, nhưng nó được thiết kế xung quanh nó). Theo tôi, một phần kỹ thuật rất tốt, nhưng nó có các trường hợp sử dụng hạn chế, vì nó là một sản phẩm khác với máy chủ MySQL thông thường với các tải xuống riêng biệt (và yêu cầu sử dụng một công cụ cụ thể).
MySQL Fabric là một bộ công cụ / phần mềm trung gian được viết bằng python cho phép quản lý một bộ máy chủ MySQL thông thường trong môi trường GTID được sao chép . Nó không phải là một cụm mỗi se, nhưng nó tạo điều kiện cho việc quản lý một. Nó có các liên kết đến (hiện tại) các trình kết nối Java và Python, do đó, nó có thể tự động xử lý việc bảo vệ và tính sẵn sàng cao của máy chủ, nhưng nó là một lớp trên đầu máy chủ MySQL thông thường và sao chép thông thường (có thể sử dụng các công cụ lưu trữ thông thường như InnoDB) . Sao chép, cho đến nay là không đồng bộ (hoặc bán đồng bộ), do đó nó có thể không cung cấp cho chính nó tính nhất quán và bảo mật tốt nhất; điều này có thể thay đổi trong các phiên bản 5.7 trong tương lai. Tuy nhiên, cách tiếp cận này có ít chi phí hơn về độ trễ và sử dụng công nghệ sao chép quen thuộc hơn của MySQL DBA. MySQL Fabric là một đứa trẻ tương đối mới trong khu phố, vì vậy chưa được mở rộng, nhưng dường như đó là phản ứng của Oracle (cùng với sự sao chép đồng bộ được công bố) đối với các cụm dựa trên Galera của đối thủ cạnh tranh.
Nếu bạn cần shending và HA, bạn có thể sử dụng một trong 2 sản phẩm trước đây, nhưng có lẽ cho các kịch bản hoàn toàn khác nhau.
WebScaleQuery không phải là một giải pháp HA, giống như các giải pháp trước đây, nó chỉ là tên mà một số công ty đặt cho một ngã ba / phiên bản của MySQL nơi họ chia sẻ các bản vá cụ thể mà họ cần và có thể Oracle chưa áp dụng. Theo như tôi biết thì nó đã được tạo ra bởi Facebook, Twitter, LinkedIn và Google và họ đã phản đối các phiên bản MySQL của riêng họ trên cơ sở chung đó. Họ không cung cấp hỗ trợ hoặc phát hành nhị phân. Nếu bạn là người dùng cuối, có lẽ bạn không nên quan tâm đến việc sử dụng nó, nhưng bạn nên theo dõi dự án để xem những gì sẽ phát triển từ nó hoặc phản hồi từ các nhà cung cấp khác.
Nếu bạn đang cố gắng học / bắt đầu với MySQL HA / nhân rộng, hãy bắt đầu với sao chép MySQL cơ bản (nó có thể không phải là tốt nhất, nhưng đó là điều dễ nhất để bắt đầu), sau đó bạn có thể tiếp tục từ đó đến các giải pháp khác: DRBD [ sic], sao chép GTID, NDB, Galera, Vonfram.
MySQL Fabric được triển khai như một nút / quy trình của MySQL Fabric (thực hiện các chức năng quản lý) và các trình kết nối nhận biết Fabric có thể định tuyến các truy vấn và giao dịch trực tiếp đến Máy chủ MySQL thích hợp nhất. Nút MySQL Fabric lưu trữ thông tin trạng thái và định tuyến trong Kho lưu trữ trạng thái của nó (là cơ sở dữ liệu MySQL).
MySQL Cluster là một công nghệ cho phép phân cụm các cơ sở dữ liệu trong bộ nhớ trong một hệ thống không chia sẻ. Kiến trúc không chia sẻ cho phép hệ thống hoạt động với phần cứng rất rẻ và với tối thiểu các yêu cầu cụ thể đối với phần cứng hoặc phần mềm.