🚀 Experimente o Zilliz Cloud, o Milvus totalmente gerenciado, gratuitamente—experimente um desempenho 10x mais rápido! Experimente Agora>>

milvus-logo
LFAI
  • Home
  • Blog
  • Com que versão do Milvus começar?

Com que versão do Milvus começar?

  • Engineering
February 19, 2024
Chris Churilo

A seleção da versão adequada do Milvus é fundamental para o sucesso de qualquer projeto que utilize a tecnologia de pesquisa vetorial. Com diferentes versões do Milvus adaptadas a diferentes requisitos, compreender a importância de selecionar a versão correta é crucial para alcançar os resultados desejados.

A versão certa do Milvus pode ajudar um programador a aprender e a criar protótipos rapidamente ou ajudar a otimizar a utilização de recursos, simplificar os esforços de desenvolvimento e garantir a compatibilidade com as infra-estruturas e ferramentas existentes. Em última análise, trata-se de manter a produtividade do programador e melhorar a eficiência, a fiabilidade e a satisfação do utilizador.

Versões disponíveis do Milvus

Estão disponíveis três versões do Milvus para os programadores e todas elas são de código aberto. As três versões são o Milvus Lite, o Milvus Standalone e o Milvus Cluster, que diferem nas funcionalidades e na forma como os utilizadores planeiam utilizar o Milvus a curto e longo prazo. Portanto, vamos explorá-las individualmente.

Milvus Lite

Como o nome sugere, o Milvus Lite é uma versão leve que se integra perfeitamente com o Google Colab e o Jupyter Notebook. É empacotado como um único binário sem dependências adicionais, tornando-o fácil de instalar e executar na sua máquina ou incorporar em aplicações Python. Além disso, o Milvus Lite inclui um servidor independente Milvus baseado em CLI, proporcionando flexibilidade para executá-lo diretamente em sua máquina. Se o integra no seu código Python ou o utiliza como um servidor autónomo, depende inteiramente da sua preferência e dos requisitos específicos da aplicação.

Caraterísticas e Capacidades

O Milvus Lite inclui todas as funcionalidades principais de pesquisa vetorial do Milvus.

  • Recursos de pesquisa: Suporta pesquisas top-k, de intervalo e híbridas, incluindo filtragem de metadados, para atender a diversos requisitos de pesquisa.

  • Tipos de índices e métricas de similaridade: Oferece suporte para 11 tipos de índices e cinco métricas de similaridade, fornecendo flexibilidade e opções de personalização para seu caso de uso específico.

  • Processamento de dados: Permite o processamento em lote (Apache Parquet, Arrays, JSON) e em fluxo, com integração perfeita através de conectores para Airbyte, Apache Kafka e Apache Spark.

  • Operações CRUD: Oferece suporte CRUD completo (criar, ler, atualizar/acrescentar, eliminar), capacitando os utilizadores com capacidades abrangentes de gestão de dados.

Aplicações e limitações

O Milvus Lite é ideal para prototipagem rápida e desenvolvimento local, oferecendo suporte para configuração rápida e experimentação com conjuntos de dados de pequena escala na sua máquina. No entanto, as suas limitações tornam-se evidentes quando se faz a transição para ambientes de produção com conjuntos de dados maiores e requisitos de infra-estruturas mais exigentes. Assim, embora o Milvus Lite seja uma excelente ferramenta para exploração e testes iniciais, ele pode não ser adequado para a implantação de aplicativos em configurações de alto volume ou prontas para produção.

Recursos disponíveis

Milvus autónomo

O Milvus oferece dois modos operacionais: Standalone e Cluster. Ambos os modos são idênticos no que diz respeito às principais funcionalidades da base de dados vetorial e diferem no que diz respeito ao suporte do tamanho dos dados e aos requisitos de escalabilidade. Esta distinção permite-lhe selecionar o modo que melhor se alinha com o tamanho do seu conjunto de dados, volume de tráfego e outros requisitos de infraestrutura para produção.

O Milvus Standalone é um modo de funcionamento do sistema de base de dados vetorial Milvus em que este funciona de forma independente como uma única instância, sem qualquer agrupamento ou configuração distribuída. Neste modo, o Milvus funciona num único servidor ou máquina, fornecendo funcionalidades como a indexação e a pesquisa de vectores. É adequado para situações em que a escala de volume de dados e de tráfego é relativamente pequena e não requer as capacidades distribuídas fornecidas por uma configuração em cluster.

