การสร้างพาร์ติชัน
หัวข้อนี้อธิบายถึงวิธีการสร้างพาร์ติชันใน Milvus
Milvus อนุญาตให้ข้อมูลเวกเตอร์ส่วนใหญ่สามารถแบ่งเป็นพาร์ติชันจำนวนน้อย ซึ่งทำให้การค้นหาและการดำเนินการอื่น ๆ ถูก จำกัดไว้ในพาร์ติชันเดียว ทำให้ประสิทธิภาพการทำงานดีขึ้น
คอลเลกชันประกอบด้วยพาร์ติชันหนึ่งหรือมากกว่า ขณะสร้างคอลเลกชันใหม่ Milvus จะสร้างพาร์ติชันเริ่มต้นชื่อ _default
เพิ่มเติมอ่านเพิ่มเติมในทักษะชีวนิทยา-พาร์ติชัน
ตัวอย่างต่อไปนี้สร้างพาร์ติชันชื่อ novel
ในคอลเลกชัน book
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 อนุญาตให้ผู้ใช้โหลดพาร์ติชันเป็นหลายตัวอักษรเพื่อใช้ทรัพยากร CPU และหน่วยความจำของโหนดคิวรี่เพิ่มเติม เพิ่มประสิทธิภาพการค้นหาตามจำนวนคิวรี่และประสิทธิภาพ
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())
}