id: load_balance.md related_key: Load balance
summary: Learn how to balance query load in Milvus.
负载均衡
本主题介绍如何平衡 Milvus 中的查询负载。
Milvus 默认支持自动负载均衡。你可以配置 Milvus 以启用或禁用自动负载均衡。通过指定 queryCoord.balanceIntervalSeconds
, queryCoord.overloadedMemoryThresholdPercentage
和 queryCoord.memoryUsageMaxDifferencePercentage
,你可以更改触发自动负载均衡的阈值。
如果禁用自动负载均衡,你仍然可以手动平衡负载。
查看 segment 信息
获取输入 collection 的 sealed segment 的 segmentID
和 query node 的 nodeID
。
{{fragments/multiple_code.md}}
from pymilvus import utility
utility.get_query_segment_info("book")
// This function is under active development on the GO client.
milvusClient.getQuerySegmentInfo(
GetQuerySegmentInfoParam.newBuilder()
.withCollectionName("book")
.build());
await dataManager.getQuerySegmentInfo({
collectionName: "book",
});
show query_segment -c book
参数 | 说明 |
---|---|
collection_name |
用于查看 segment 信息的 collection 名称。 |
参数 | 说明 |
---|---|
collectionName |
用于查看 segment 信息的 collection 名称。 |
参数 | 说明 |
---|---|
CollectionName |
用于查看 segment 信息的 collection 名称。 |
选项 | 说明 |
---|---|
-c | 用于查看 segment 信息的 collection 名称。 |
迁移 segment
使用当前 query node 和新 query node 的 segmentID
和 nodeID
迁移 sealed segment 。
{{fragments/multiple_code.md}}
utility.load_balance(
src_node_id=3,
dst_node_ids=[4],
sealed_segment_ids=[431067441441538050]
)
// This function is under active development on the GO client.
milvusClient.loadBalance(LoadBalanceParam.newBuilder()
.withSourceNodeID(3L)
.addDestinationNodeID(4L)
.addSegmentID(431067441441538050L)
.build());
await dataManager.loadBalance({
src_nodeID: 3,
dst_nodeIDs: [4],
sealed_segmentIDs: [431067441441538050]
});
load_balance -s 3 -d 4 -ss 431067441441538050
参数 | 说明 |
---|---|
src_node_id |
源 segment query node 的 ID 。 |
dst_node_ids (Optional) |
目标 segment query node 的 ID 。如果该参数为空,Milvus 会自动将 segment 转移到其他 query node 。 |
sealed_segment_ids (Optional) |
要转移的 segment ID 。如果该参数为空,Milvus 会自动将源 query node 中的所有 sealed segment 传输到其他 query node 。 |
参数 | 说明 |
---|---|
src_nodeID |
源 segment query node 的 ID 。 |
dst_nodeIDs (Optional) |
目标 segment query node 的 ID 。如果该参数为空,Milvus 会自动将 segment 转移到其他 query node 。 |
sealed_segmentIDs (Optional) |
要转移的 segment ID 。如果该参数为空,Milvus 会自动将源 query node 中的所有 sealed segment 传输到其他 query node 。 |
参数 | 说明 |
---|---|
SourceNodeID |
源 segment query node 的 ID 。 |
DestinationNodeID (Optional) |
目标 segment query node 的 ID 。如果该参数为空,Milvus 会自动将 segment 转移到其他 query node 。 |
SegmentID (Optional) |
要转移的 segment ID 。如果该参数为空,Milvus 会自动将源 query node 中的所有 sealed segment 传输到其他 query node 。 |
选项 | 说明 |
---|---|
-s |
源 segment query node 的 ID 。 |
-d (Multiple) |
目标 segment query node 的 ID 。 |
-ss (Multiple) |
要转移的 segment ID 。 |
更多内容
- 了解更多 Milvus 的基本操作:
- 探索 Milvus SDK 的 API 参考: