Bölümler Oluşturma
Bu konu, Milvus'ta bölümler oluşturmanın nasıl yapıldığını açıklar.
Milvus, vektör verilerinin çoğunu küçük bir sayıda bölüme ayırmayı mümkün kılar. Bu, arama ve diğer işlemlerin tek bir bölüm içinde sınırlı kalmasını sağlayarak performansı artırır.
Bir koleksiyon, bir veya daha fazla bölümden oluşur. Yeni bir koleksiyon oluşturulurken Milvus, _default
adında varsayılan bir bölüm oluşturacaktır. Daha fazla bilgi için Parça listesine bakınız.
Aşağıdaki örnek, book
koleksiyonunda novel
adında bir bölüm oluşturur.
err := milvusClient.CreatePartition(
context.Background(), // ctx
"book", // CollectionName
"novel" // partitionName
)
if err != nil {
log.Fatal("Bölüm oluşturma başarısız: ", err.Error())
}
Parametre | Açıklama |
---|---|
ctx |
API çağrısı sürecini kontrol etmek için bağlam. |
CollectionName |
Bölüm oluşturulacak koleksiyonun adı. |
partitionName |
Oluşturulacak bölümün adı. |
Sınırlamalar
Özellik | Maksimum Limit |
---|---|
Bir koleksiyonda maksimum bölüm sayısı | 4,096 |
Bölümün Varlığını Doğrulama
Belirli bir bölümün bir koleksiyonda var olup olmadığını doğrulayın.
hasPar, err := milvusClient.HasPartition(
context.Background(), // ctx
"book", // CollectionName
"novel", // partitionName
)
if err != nil {
log.Fatal("Bölüm kontrolünde hata oluştu: ", err.Error())
}
log.Println(hasPar)
Tüm Bölümleri Listeleme
listPar, err := milvusClient.ShowPartitions(
context.Background(), // ctx
"book", // CollectionName
)
if err != nil {
log.Fatal("Bölümleri listeleme başarısız: ", err.Error())
}
log.Println(listPar)
Bir Bölümü Silme
err := milvusClient.DropPartition(
context.Background(), // ctx
"book", // CollectionName
"novel", // partitionName
)
if err != nil {
log.Fatal("Bölüm silme başarısız: ", err.Error())
}
Bir Bölümü Yükleme
Milvus, kullanıcılara bölümleri ek CPU ve bellek kaynaklarından yararlanmak için çoklu kopyalar olarak yüklemelerine izin verir, bu da genel QPS ve verimliliği artırır.
err := milvusClient.LoadPartitions(
context.Background(), // ctx
"book", // CollectionName
[]string{"novel"}, // partitionNames
false // async
)
if err != nil {
log.Fatal("Bölümleri yükleme başarısız: ", err.Error())
}
Bir Bölümü Serbest Bırakma
err := milvusClient.ReleasePartitions(
context.Background(), // ctx
"book", // CollectionName
[]string{"novel"} // partitionNames
)
if err != nil {
log.Fatal("Bölümleri serbest bırakma başarısız: ", err.Error())
}