Todos os produtos
Search
Central de documentação

Vector Retrieval Service for Milvus:Gerencie coleções

Última atualização: Jul 02, 2026

As coleções no Milvus assemelham-se às tabelas de um banco de dados relacional. Elas são as unidades fundamentais para organizar e gerenciar dados vetoriais e seus metadados escalares associados. Configure índices, partições e shards para personalizar o fluxo de processamento de dados e criar uma solução completa de ingestão, armazenamento, consulta e análise.

Pré-requisitos

Crie uma coleção

Crie rapidamente uma coleção

Crie uma coleção rapidamente especificando seu nome e a dimensão do vetor.

from pymilvus import MilvusClient

# Create a Milvus client.
client = MilvusClient(
    uri="http://c-xxxx.milvus.aliyuncs.com:19530",  # The public endpoint of the Milvus instance.
    token="<yourUsername>:<yourPassword>",  # The username and password for the Milvus instance.
    db_name="default"  # The name of the database to connect to. This example uses the default database.
)

# Create a collection named milvus_collection.
client.create_collection(
    collection_name="milvus_collection",
    dimension=5
)

res = client.get_load_state(
    collection_name="milvus_collection"
)
# Return the current loading status of the collection.
print(res)

Este código cria uma coleção com apenas dois campos: id (chave primária) e vector (campo vetorial). As propriedades auto_id e enable_dynamic_field vêm ativadas por padrão.

  • auto_id: Quando ativada, esta propriedade faz o Milvus atribuir automaticamente uma chave primária autoincremental a cada registro. Não é necessário definir o valor da chave primária.

  • enable_dynamic_field: Se ativada, esta propriedade trata qualquer campo além dos predefinidos id e vector como campos dinâmicos. O sistema os armazena como pares chave-valor em um campo especial chamado $meta. Esse recurso permite inserir dados em campos não definidos no schema.

Essas configurações oferecem flexibilidade para inserir e gerenciar dados sem definir todos os campos antecipadamente.

Crie uma coleção personalizada

Ao criar uma coleção personalizada, especifique os parâmetros de schema e de índice.

from pymilvus import MilvusClient, DataType, time

# Create a Milvus client.
client = MilvusClient(
    uri="http://c-xxxx.milvus.aliyuncs.com:19530",  # The Internet-accessible address of the Milvus instance.
    token="<yourUsername>:<yourPassword>",  # The username and password to log on to the Milvus instance.
    db_name="default"  # The name of the database to connect to. This example uses the default database.
)

# Create a schema.
schema = MilvusClient.create_schema(
    auto_id=False,  # Disable automatic ID generation.
    enable_dynamic_field=True,  # Enable dynamic fields.
)

# Add schema fields.
# Add an INT64 field named test_id as the primary key.
schema.add_field(field_name="test_id", datatype=DataType.INT64, is_primary=True)
# Add a 768-dimensional float vector field named test_vector.
schema.add_field(field_name="test_vector", datatype=DataType.FLOAT_VECTOR, dim=768)

# Define index parameters.
index_params = client.prepare_index_params()

# Add indexes.
index_params.add_index(
    field_name="test_id",  
    index_type="STL_SORT"  # Set the index type.
)

index_params.add_index(
    field_name="test_vector",  
    index_type="IVF_SQ8",      # Set the index type.
    metric_type="L2",          # Set the metric type, such as L2.
    params={"nlist": 128}
)
# Create a collection with the specified schema and index.
client.create_collection(
    collection_name="milvus_collection",  # Create a collection named milvus_collection.
    schema=schema,
    index_params=index_params
)

time.sleep(5)

res = client.get_load_state(
    collection_name="milvus_collection"
)

print(res)

Também é possível criar a coleção e o índice separadamente. O código a seguir mostra um exemplo.

# Create a collection named milvus_collection1.
client.create_collection(
    collection_name="milvus_collection1",
    schema=schema,
)
# Query the loading status of milvus_collection1.
res = client.get_load_state(
    collection_name="milvus_collection1"
)

print(res)
# Create an index for milvus_collection1.
client.create_index(
    collection_name="milvus_collection1",
    index_params=index_params
)
# Query the loading status of milvus_collection1 after the index is created.
res = client.get_load_state(
    collection_name="milvus_collection1"
)

print(res)

Visualize coleções

  • Visualize os detalhes de uma coleção específica:

    res = client.describe_collection(collection_name="milvus_collection")
    
    print(res)
    
  • Liste todas as coleções no banco de dados atual:

    res = client.list_collections()
    
    print(res)
    

Carregar e liberar uma coleção

Ao carregar uma coleção, o Milvus transfere os arquivos de índice associados para a memória. Ao liberá-la, o sistema remove esses arquivos da memória. Carregue a coleção na memória antes de executar buscas.

Carregar uma coleção

client.load_collection(
    collection_name="milvus_collection"
)

res = client.get_load_state(
    collection_name="milvus_collection"
)

print(res)

Liberar uma coleção

client.release_collection(
    collection_name="milvus_collection"
)

res = client.get_load_state(
    collection_name="milvus_collection"
)

print(res)

Exclua uma coleção

client.drop_collection(
    collection_name="milvus_collection"
)

client.drop_collection(
    collection_name="milvus_collection1"
)