पार्टीशन बनाना

इस विषय में हम देखेंगे कि 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())
}