Caraterísticas e capacidades

  • Alto desempenho: Realizar pesquisas vectoriais em conjuntos de dados maciços (milhares de milhões ou mais) com velocidade e eficiência excepcionais.

  • Capacidades de pesquisa: Suporta pesquisas top-k, de intervalo e híbridas, incluindo filtragem de metadados, para atender a diversos requisitos de pesquisa.

  • Tipos de índices e métricas de similaridade: Oferece suporte para 11 tipos de índices e 5 métricas de similaridade, proporcionando flexibilidade e opções de personalização para o seu caso de utilização específico.

  • Processamento de dados: Permite o processamento em lote (Apache Parquet, Arrays, Json) e em fluxo, com integração perfeita através de conectores para Airbyte, Apache Kafka e Apache Spark.

  • Replicação de dados e failover: Os recursos integrados de replicação e failover/failback garantem a integridade dos dados e a disponibilidade do aplicativo, mesmo durante interrupções ou falhas.

  • Escalabilidade: Alcance a escalabilidade dinâmica com o escalonamento no nível do componente, permitindo o escalonamento contínuo para cima e para baixo com base na demanda. O Milvus pode escalonar automaticamente no nível do componente, otimizando a alocação de recursos para aumentar a eficiência.

  • Multitenancy: Suporta multi-tenancy com a capacidade de gerenciar até 10.000 coleções/partições em um cluster, fornecendo utilização eficiente de recursos e isolamento para diferentes usuários ou aplicações.

  • Operações CRUD: Oferece suporte completo a CRUD (criar, ler, atualizar/acrescentar, eliminar), dando aos utilizadores capacidades abrangentes de gestão de dados.

Componentes essenciais:

  • Milvus: O componente funcional principal.

  • etcd: O mecanismo de metadados responsável por acessar e armazenar metadados dos componentes internos do Milvus, incluindo proxies, nós de índice e outros.

  • MinIO: O mecanismo de armazenamento responsável pela persistência de dados no Milvus.

Figura 1: Arquitetura autónoma do Milvus

Recursos disponíveis

Milvus Cluster

O Milvus Cluster é um modo de funcionamento do sistema de base de dados vetorial Milvus em que este funciona e é distribuído por vários nós ou servidores. Neste modo, as instâncias do Milvus são agrupadas em clusters para formar um sistema unificado que pode lidar com volumes maiores de dados e cargas de tráfego mais elevadas em comparação com uma configuração autónoma. O Milvus Cluster oferece escalabilidade, tolerância a falhas e recursos de balanceamento de carga, tornando-o adequado para cenários que precisam lidar com grandes volumes de dados e atender a muitas consultas simultâneas de forma eficiente.

Caraterísticas e capacidades

  • Herda todos os recursos disponíveis no Milvus Standalone, incluindo pesquisa vetorial de alto desempenho, suporte a vários tipos de índices e métricas de similaridade e integração perfeita com estruturas de processamento em lote e fluxo.

  • Oferece disponibilidade, desempenho e otimização de custos incomparáveis, aproveitando a computação distribuída e o balanceamento de carga em vários nós.

  • Permite implementar e escalar cargas de trabalho seguras e de nível empresarial com custos totais mais baixos, utilizando eficientemente os recursos em todo o cluster e optimizando a atribuição de recursos com base nas exigências da carga de trabalho.

Componentes essenciais:

O Milvus Cluster inclui oito componentes de microsserviço e três dependências de terceiros. Todos os microsserviços podem ser implantados no Kubernetes independentemente uns dos outros.

Componentes de microsserviços

  • Coordenação de raiz

  • Proxy

  • Coordenação de consulta

  • Nó de consulta

  • Coordenada de índice

  • Nó de índice

  • Coordenada de dados

  • Nó de dados

Dependências de terceiros

  • etcd: Armazena metadados para vários componentes no cluster.

  • MinIO: Responsável pela persistência de dados de arquivos grandes no cluster, como arquivos de índice e de log binário.

  • Pulsar: Gerencia logs de operações de mutação recentes, gera logs de streaming e fornece serviços de publicação e assinatura de logs.

Figura 2: Arquitetura do Cluster Milvus

Recursos disponíveis

Tomando a decisão sobre qual versão do Milvus usar

Ao decidir qual a versão do Milvus a utilizar no seu projeto, deve considerar factores como o tamanho do conjunto de dados, o volume de tráfego, os requisitos de escalabilidade e as restrições do ambiente de produção. O Milvus Lite é perfeito para a criação de protótipos no seu computador portátil. O Milvus Standalone oferece alto desempenho e flexibilidade para realizar pesquisas vetoriais em seus conjuntos de dados, tornando-o adequado para implantações de menor escala, CI / CD e implantações offline quando você não tem suporte para Kubernetes ... E, finalmente, o Milvus Cluster oferece disponibilidade incomparável, escalabilidade e otimização de custos para cargas de trabalho de nível empresarial, tornando-o a escolha preferida para ambientes de produção de grande escala e altamente disponíveis.

Existe outra versão que é uma versão sem complicações, que é uma versão gerida do Milvus chamada Zilliz Cloud.

Em última análise, a versão do Milvus dependerá do seu caso de utilização específico, dos requisitos de infraestrutura e dos objectivos a longo prazo. Ao avaliar cuidadosamente estes factores e ao compreender as caraterísticas e capacidades de cada versão, pode tomar uma decisão informada que se alinhe com as necessidades e objectivos do seu projeto. Quer escolha o Milvus Standalone ou o Milvus Cluster, pode tirar partido do poder das bases de dados vectoriais para melhorar o desempenho e a eficiência das suas aplicações de IA.

Try Managed Milvus for Free

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

Get Started

Like the article? Spread the word

Continue Lendo