पार्टीशन बनाना
इस विषय में हम देखेंगे कि Milvus में पार्टीशन कैसे बनाया जाता है।
Milvus द्वारा बहुत सी वेक्टर डेटा को कुछ ही पार्टीशन में विभाजित किया जा सकता है। इससे खोज और अन्य कार्यों को केवल एक ही पार्टीशन के भीतर सीमित किया जा सकता है, जिससे प्रदर्शन में सुधार होता है।
किसी संग्रह में एक से अधिक पार्टीशन होते हैं। नई संग्रह बनाते समय, Milvus डिफॉल्ट पार्टीशन, _default
नामक को बना देता है। अधिक जानकारी के लिए, ग्लॉसरी - पार्टीशन पर देखें।
निम्नलिखित उदाहरण में book
संग्रह में novel
नामक पार्टीशन बनाने का अभ्यास किया गया है।
err := milvusClient.CreatePartition(
context.Background(), // ctx
"book", // CollectionName
"novel" // partitionName
)
if err != nil {
log.Fatal("Failed to create partition: ", err.Error())
}
पैरामीटर | विवरण |
---|---|
ctx |
API कॉल प्रक्रिया को नियंत्रित करने के लिए संदर्भ। |
CollectionName |
पार्टीशन बनाने वाले संग्रह का नाम। |
partitionName |
बनाने जा रहे पार्टीशन का नाम। |
सीमाएँ
सुविधा | अधिकतम सीमा |
---|---|
एक ही संग्रह में पार्टीशनों की संख्या | 4,096 |
पार्टीशन की मौजूदगी की जांच करना
संग्रह में निर्दिष्ट पार्टीशन की मौजूदगी की जांच करें।
hasPar, err := milvusClient.HasPartition(
context.Background(), // ctx
"book", // CollectionName
"novel", // partitionName
)
if err != nil {
log.Fatal("Failed to check partition: ", err.Error())
}
log.Println(hasPar)
सभी पार्टीशनों की सूची देखना
listPar, err := milvusClient.ShowPartitions(
context.Background(), // ctx
"book", // CollectionName
)
if err != nil {
log.Fatal("Failed to list partitions: ", err.Error())
}
log.Println(listPar)
पार्टीशन हटाना
err := milvusClient.DropPartition(
context.Background(), // ctx
"book", // CollectionName
"novel", // partitionName
)
if err != nil {
log.Fatal("Failed to delete partition: ", err.Error())
}
पार्टीशन लोड करना
Milvus उपयोगकर्ताओं को पार्टीशनों को अतिरिक्त क्वेरी नोड के सीपीयू और मेमोरी संसाधनों का लाभ लेने के लिए मल्टीपल रिप्लिका के रूप में लोड करने की अनुमति देता है, जिससे कुल QPS और Throughput में सुधार होती है।
err := milvusClient.LoadPartitions(
context.Background(), // ctx
"book", // CollectionName
[]string{"novel"}, // partitionNames
false // async
)
if err != nil {
log.Fatal("Failed to load partitions: ", err.Error())
}
पार्टीशन रिलीज करना
err := milvusClient.ReleasePartitions(
context.Background(), // ctx
"book", // CollectionName
[]string{"novel"} // partitionNames
)
if err != nil {
log.Fatal("Failed to release partitions: ", err.Error())
}