Chuyển tới nội dung chính

Scale out database cluster

Scale out thêm node cho cluster, nên năng lực tăng theo số node thay vì theo kích thước node. Nếu muốn nâng cấu hình các node đang có, xem Thay đổi cấu hình tài nguyên database.

Hai việc này nằm ở hai chỗ khác nhau, và đây chính là điểm hay nhầm: resize nằm ở tab Resource, còn scale out nằm ở tab Overview.

Từng kiến trúc hỗ trợ gì

Kiến trúcThêm được gìỞ đâu
StandaloneKhông gì cảKhông hỗ trợ — Standalone theo định nghĩa chỉ có một node. Hãy scale up, hoặc chuyển sang Replica Set.
Replica SetNode chứa dữ liệuPhần Node configuration
Sharded Clustermongos routerPhần Mongos configuration
Sharded ClusterShardPhần Shard configuration

Config server của Sharded Cluster cố định 3 node. Không có control nào để đổi, ở trang này hay bất cứ đâu khác.

Tìm chỗ bấm

  1. Từ menu chính, chọn Database PlatformAll Databases hoặc Non-Relational Database.
  2. Bấm Cluster ID để mở cluster, giữ nguyên ở tab Overview.
  3. Cuộn tới phần cấu hình node bạn muốn mở rộng.
  4. Bấm biểu tượng bút chì cạnh Quantity.

Biểu tượng này rất dễ bỏ sót — nó nằm ngay cạnh giá trị Quantity chứ không nằm trên thanh công cụ.

Scale out Replica Set

Control mở ra drawer tên Update Number of Node, với New Number Of Nodes là dropdown chứ không phải ô nhập tự do.

Drawer Update Number of Node trên Replica Set, hiện 5 và 7 là hai giá trị node hợp lệ kế tiếp

Dropdown chỉ liệt kê những giá trị giữ cho replica set khoẻ mạnh. Replica set bầu Primary theo đa số, nên số thành viên chẵn không cho thêm khả năng chịu lỗi mà còn dễ hoà phiếu — vì vậy cluster 3 node được đề xuất 57, không phải 4 hay 6.

Chọn một giá trị rồi nhấn Update.

Scale out Sharded Cluster

Sharded Cluster có hai thứ mở rộng độc lập nhau, và chúng giải quyết hai vấn đề khác nhau.

Thêm mongos router

Mở rộng phần này khi client đang phải chờ ở tầng routing chứ không phải chờ dữ liệu — nhiều kết nối đồng thời, hoặc router chạy nóng trong khi shard vẫn rảnh.

Ở phần Mongos configuration, bút chì cạnh Quantity mở ra Update Number of Mongos Node. Nhập giá trị mới rồi nhấn Update.

TrườngQuy tắc
New Number Of NodesSố nguyên từ 2 đến 32

Thêm shard

Mở rộng phần này khi bản thân dữ liệu đã vượt sức các shard hiện tại — dung lượng hoặc throughput ghi, không phải routing.

Ở phần Shard configuration, bút chì cạnh Quantity mở ra Update Number of Shards.

Drawer Update Number of Shards, với ô nhập số shard và cảnh báo phân phối lại dữ liệu

TrườngQuy tắc
New Number Of ShardsSố nguyên từ 2 đến 32. Mỗi shard là replica set 3 node, nên số data node nhảy theo bội số ba.

Nhập giá trị mới rồi nhấn Update.

Điều gì sẽ xảy ra

Hai thao tác trên Sharded Cluster có cái giá rất khác nhau, và khác biệt đó nên quyết định bạn chạy chúng lúc nào.

Thao tácẢnh hưởng trong lúc chạy
Thêm mongos routerViệc định tuyến request bị ảnh hưởng tạm thời và latency tăng. Router mới bắt đầu nhận traffic sau khi join cluster. Không có gì phải di chuyển vì router không giữ dữ liệu.
Thêm shardMongoDB phân phối lại dữ liệu sang bộ shard mới. Hiệu năng tụt suốt quá trình, và với khối dữ liệu lớn thì quá trình đó không ngắn.

Hãy xem việc thêm shard như một cuộc migrate cần đặt lịch, không phải một thiết lập bật tắt. Thêm router thì gần với một thay đổi rolling thông thường hơn.

cảnh báo

Hai ràng buộc cần biết trước khi bắt đầu:

  • Scale out là một chiều. Dịch vụ chỉ hỗ trợ tăng số node và số shard. Không có cách nào bỏ một node, một router hay một shard về sau, và bạn vẫn trả tiền cho phần đã thêm — nên hãy tăng dần thay vì nhảy thẳng tới một con số phỏng đoán.
  • Mỗi lần một thay đổi. Số node và số shard không đổi được cùng lúc với bất kỳ thay đổi cấu hình nào khác. Hãy hoàn tất resize trước khi bắt đầu scale out, và chờ cluster về Running giữa hai lần.
ghi chú

Scale out tiêu tốn quota như mọi thay đổi tài nguyên khác. Một shard mới là thêm ba node, mỗi node một disk riêng — hãy kiểm tra Available quota ở tab Resource trước khi bắt đầu, nếu không thao tác sẽ bị từ chối.

Bước tiếp theo