Erstellen von Partitionen
In diesem Thema wird beschrieben, wie man Partitionen in Milvus erstellt.
Milvus ermöglicht es, den Großteil der Vektordaten in eine geringe Anzahl von Partitionen aufzuteilen. Dies ermöglicht es, Suche und andere Operationen auf eine einzelne Partition zu beschränken, was die Leistung verbessert.
Eine Sammlung besteht aus einer oder mehreren Partitionen. Beim Erstellen einer neuen Sammlung erstellt Milvus eine Standardpartition namens _default
. Weitere Informationen finden Sie im Glossar - Partition.
Das folgende Beispiel erstellt eine Partition namens novel
in der Sammlung book
.
err := milvusClient.CreatePartition(
context.Background(), // ctx
"book", // CollectionName
"novel" // partitionName
)
if err != nil {
log.Fatal("Fehler beim Erstellen der Partition: ", err.Error())
}
Parameter | Beschreibung |
---|---|
ctx |
Kontext zur Steuerung des API-Aufrufprozesses. |
CollectionName |
Name der Sammlung, in der eine Partition erstellt werden soll. |
partitionName |
Name der zu erstellenden Partition. |
Einschränkungen
Funktion | Maximale Grenze |
---|---|
Anzahl der Partitionen in einer einzelnen Sammlung | 4.096 |
Überprüfen des Vorhandenseins einer Partition
Überprüfen Sie, ob eine bestimmte Partition in einer Sammlung vorhanden ist.
hasPar, err := milvusClient.HasPartition(
context.Background(), // ctx
"book", // CollectionName
"novel", // partitionName
)
if err != nil {
log.Fatal("Fehler beim Überprüfen der Partition: ", err.Error())
}
log.Println(hasPar)
Auflisten aller Partitionen
listPar, err := milvusClient.ShowPartitions(
context.Background(), // ctx
"book", // CollectionName
)
if err != nil {
log.Fatal("Fehler beim Auflisten der Partitionen: ", err.Error())
}
log.Println(listPar)
Löschen einer Partition
err := milvusClient.DropPartition(
context.Background(), // ctx
"book", // CollectionName
"novel", // partitionName
)
if err != nil {
log.Fatal("Fehler beim Löschen der Partition: ", err.Error())
}
Laden einer Partition
Milvus ermöglicht es Benutzern, Partitionen als mehrere Repliken zu laden, um die CPU- und Speicherressourcen zusätzlicher Abfrageknoten zu nutzen und insgesamt die QPS und Durchsatz zu verbessern.
err := milvusClient.LoadPartitions(
context.Background(), // ctx
"book", // CollectionName
[]string{"novel"}, // partitionNames
false // async
)
if err != nil {
log.Fatal("Fehler beim Laden der Partitionen: ", err.Error())
}
Freigeben einer Partition
err := milvusClient.ReleasePartitions(
context.Background(), // ctx
"book", // CollectionName
[]string{"novel"} // partitionNames
)
if err != nil {
log.Fatal("Fehler beim Freigeben der Partitionen: ", err.Error())
}