MariaDB
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> MariaDB

Tổng quan về MariaDB Xpand (trước đây là ClustrixDB)

MariaDB Xpand là một sản phẩm mới của MariaDB. Nó trước đây được gọi là ClustrixDB, được mua lại vào tháng 9 năm 2018 bởi MariaDB Corporation.

ClustrixDB không còn khả dụng dưới dạng một thực thể riêng biệt nữa, nhưng hiện được bao gồm như một phần của Máy chủ doanh nghiệp MariaDB. Bây giờ được gọi là Xpand, nó mở rộng Máy chủ Doanh nghiệp MariaDB với dữ liệu phân tán và xử lý giao dịch, biến nó thành một cơ sở dữ liệu SQL phân tán có khả năng mở rộng đến hàng triệu giao dịch mỗi giây với kiến ​​trúc không chia sẻ. Tuy nhiên, Xpand không phải là tất cả hoặc không có gì, vì DBA có thể chọn sử dụng cả bảng sao chép và bảng phân phối. Xpand rất tốt cho các truy vấn phức tạp và xử lý phân tích vì nó có thể thực hiện các truy vấn song song trên các nút có sẵn trong cụm.

Về cơ bản, Xpand là một kiến ​​trúc không dùng chung và được thiết kế như một cơ sở dữ liệu SQL quy mô lớn, được xây dựng từ đầu mà ban đầu có thể chạy trên phần cứng hàng hóa với tính năng phân phối lại dữ liệu tự động (vì vậy bạn không bao giờ cần phải chia nhỏ ). Nó có khả năng chịu lỗi tích hợp, tất cả đều có thể truy cập được bằng giao diện SQL đơn giản và hỗ trợ các tính năng MySQL quan trọng cho doanh nghiệp (sao chép, trình kích hoạt, quy trình được lưu trữ, v.v.). Giấy phép của nó chỉ có sẵn dưới dạng độc quyền, vì vậy nếu bạn muốn tận dụng lợi thế của sản phẩm này, trước tiên bạn phải liên hệ với bộ phận bán hàng của MariaDB để có được giấy phép hợp lệ.

Khi nào sử dụng MariaDB Xpand

Xpand được thiết kế để xử lý khối lượng lớn dữ liệu và cho phép bạn mở rộng cơ sở dữ liệu của mình hiệu quả hơn. Điều này có nghĩa là việc mở rộng ra khỏi cụm của bạn được thực hiện dễ dàng và tự động bởi chính Xpand. Kể từ khi phát hành MariaDB Platform X5, Xpand đã là một phần của nền tảng được cung cấp cho khách hàng như một phần của giải pháp SQL phân tán. Công cụ thông minh Xpand cho phép khách hàng mở rộng quy mô vượt ra ngoài điểm hấp dẫn của công cụ lưu trữ InnoDB về khối lượng công việc đọc / ghi hỗn hợp hiệu suất cao trên một nút duy nhất với tùy chọn thêm quy mô thông qua nhân rộng và sử dụng giải pháp phân phối có khả năng chịu lỗi cao cho các- quy mô khối lượng công việc.

Với Xpand, bạn có thể linh hoạt chia tỷ lệ trên cơ sở mỗi bảng. Bắt đầu bằng cách sử dụng Xpand chỉ cho một bảng duy nhất và mở rộng việc sử dụng khi nhu cầu của bạn phát triển vượt quá những gì một nút duy nhất có thể xử lý. Tăng việc sử dụng SQL phân tán khi nhu cầu doanh nghiệp của bạn phát triển vượt ra ngoài sao chép hoặc phân cụm. Khi khối lượng dữ liệu hoặc truy vấn tăng đến mức làm giảm hiệu suất, bạn có thể sử dụng Xpand để phân phối bảng hoặc toàn bộ cơ sở dữ liệu để cải thiện thông lượng và đồng thời. Xpand được tích hợp sẵn tính khả dụng và độ đàn hồi cao, vì vậy, các nút có thể được thêm vào hoặc xóa một cách minh bạch khi cần để mở rộng quy mô.

