milvus-logo
LFAI
Home
  • Começar a trabalhar
    • Instalar Milvus

Visão geral das opções de implantação do Milvus

O Milvus é um banco de dados vetorial escalável e de alto desempenho. Ele suporta casos de uso de uma ampla gama de tamanhos, desde demonstrações executadas localmente em Jupyter Notebooks até clusters Kubernetes em grande escala que lidam com dezenas de bilhões de vetores. Atualmente, existem três opções de implantação do Milvus: Milvus Lite, Milvus Standalone e Milvus Distributed.

Milvus Lite

O Milvus Lite é uma biblioteca Python que pode ser importada para as suas aplicações. Como uma versão leve do Milvus, é ideal para prototipagem rápida em Jupyter Notebooks ou para execução em dispositivos inteligentes com recursos limitados. O Milvus Lite suporta as mesmas APIs que outras implementações do Milvus. O código do lado do cliente que interage com o Milvus Lite também pode funcionar com instâncias do Milvus em outros modos de implantação.

Para integrar o Milvus Lite em seus aplicativos, execute pip install pymilvus para instalá-lo e use a instrução MilvusClient("./demo.db") para instanciar um banco de dados vetorial com um arquivo local que persiste todos os seus dados. Para obter mais detalhes, consulte Executar o Milvus Lite.

Milvus Standalone

O Milvus Standalone é uma implantação de servidor de máquina única. Todos os componentes do Milvus Standalone são empacotados em uma única imagem Docker, tornando a implantação conveniente. Se tem uma carga de trabalho de produção mas prefere não utilizar Kubernetes, executar o Milvus Standalone numa única máquina com memória suficiente é uma boa opção. Além disso, o Milvus Standalone suporta alta disponibilidade através da replicação mestre-escravo.

Milvus Distribuído

O Milvus Distributed pode ser implantado em clusters Kubernetes. Esta implementação apresenta uma arquitetura nativa da nuvem, em que a carga de ingestão e as consultas de pesquisa são tratadas separadamente por nós isolados, permitindo a redundância de componentes críticos. Oferece a maior escalabilidade e disponibilidade, bem como a flexibilidade na personalização dos recursos alocados em cada componente. O Milvus Distributed é a melhor escolha para utilizadores empresariais que executam sistemas de pesquisa vetorial de grande escala em produção.

Escolha a implementação correta para o seu caso de utilização

A seleção de um modo de implementação depende normalmente da fase de desenvolvimento da sua aplicação:

  • Para prototipagem rápida

    Se pretender construir rapidamente algo como protótipo ou para fins de aprendizagem, como demos de Retrieval Augmented Generation (RAG), chatbots de IA, pesquisa multimodal, o Milvus Lite ou uma combinação do Milvus Lite e do Milvus Standalone é adequado. Pode utilizar o Milvus Lite em notebooks para prototipagem rápida e explorar várias abordagens, como diferentes estratégias de fragmentação em RAG. Poderá querer implementar a aplicação construída com o Milvus Lite numa produção em pequena escala para servir utilizadores reais, ou validar a ideia em conjuntos de dados maiores, digamos mais do que alguns milhões de vectores. O Milvus Standalone é apropriado. A lógica da aplicação do Milvus Lite pode ser partilhada, uma vez que todas as implementações do Milvus têm a mesma API do lado do cliente. Os dados armazenados no Milvus Lite também podem ser transferidos para o Milvus Standalone com uma ferramenta de linha de comando.

  • Implantação de produção em pequena escala

    Para a fase inicial de produção, quando o projeto ainda está à procura de um produto adequado ao mercado e a agilidade é mais importante do que a escalabilidade, o Milvus Standalone é a melhor escolha. Ele ainda pode escalar até 100M de vetores com recursos de máquina suficientes, enquanto exige muito menos DevOps do que manter um cluster K8s.

  • Implantação de produção em larga escala

    Como o seu negócio está a crescer rapidamente e a escala de dados excede a capacidade de um único servidor, é altura de considerar o Milvus Distributed. Pode continuar a usar o Milvus Standalone para desenvolvimento ou ambiente de teste por conveniência, e operar o cluster K8s que corre o Milvus Distributed. Isso pode sustentá-lo em dezenas de bilhões de vetores, além de fornecer flexibilidade na adaptação do tamanho do nó para sua carga de trabalho específica, como casos de alta leitura e gravação pouco frequente ou alta gravação e baixa leitura.

  • Pesquisa local em dispositivos de borda

    Para pesquisar através de dispositivos de ponta privados ou sensíveis, pode implementar o Milvus Lite no dispositivo sem depender de um serviço baseado na nuvem para fazer pesquisa de texto ou imagem. Isto é adequado para casos como a pesquisa de documentos proprietários ou a deteção de objectos no dispositivo.

A escolha do modo de implementação do Milvus depende da fase e da escala do seu projeto. O Milvus oferece uma solução flexível e poderosa para várias necessidades, desde a criação rápida de protótipos até à implementação em grande escala numa empresa.

  • O Milvus Lite é recomendado para conjuntos de dados mais pequenos, até alguns milhões de vectores.
  • O Milvus Standalone é adequado para conjuntos de dados de média dimensão, com escalas até 100 milhões de vectores.
  • O Milvus Distributed foi concebido para implementações em grande escala, capaz de lidar com conjuntos de dados de 100 milhões a dezenas de milhares de milhões de vectores.

Select deployment option for your use case Selecione a opção de implementação para o seu caso de utilização

Comparação de funcionalidades

FuncionalidadeMilvus LiteMilvus StandaloneMilvus Distribuído
SDK / Manual do clientePython
gRPC
Python
Go
Java
Node.js
C#
RESTful
Python
Java
Go
Node.js
C#
RESTful
Tipos de dadosVetor denso
Vetor esparso
Vetor binário
Booleano
Inteiro
Ponto flutuante
VarChar
Matriz
JSON
Vetor Denso
Vetor Esparso
Vetor Binário
Booleano
Inteiro
Ponto Flutuante
VarChar
Matriz
JSON
Vetor Denso
Vetor Esparso
Vetor Binário
Booleano
Inteiro
Ponto Flutuante
VarChar
Matriz
JSON
Capacidades de pesquisaPesquisa vetorial (Pesquisa ANN)
Filtragem de metadados
Pesquisa de intervalos
Consulta escalar
Obter entidades por chave primária
Pesquisa híbrida
Pesquisa vetorial (Pesquisa ANN)
Filtragem de metadados
Pesquisa de intervalos
Consulta escalar
Obter entidades por chave primária
Pesquisa híbrida
Pesquisa vetorial (Pesquisa ANN)
Filtragem de metadados
Pesquisa de intervalos
Consulta escalar
Obter entidades por chave primária
Pesquisa híbrida
Operações CRUD✔️✔️✔️
Gestão avançada de dadosN/AControlo de acesso
Partição
Chave de partição
Controlo de acesso
Partição
Chave de partição
Agrupamento de recursos físicos
Níveis de consistênciaForteForte
Staleness limitado
Sessão
Eventual
Forte
Staleness limitado
Sessão
Eventual

Traduzido porDeepLogo

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
Feedback

Esta página foi útil?