Skip to content

Commit 2452ae3

Browse files
Milvus-doc-botMilvus-doc-bot
authored andcommitted
Release new docs to master
1 parent 51c5704 commit 2452ae3

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

v2.6.x/site/en/faq/operational_faq.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,60 @@ title: Operational FAQ
66

77
# Operational FAQ
88

9+
#### What is a QueryNode delegator, and what are its responsibilities?
10+
11+
When a collection loads, a QueryNode subscribes to DML channels for insert and delete messages coming from the message queue. The QueryNode that subscribes to these channels, known as the delegator, is responsible for:
12+
- Managing increasing segments that require additional memory because of ongoing inserts.
13+
- Receiving delete messages and passing them to other QueryNodes that hold the relevant segments.
14+
15+
#### How to identify delegator nodes for a collection?
16+
17+
Use Birdwatcher.
18+
19+
Install Birdwatcher following [this](https://milvus.io/docs/birdwatcher_install_guides.md#Install-Birdwatcher), then run the following command:
20+
21+
```shell
22+
./birdwatcher
23+
# Find delegator nodes for your collection
24+
Milvus(my-release) > show segment-loaded-grpc --collection <your-collectionID>
25+
26+
ServerID 2
27+
Channel by-dev-rootcoord-dml_2, collection: 430123456789, version 1
28+
Leader view for channel: by-dev-rootcoord-dml_2
29+
Growing segments count: 1, ids: [430123456789_4]
30+
31+
# Map server ID to pod IP
32+
Milvus(my-release) > show session
33+
34+
Node(s) querynode
35+
ID: 1 Version: 2.4.0 Address: 10.0.0.4:19530
36+
ID: 2 Version: 2.4.0 Address: 10.0.0.5:19530
37+
ID: 3 Version: 2.4.0 Address: 10.0.0.6:19530
38+
```
39+
40+
#### What parameters can be adjusted if query node memory usage is unbalanced?
41+
42+
Sometimes, query node memory varies because some act as delegators using more RAM. If a delegator's memory is high, adjust queryCoord.delegatorMemoryOverloadFactor to offload sealed segments to other nodes and reduce RAM usage.
43+
- The default value is 0.1.
44+
- Increasing this value (e.g., to 0.3 or higher) will cause the system to offload more sealed segments from the overloaded delegator to other QueryNodes, helping balance memory usage. And you can also try to increase value up to 1, which means no sealed segments will be loaded in the delegator nodes.
45+
46+
If you don’t want to restart the cluster, you can modify milvus config with birdwatcher:
47+
48+
```
49+
./birdwatcher
50+
Offline > connect --etcd <your-etcd-ip>:2379 --auto
51+
52+
# Change delegatorMemoryOverloadFactor to 0.3 without restart, default value is 0.1
53+
set config-etcd --key queryCoord.delegatorMemoryOverloadFactor --value 0.3
54+
```
55+
56+
#### How to set shard_num for a collection?
57+
58+
As a best practice, for a collection with vectors of dimension 768, it is recommended to use at least 1 shard per ~100 million vectors. For heavy write use case, use 4 shards per ~100 million vectors.
59+
60+
E.g. if you have 100 million vectors, use 1-4 shards. If you have 500m vectors, use 5-10 shards.
61+
62+
963

1064
#### What if I failed to pull the Milvus Docker image from Docker Hub?
1165

0 commit comments

Comments
 (0)