Cũng giống như MariaDB ColumnStore, công cụ thông minh dạng cột, các công cụ tham gia chéo có thể (và được khuyến khích) giữa các bảng được sao chép và phân phối. Không giống như các triển khai SQL phân tán khác phân phối toàn bộ cơ sở dữ liệu và do đó, có chi phí đáng kể trên các bảng nhỏ hơn, MariaDB cho phép sử dụng kết hợp InnoDB cho các tập dữ liệu nhỏ được sao chép và các tập dữ liệu phân tán lớn thông qua Xpand.

Rất tiếc, không có tài liệu chính thức nào về trạng thái thay đổi từ ClustrixDB sang MariaDB Xpand, vì vậy bạn có thể vẫn muốn dựa vào https://docs.clustrix.com/ để biết tài liệu về cách hoạt động của ClustrixDB. Người ta cũng biết rằng GTID không được hỗ trợ bởi ClustrixDB, mặc dù điều này có thể đã thay đổi kể từ khi phát hành MariaDB 10.5.

MariaDB Xpand hoạt động như thế nào?

Việc triển khai bằng MariaDB Xpand yêu cầu bạn phải có Máy chủ Doanh nghiệp MariaDB có cài đặt plugin Xpand, sau đó là các Nút Xpand chạy cùng. Nó tương tự giống như cách bạn thiết lập bản sao Máy chủ MaxScale và MariaDB để có Tính khả dụng cao và bạn có thể đặt MaxScale lên trên để quản lý các kết nối và không xảy ra trong suốt giữa các phiên bản Máy chủ doanh nghiệp giao diện người dùng với các bộ dữ liệu nhỏ hơn được sao chép trong InnoDB .. Bạn cũng nên làm như vậy để có trải nghiệm hiệu suất tốt nhất với Xpand, các máy chủ và nút giao diện người dùng phải được chạy trên các máy chủ vật lý riêng biệt. Xem cấu trúc tôpô MariaDB Xpand bên dưới từ MariaDB về cách hoạt động của nó:

https://mariadb.com/resources/blog/mariadb-adds-xpand-for-distributed-sql /

Để giải thích thêm ở trên, Xpand chia một số lát cho mỗi bảng được tạo bằng Xpand. Mỗi lát cắt được lưu trữ trên một nút chính và sau đó được sao chép sang một hoặc nhiều nút khác để đảm bảo khả năng chịu lỗi. Mỗi nút Xpand có thể thực hiện cả đọc và ghi. Và mỗi nút có một bản đồ phân bố dữ liệu.

Đối với các thao tác đọc, phần chính của truy vấn được đẩy xuống Xpand nơi truy vấn được đánh giá và các phần có liên quan của truy vấn sau đó được gửi đến các nút Xpand thích hợp. Máy chủ doanh nghiệp MariaDB thu thập dữ liệu trả về từ các nút Xpand để tạo tập hợp kết quả.

Đối với các hoạt động ghi, MariaDB Xpand sử dụng một thành phần được gọi là "bộ cân bằng lại" để phân phối dữ liệu một cách tự động và minh bạch trên các nút Xpand có sẵn.

MariaDB Xpand dưới dạng SQL phân tán

Mỗi nút Xpand có thể thực hiện cả đọc và ghi. Khi một truy vấn được MariaDB Enterprise Server nhận, nó được đánh giá bởi một trình tối ưu hóa truy vấn và các phần của truy vấn được gửi đến các nút Xpand có liên quan. Các kết quả được thu thập và một tập hợp kết quả duy nhất được trả lại cho khách hàng.

MariaDB Xpand tận dụng kiến ​​trúc không chia sẻ; một nút duy nhất xử lý từng yêu cầu và bộ nhớ và bộ nhớ không được chia sẻ.

MariaDB Xpand HA và Khả năng chịu lỗi

MariaDB Xpand có khả năng chịu lỗi theo thiết kế. Xpand duy trì hai bản sao của tất cả dữ liệu bằng cách sử dụng quy trình tái cân bằng chạy trong nền. Xpand có thể bị lỗi một nút hoặc một vùng mà không bị mất dữ liệu.

Khi nút bị lỗi, dữ liệu sẽ được cân bằng lại từ các nút còn lại, tự động khôi phục bảo vệ dữ liệu mà không cần can thiệp. Trong sự cố vùng, bộ cân bằng lại thực hiện cùng một hoạt động giữa các nút và các vùng còn lại.

