milvus-logo
LFAI
Home
  • Comenzar
    • Instalar Milvus

Resumen de las opciones de despliegue de Milvus

Milvus es una base de datos vectorial escalable y de alto rendimiento. Es compatible con casos de uso de una amplia gama de tamaños, desde demostraciones que se ejecutan localmente en cuadernos Jupyter hasta clústeres Kubernetes de escala masiva que manejan decenas de miles de millones de vectores. Actualmente, existen tres opciones de despliegue de Milvus: Milvus Lite, Milvus Standalone y Milvus Distributed.

Milvus Lite

Milvus Lite es una biblioteca Python que puede importarse en sus aplicaciones. Como versión ligera de Milvus, es ideal para la creación rápida de prototipos en cuadernos Jupyter o para su ejecución en dispositivos inteligentes con recursos limitados. Milvus Lite soporta las mismas API que otras implementaciones de Milvus. El código del lado del cliente que interactúa con Milvus Lite también puede funcionar con instancias Milvus en otros modos de despliegue.

Para integrar Milvus Lite en sus aplicaciones, ejecute pip install pymilvus para instalarlo y utilice la sentencia MilvusClient("./demo.db") para instanciar una base de datos vectorial con un archivo local que persista todos sus datos. Para más detalles, consulte Ejecutar Milvus Lite.

Milvus Standalone

Milvus Standalone es un despliegue de servidor de una sola máquina. Todos los componentes de Milvus Standalone están empaquetados en una sola imagen Docker, lo que hace que el despliegue sea conveniente. Si tiene una carga de trabajo de producción pero prefiere no usar Kubernetes, ejecutar Milvus Standalone en una sola máquina con suficiente memoria es una buena opción. Además, Milvus Standalone soporta alta disponibilidad a través de la replicación maestro-esclavo.

Milvus Distribuido

Milvus Distributed puede desplegarse en clústeres Kubernetes. Este despliegue presenta una arquitectura nativa de la nube, en la que la carga de ingestión y las consultas de búsqueda son gestionadas por separado por nodos aislados, lo que permite la redundancia de los componentes críticos. Ofrece la máxima escalabilidad y disponibilidad, así como la flexibilidad de personalizar los recursos asignados en cada componente. Milvus Distributed es la mejor opción para los usuarios empresariales que ejecutan sistemas de búsqueda vectorial a gran escala en producción.

Elija el despliegue adecuado para su caso de uso

La selección de un modo de despliegue depende típicamente de la etapa de desarrollo de su aplicación:

  • Para la creación rápida de prototipos

    Si desea construir rápidamente algo como prototipo o con fines de aprendizaje, como demostraciones de Generación Aumentada de Recuperación (RAG), chatbots de IA, búsqueda multimodal, Milvus Lite por sí mismo o una combinación de Milvus Lite y Milvus Standalone es adecuado. Puede utilizar Milvus Lite en cuadernos para la creación rápida de prototipos y explorar varios enfoques, como diferentes estrategias de fragmentación en RAG. Es posible que desee desplegar la aplicación construida con Milvus Lite en una producción a pequeña escala para servir a usuarios reales, o validar la idea en conjuntos de datos más grandes, digamos más de unos pocos millones de vectores. Milvus Standalone es apropiado. La lógica de la aplicación para Milvus Lite aún puede compartirse ya que todas las implementaciones de Milvus tienen la misma API del lado del cliente. Los datos almacenados en Milvus Lite también pueden trasladarse a Milvus Standalone con una herramienta de línea de comandos.

  • Despliegue de producción a pequeña escala

    Para las primeras fases de producción, cuando el proyecto todavía está buscando la adecuación del producto al mercado y la agilidad es más importante que la escalabilidad, Milvus Standalone es la mejor opción. Aún puede escalar hasta 100M de vectores si se cuenta con suficientes recursos de máquina, mientras que requiere mucho menos DevOps que mantener un clúster K8s.

  • Despliegue de producción a gran escala

    A medida que su negocio crece rápidamente y la escala de datos excede la capacidad de un solo servidor, es hora de considerar Milvus Distributed. Puede seguir utilizando Milvus Standalone para el entorno de desarrollo o puesta en escena por su comodidad, y operar el clúster K8s que ejecuta Milvus Distributed. Esto puede sostenerle hacia decenas de miles de millones de vectores, así como proporcionar flexibilidad en la adaptación del tamaño del nodo para su carga de trabajo particular, como casos de alta lectura, escritura infrecuente o alta escritura, baja lectura.

  • Búsqueda local en dispositivos periféricos

    Para realizar búsquedas privadas o confidenciales en dispositivos periféricos, puede implementar Milvus Lite en el dispositivo sin depender de un servicio basado en la nube para realizar búsquedas de texto o imágenes. Esto es adecuado para casos como la búsqueda de documentos propios o la detección de objetos en el dispositivo.

La elección del modo de despliegue de Milvus depende de la fase y la escala de su proyecto. Milvus proporciona una solución flexible y potente para diversas necesidades, desde la creación rápida de prototipos hasta el despliegue empresarial a gran escala.

  • Milvus Lite se recomienda para conjuntos de datos más pequeños, de hasta unos pocos millones de vectores.
  • Milvus Standalone es adecuado para conjuntos de datos de tamaño medio, hasta 100 millones de vectores.
  • Milvus Distributed está diseñado para despliegues a gran escala, capaz de manejar conjuntos de datos desde 100 millones hasta decenas de miles de millones de vectores.

Select deployment option for your use case Seleccione la opción de despliegue para su caso de uso

Comparación de funcionalidades

CaracterísticasMilvus LiteMilvus IndependienteMilvus Distribuido
SDK / Lirario clientePython
gRPC
Python
Go
Java
Node.js
C#
RESTful
Python
Java
Go
Node.js
C#
RESTful
Tipos de datosVector denso
Vector disperso
Vector binario
Booleano
Entero
Punto flotante
VarChar
Matriz
JSON
Vector denso
Vector disperso
Vector binario
Booleano
Entero
Punto flotante
VarChar
Matriz
JSON
Vector denso
Vector disperso
Vector binario
Booleano
Entero
Punto flotante
VarChar
Matriz
JSON
Capacidades de búsquedaBúsqueda vectorial (Búsqueda RNA)
Filtrado de metadatos
Búsqueda por rangos
Consulta escalar
Obtención de entidades por clave principal
Búsqueda híbrida
Búsqueda vectorial (búsqueda RNA)
Filtrado de metadatos
Búsqueda por rango
Consulta escalar
Obtención de entidades por clave principal
Búsqueda híbrida
Búsqueda vectorial (Búsqueda RNA)
Filtrado de metadatos
Búsqueda por rango
Consulta escalar
Obtención de entidades por clave principal
Búsqueda híbrida
Operaciones CRUD✔️✔️✔️
Gestión avanzada de datosN/AControl de acceso
Partición
Clave de partición
Control de acceso
Partición
Clave de partición
Agrupación de recursos físicos
Niveles de coherenciaFuerteFuerte
Estancamiento limitado
Sesión
Eventual
Fuerte
Estancamiento limitado
Sesión
Eventual

Traducido porDeepL

Try Managed Milvus for Free

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

Get Started
Feedback

¿Fue útil esta página?