Creazione delle Partizioni

Questo argomento descrive come creare partizioni in Milvus.

Milvus consente che la maggior parte dei dati vettoriali sia divisa in un numero limitato di partizioni. Ciò consente di limitare la ricerca e altre operazioni all'interno di una singola partizione, migliorandone le prestazioni.

Una collezione è composta da una o più partizioni. Quando si crea una nuova collezione, Milvus creerà una partizione predefinita, _default. Per ulteriori informazioni, fare riferimento al Glossario - Partizione.

Nell'esempio seguente viene creata una partizione chiamata novel nella collezione book.

err := milvusClient.CreatePartition(
  context.Background(),   // ctx
  "book",                 // NomeCollezione
  "novel"                 // NomePartizione
)
if err != nil {
  log.Fatal("Impossibile creare la partizione: ", err.Error())
}
Parametro Descrizione
ctx Contesto per controllare il processo di chiamata API.
NomeCollezione Nome della collezione in cui creare una partizione.
NomePartizione Nome della partizione da creare.

Limiti

Funzionalità Limite Massimo
Numero di partizioni in una singola collezione 4,096

Verifica dell'Esistenza di una Partizione

Verifica se una specifica partizione esiste in una collezione.

hasPar, err := milvusClient.HasPartition(
   context.Background(),   // ctx
   "book",                 // NomeCollezione
   "novel",                // NomePartizione
)
if err != nil {
   log.Fatal("Impossibile controllare la partizione: ", err.Error())
}
log.Println(hasPar)

Elenco di Tutte le Partizioni

listPar, err := milvusClient.ShowPartitions(
  context.Background(),   // ctx
  "book",                 // NomeCollezione
)
if err != nil {
  log.Fatal("Impossibile elencare le partizioni: ", err.Error())
}
log.Println(listPar)

Eliminazione di una Partizione

err := milvusClient.DropPartition(
  context.Background(),   // ctx
  "book",                 // NomeCollezione
  "novel",                // NomePartizione
)
if err != nil {
  log.Fatal("Impossibile eliminare la partizione: ", err.Error())
}

Caricamento di una Partizione

Milvus consente agli utenti di caricare partizioni come repliche multiple per sfruttare le risorse CPU e di memoria dei nodi di interrogazione aggiuntivi, migliorando il QPS complessivo e il throughput.

err := milvusClient.LoadPartitions(
  context.Background(),   // ctx
  "book",                 // NomeCollezione
  []string{"novel"},      // NomPartizioni
  false                   // asincrono
)
if err != nil {
  log.Fatal("Impossibile caricare le partizioni: ", err.Error())
}

Rilascio di una Partizione

err := milvusClient.ReleasePartitions(
  context.Background(),   // ctx
  "book",                 // NomeCollezione
  []string{"novel"}       // NomPartizioni
)
if err != nil {
  log.Fatal("Impossibile rilasciare le partizioni: ", err.Error())
}