Khi thay thế nút bị lỗi, trình cân bằng lại sẽ phân phối lại dữ liệu, khôi phục MariaDB Xpand về số lượng nút dự định.

Thu nhỏ theo chiều ngang với MariaDB Xpand

MariaDB Xpand linh hoạt theo thiết kế. Nếu tải trên Máy chủ doanh nghiệp MariaDB tăng, bạn có thể thêm Máy chủ bổ sung vào triển khai của mình, cân bằng tải giữa chúng bằng MariaDB MaxScale. Mỗi Máy chủ có thể kết nối với các nút Xpand để truy cập dữ liệu được lưu trữ trên bảng Xpand.

Nếu tải trên MariaDB Xpand tăng, bạn có thể mở rộng quy mô bằng cách thêm các nút mới. Khi bạn thêm một nút Xpand vào triển khai, quá trình tái cân bằng sẽ phân phối lại dữ liệu từ các nút hiện có. Sau khi hoàn tất, nút Xpand hiện có thể xử lý cả hoạt động đọc và ghi từ Máy chủ doanh nghiệp MariaDB.

Nếu tải trên MariaDB Xpand giảm, bạn có thể giảm quy mô bằng cách loại bỏ các nút. Khi bạn xóa một nút Xpand khỏi quá trình triển khai, quá trình tái cân bằng sẽ phân phối lại dữ liệu cho các nút còn lại, đảm bảo khả năng chịu lỗi.

Điều gì làm cho MariaDB Xpand có thể mở rộng?

Không có nút thắt cổ chai và không có điểm thất bại nào. Tất cả các bộ xử lý được sử dụng để hỗ trợ xử lý truy vấn. Các truy vấn được song song hóa và phân phối trên toàn cụm đến dữ liệu có liên quan. Các nút mới được tự động nhận dạng và kết hợp vào cụm. Khối lượng công việc và dữ liệu được cân bằng tự động trên tất cả các nút trong cụm. Tính toán quan hệ SQL toàn cụm và các thuộc tính ACID loại bỏ sự phức tạp của nhiều nút khỏi việc phát triển và quản lý các ứng dụng nhiều tầng. Sự phức tạp thường được yêu cầu để mở rộng các mô hình db hiện có để xử lý khối lượng lớn dữ liệu đã được loại bỏ. Và khi cơ sở dữ liệu của bạn phát triển, chỉ cần thêm các nút.

Có một số điều ảnh hưởng đến khả năng mở rộng và hiệu suất:

  • Kiến trúc không chia sẻ, loại bỏ các nút thắt tiềm ẩn. Ngược lại điều này với các cấu trúc đĩa chia sẻ / bộ đệm chia sẻ gây tắc nghẽn cổ chai, không mở rộng quy mô và khó quản lý.
  • Song song hóa các truy vấn, được phân phối tới (các) nút với dữ liệu liên quan. Kết quả được tạo gần với dữ liệu nhất có thể, sau đó được chuyển trở lại nút yêu cầu để hợp nhất và trả lại cho khách hàng.

Hệ thống này rất khác so với các hệ thống khác, hệ thống này thường di chuyển một lượng lớn dữ liệu đến nút đang xử lý truy vấn, sau đó loại bỏ tất cả dữ liệu không phù hợp với truy vấn (thường là rất nhiều dữ liệu) . Bằng cách chỉ di chuyển dữ liệu đủ điều kiện trên toàn mạng đến nút yêu cầu, Xpand giảm đáng kể tắc nghẽn lưu lượng mạng. Ngoài ra, nhiều bộ xử lý tham gia vào quá trình lựa chọn dữ liệu, Bằng cách chọn song song dữ liệu trên nhiều nút, hệ thống tạo ra kết quả nhanh hơn so với việc tất cả dữ liệu được chọn bởi một nút duy nhất, mà trước tiên phải thu thập tất cả dữ liệu cần thiết từ nút kia các nút trong hệ thống.

Vì mỗi nút tập trung vào một phân vùng cụ thể và gửi các mục công việc đến các nút khác thay vì yêu cầu dữ liệu thô từ các nút khác, bộ nhớ cache của mỗi nút chứa nhiều dữ liệu của nút đó hơn và ít dữ liệu dư thừa hơn từ các nút khác. Điều này có nghĩa là tỷ lệ truy cập bộ nhớ cache sẽ cao hơn nhiều, giảm đáng kể nhu cầu truy cập đĩa chậm.

Triển khai MariaDB Xpand

Có hai triển khai MariaDB Xpand riêng biệt để bắt đầu sử dụng MariaDB Xpand. Việc triển khai Xpand bao gồm các phiên bản Máy chủ Doanh nghiệp MariaDB, được gọi là máy chủ front-end, có cài đặt plugin Xpand, sau đó các Node Xpand đang chạy cùng với các máy chủ front-end này. Để có hiệu suất tốt nhất, Máy chủ Doanh nghiệp và nút Xpand có thể được cài đặt trên các máy chủ vật lý riêng biệt.

  1. Bạn cần thiết lập MariaDB Xpand Node. Các nút Xpand được định cấu hình trong một triển khai để cung cấp phần cuối lưu trữ cho Máy chủ doanh nghiệp MariaDB với plugin công cụ lưu trữ Xpand. Máy chủ lưu trữ dữ liệu cho bảng Xpand trên các nút Xpand hơn là hệ thống tệp cục bộ. Cài đặt Xpand Node yêu cầu giấy phép, đây là một đối tượng JSON và bạn chỉ có thể có được bằng cách liên hệ với MariaDB Sales. Quá trình cài đặt không nhanh như chỉ một lệnh hoặc một cú nhấp chuột, vì vậy chúng tôi khuyên bạn nên xem hướng dẫn cài đặt của họ cho Nút Xpand.
  2. Triển khai máy chủ front-end. Như những gì tôi đã nhận thấy ở đây về những thay đổi mà họ đã thực hiện, có vẻ như cách được khuyến nghị nhất để sử dụng Xpand là sử dụng MariaDB Enterprise Server 10.5. Xpand

Khả năng tương thích Phần cứng MariaDB Xpand

Nếu bạn tò mò về khả năng tương thích phần cứng của nó, Nền tảng MariaDB có thể chạy trong nhiều môi trường khác nhau. Miễn là các máy chủ MariaDB của bạn có thể chạy hoặc được lưu trữ trên các môi trường bạn hiện đang sử dụng, miễn là bạn có thể thiết lập các Nút Xpand cùng với các máy chủ MariaDB và đã cài đặt các plugin Xpand, thì điều này chắc chắn sẽ hoạt động. Từ tài liệu của họ, danh sách Môi trường Vật lý và Đám mây được liệt kê bên dưới:

  • Tại chỗ (tại chỗ)
  • Collocated (colo)
  • Đám mây riêng
  • Đám mây công cộng
  • Đã kết hợp

Đối với kiến ​​trúc phần cứng, cần lưu ý rằng kể từ MariaDB Enterprise Server 10.4.10-4 (2019-11-18), MariaDB Enterprise Server chỉ hỗ trợ các nền tảng kiến ​​trúc phần cứng x86_64.

Kết luận

MariaDB Xpand đơn giản hóa hiệu quả và khả năng mở rộng theo cách rất tiện lợi. Khía cạnh hấp dẫn nhất của sản phẩm này là bạn cũng có thể sử dụng các hàm SQL tiêu chuẩn của MariaDB. Nó có thể được nhúng thông qua môi trường MariaDB hiện có của bạn, có thể tận dụng các tính năng và khả năng mở rộng của nó. Mặc dù điều đó có thể hấp dẫn, nhưng nó yêu cầu giấy phép đặc biệt và phí lớn để bạn có thể tận dụng sản phẩm này. Nếu nó phục vụ mục đích cho ứng dụng doanh nghiệp của bạn, thì MariaDB Xpand này có thể đáng để thử.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 8 cách để thêm giây vào giá trị ngày giờ trong MariaDB

  2. Cách DATE_FORMAT () hoạt động trong MariaDB

  3. Triển khai một Nextcloud khả dụng cao với MySQL Galera Cluster và GlusterFS

  4. Cách DATEDIFF () hoạt động trong MariaDB

  5. Những gì khách hàng của chúng tôi mong muốn:Giới thiệu Tài liệu Doanh nghiệp của MariaDB