Terminología
AutoID
AutoID es un atributo del campo primario que determina si se activa el Autoincremento para el campo primario. El valor de AutoID se define en base a una marca de tiempo. Para obtener más información, consulte create_schema.
Autoíndice
Milvus decide automáticamente el tipo de índice y los parámetros más apropiados para un campo específico basándose en datos empíricos. Esto es ideal para situaciones en las que no necesita controlar los parámetros específicos del índice. Para más información, consulte add_index.
Attu
Attu es una herramienta de administración todo en uno para Milvus que reduce significativamente la complejidad y el coste de la gestión del sistema.
Birdwatcher
Birdwatcher es una herramienta de depuración para Milvus que se conecta a etcd, permitiéndole monitorizar el estado del servidor Milvus y hacer ajustes en tiempo real. También soporta copias de seguridad de archivos etcd, ayudando a los desarrolladores en la solución de problemas.
Escritor a granel
Bulk Writer es una herramienta de procesamiento de datos proporcionada por Milvus SDKs (por ejemplo, PyMilvus, Java SDK), diseñada para convertir conjuntos de datos sin procesar en un formato compatible con Milvus para una importación eficiente.
Inserción masiva
Bulk Insert es una API que mejora el rendimiento de la escritura al permitir la importación de varios archivos en una sola solicitud, optimizando las operaciones con grandes conjuntos de datos.
Cardinal
Cardinal, desarrollado por Zilliz Cloud, es un algoritmo de búsqueda vectorial de vanguardia que ofrece una calidad de búsqueda y un rendimiento sin precedentes. Con su diseño innovador y sus amplias optimizaciones, Cardinal supera a Knowhere en varias veces hasta un orden de magnitud, a la vez que maneja de forma adaptativa diversos escenarios de producción, como tamaños de K variables, alto filtrado, diferentes distribuciones de datos, etc.
Canal
Milvus utiliza dos tipos de canales, PChannel y VChannel. Cada PChannel corresponde a un tema para el almacenamiento de registros, mientras que cada VChannel corresponde a un fragmento de una colección.
Colección
En Milvus, una colección es equivalente a una tabla en un sistema de gestión de base de datos relacional (RDBMS). Las colecciones son objetos lógicos principales utilizados para almacenar y gestionar entidades. Para más información, consulte Gestionar colecciones.
Dependencia
Una dependencia es un programa del que depende otro programa para funcionar. Las dependencias de Milvus incluyen etcd (almacena metadatos), MinIO o S3 (almacenamiento de objetos) y Pulsar (gestiona registros de instantáneas). Para más información, consulte Gestionar dependencias.
Esquema dinámico
El esquema dinámico le permite insertar entidades con nuevos campos en una colección sin modificar el esquema existente. Esto significa que puede insertar datos sin conocer el esquema completo de una colección y puede incluir campos que aún no están definidos. Puede activar esta capacidad sin esquema activando el campo dinámico al crear una colección. Para más información, consulte Activar campo dinámico.
Incrustaciones
Milvus ofrece funciones de incrustación incorporadas que funcionan con proveedores de incrustación populares. Antes de crear una colección en Milvus, puede utilizar estas funciones para generar incrustaciones para sus conjuntos de datos, agilizando el proceso de preparación de datos y búsquedas de vectores. Para crear incrustaciones en acción, consulte Usar el modelo de PyMilvus para generar incrustaciones de texto.
Entidad
Una entidad consiste en un grupo de campos que representan objetos del mundo real. Cada entidad en Milvus está representada por una clave primaria única.
Puede personalizar las claves primarias. Si no las configura manualmente, Milvus asigna automáticamente la clave primaria a las entidades. Si elige personalizar la clave primaria, tenga en cuenta que Milvus no soporta la desduplicación de claves primarias por ahora. Por lo tanto, puede haber claves primarias duplicadas en la misma colección. Para más información, consulte Insertar Entidades.
Campo
Un campo en una colección Milvus es equivalente a una columna de tabla en un RDBMS. Los campos pueden ser campos escalares para datos estructurados (por ejemplo, números, cadenas), o campos vectoriales para vectores incrustados.
Filtro
Milvus admite el filtrado escalar mediante la búsqueda con predicados, lo que le permite definir condiciones de filtrado dentro de las consultas y búsquedas para refinar los resultados.
Búsqueda filtrada
La búsqueda filtrada aplica filtros escalares a las búsquedas vectoriales, permitiéndole refinar los resultados de la búsqueda basándose en criterios específicos. Para más información, consulte Búsqueda filtrada.
Búsqueda híbrida
La búsquedahíbrida es una API para la búsqueda híbrida desde Milvus 2.4.0. Puede buscar en múltiples campos vectoriales y fusionarlos. La búsqueda vectorial combinada con el filtrado de campos escalares se denomina "búsqueda filtrada". Para más información, consulte Búsqueda híbrida.
Índice
Un índice vectorial es una estructura de datos reorganizada derivada de datos brutos que puede acelerar enormemente el proceso de búsqueda de similitud vectorial. Milvus admite una amplia gama de tipos de índice tanto para campos vectoriales como para campos escalares. Para más información, consulte Tipos de índices vectoriales.
Conector Kafka-Milvus
El conector Kafka-Milvus se refiere a un conector de sumidero Kafka para Milvus. Le permite transmitir datos vectoriales desde Kafka a Milvus.
Knowhere
Knowhere es el motor central de ejecución vectorial de Milvus que incorpora varias bibliotecas de búsqueda de similitud vectorial, incluyendo Faiss, Hnswlib y Annoy. Knowhere también está diseñado para soportar computación heterogénea. Controla en qué hardware (CPU o GPU) ejecutar la creación de índices y las peticiones de búsqueda. Así es como Knowhere obtiene su nombre - sabiendo dónde ejecutar las operaciones.
Agente de registros
El log broker es un sistema de publicación-suscripción que soporta la reproducción. Es responsable de la persistencia de datos en streaming, la ejecución de consultas asíncronas fiables, la notificación de eventos y la devolución de los resultados de las consultas. También garantiza la integridad de los datos incrementales cuando los nodos trabajadores se recuperan de una avería del sistema.
Instantánea de registro
Una instantánea de registro es un registro binario, una unidad más pequeña en segmento que registra y gestiona las actualizaciones y los cambios realizados en los datos de Milvus. Los datos de un segmento persisten en múltiples binlogs. Hay tres tipos de binlogs en Milvus: InsertBinlog, DeleteBinlog y DDLBinlog. Para obtener más información, consulte Metaalmacenamiento.
Suscriptor de registro
Los suscriptores de registros se suscriben a la secuencia de registros para actualizar los datos locales y proporcionar servicios en forma de copias de sólo lectura.
Almacenamiento de mensajes
El almacenamiento de mensajes es el motor de almacenamiento de registros de Milvus. Milvus admite Kafka o Pulsa como almacenamiento de mensajes. Para más información, consulte Configurar el almacenamiento de mensajes.
Tipo de métrica
Los tipos de métrica de similitud se utilizan para medir similitudes entre vectores. Actualmente, Milvus admite la distancia euclidiana (L2), el producto interior (IP), la similitud coseno (COSINE) y los tipos de métrica binarios. Puede elegir el tipo de métrica más apropiado en función de su escenario. Para más información, consulte Métricas de similitud.
Mmap
Los archivos mapeados en memoria permiten un manejo eficaz de los datos al mapear el contenido del archivo directamente en la memoria. Esto resulta especialmente útil cuando la memoria es limitada y no es posible cargar todos los datos. Esta técnica puede aumentar la capacidad de los datos y mantener el rendimiento hasta cierto punto. Sin embargo, si los datos superan ampliamente la capacidad de memoria, la velocidad de búsqueda y consulta podría disminuir considerablemente. Para más información, consulte Almacenamiento de datos habilitado para MMap.
Milvus Backup
Milvus Backup es una herramienta para crear copias de datos, que pueden utilizarse para restaurar el original tras una pérdida de datos.
Milvus CDC
MilvusCDC (Change data capture) es una herramienta fácil de usar que puede capturar y sincronizar datos incrementales en instancias de Milvus. Garantiza la fiabilidad de los datos empresariales transfiriéndolos sin problemas entre las instancias de origen y de destino, lo que permite realizar fácilmente copias de seguridad incrementales y recuperaciones en caso de desastre.
Milvus CLI
La interfaz de línea de comandos (CLI) deMilvus es una herramienta de línea de comandos que admite la conexión a bases de datos, operaciones de datos e importación y exportación de datos. Basada en Milvus Python SDK, permite la ejecución de comandos a través de un terminal utilizando indicaciones interactivas de línea de comandos.
Milvus Migration
MilvusMigration es una herramienta de código abierto diseñada para facilitar la migración de datos de varias fuentes de datos a Milvus 2.x.
Cluster de Milvus
En el despliegue en clúster de Milvus, los servicios son proporcionados por un grupo de nodos para lograr una alta disponibilidad y una fácil escalabilidad.
Milvus independiente
En el despliegue autónomo de Milvus, todas las operaciones, incluida la inserción de datos, la creación de índices y la búsqueda de similitud vectorial, se completan en un único proceso.
Multivector
Milvus soporta múltiples campos vectoriales en una colección desde 2.4.0. Para más información, consulte Búsqueda híbrida.
Partición
Una partición es una división de una colección. Milvus permite dividir los datos de la colección en múltiples partes en el almacenamiento físico. Este proceso se denomina partición, y cada partición puede contener múltiples segmentos. Para más información, consulte Gestionar particiones.
Clave de partición
El atributo de clave de partición de un campo permite la segregación de entidades en particiones distintas en función de sus valores de clave de partición. Esta agrupación garantiza que las entidades que comparten el mismo valor de clave se almacenan juntas, lo que puede acelerar las operaciones de búsqueda al permitir que el sistema omita las particiones irrelevantes durante las consultas filtradas por el campo de clave de partición. Para más información, consulte Utilizar clave de partición.
PChannel
PChannel significa canal físico. Cada PChannel corresponde a un tema para el almacenamiento de registros. Por defecto, se asignará un grupo de 16 PChannels para almacenar registros que registran la inserción, eliminación y actualización de datos cuando se inicia el clúster Milvus. Para obtener más información, consulte Configuraciones relacionadas con los canales de mensajes.
PyMilvus
PyMilvus es un SDK Python de Milvus. Su código fuente es de código abierto y está alojado en GitHub. Usted tiene la flexibilidad de elegir MilvusClient (nueva versión Python SDK) o el módulo original ORM para hablar con Milvus.
Consulta
Query es una API que realiza filtrado escalar con una expresión booleana especificada como filtro. Para más información, consulte Get & Scalar Query.
Búsqueda por rango
La búsqueda por rango permite encontrar vectores que se encuentran a una distancia determinada del vector de búsqueda. Para más información, consulte Búsqueda por rango.
Esquema
El esquema es la metainformación que define el tipo y la propiedad de los datos. Cada colección tiene su propio esquema de colección que define todos los campos de una colección, la habilitación automática de asignación de ID (clave primaria) y la descripción de la colección. Los esquemas de campo también se incluyen en los esquemas de colección, que definen el nombre, el tipo de datos y otras propiedades de un campo. Para obtener más información, consulte Gestionar esquema.
Búsqueda
La búsqueda es una API que realiza una operación para llevar a cabo una búsqueda de similitud vectorial, que requiere datos vectoriales para su ejecución. Para más información, consulte Búsqueda de un solo vector.
Segmento
Un segmento es un archivo de datos creado automáticamente que almacena datos insertados. Una colección puede contener varios segmentos, y cada segmento puede contener numerosas entidades. Durante una búsqueda de similitud vectorial, Milvus examina cada segmento para compilar los resultados de la búsqueda.
Hay dos tipos de segmentos: en crecimiento y sellados. Un segmento en crecimiento continúa recopilando nuevos datos hasta que alcanza un umbral o límite de tiempo específico, tras lo cual se sella. Una vez sellado, un segmento ya no acepta nuevos datos y se transfiere al almacenamiento de objetos. Mientras tanto, los datos entrantes se dirigen a un nuevo segmento en crecimiento. La transición de un segmento en crecimiento a uno sellado se activa al alcanzar el límite de entidad predefinido o al superar la duración máxima permitida en el estado de crecimiento. Para más información, consulte Detalles de diseño.
Conector Spark-Milvus
Spark-Milvus Connector proporciona una integración perfecta entre Apache Spark y Milvus, combinando las características de procesamiento de datos y aprendizaje automático (ML) de Apache Spark con las capacidades de almacenamiento y búsqueda de datos vectoriales de Milvus.
Shard
Milvus mejora el rendimiento de la escritura de datos distribuyendo las operaciones de escritura a través de múltiples nodos utilizando shards, que se organizan basándose en el hash de las claves primarias. Esto aprovecha las capacidades de computación paralela del clúster.
La partición reduce la carga de lectura especificando un nombre de partición, mientras que la fragmentación distribuye la carga de escritura entre varios servidores.
Vector disperso
Los vectores dispersos representan palabras o frases utilizando incrustaciones vectoriales en las que la mayoría de los elementos son cero, y sólo un elemento distinto de cero indica la presencia de una palabra específica. Los modelos de vectores dispersos, como SPLADEv2, superan a los modelos densos en la búsqueda de conocimiento fuera del dominio, el conocimiento de palabras clave y la interpretabilidad. Para más información, consulte Vectores dispersos.
Datos no estructurados
Los datos no estructurados, que incluyen imágenes, vídeo, audio y lenguaje natural, son información que no sigue un modelo o forma de organización predefinidos. Este tipo de datos representa alrededor del 80% de los datos del mundo, y pueden convertirse en vectores utilizando varios modelos de inteligencia artificial (IA) y ML.
VChannel
VChannel significa canal lógico. Cada VChannel representa un fragmento de una colección. A cada colección se le asignará un grupo de VChannels para registrar la inserción, eliminación y actualización de datos. Los VChannels están separados lógicamente pero comparten recursos físicamente.
Vector
Un vector de incrustación es una abstracción de características de datos no estructurados, como correos electrónicos, datos de sensores IoT, fotos de Instagram, estructuras de proteínas, etc. En términos matemáticos, un vector de incrustación es una matriz de números en coma flotante o binarios. Las técnicas modernas de incrustación se utilizan para convertir datos no estructurados en vectores de incrustación. Milvus soporta tanto vectores densos como dispersos desde la versión 2.4.0.
Nube Zilliz
Milvus totalmente gestionado en Zilliz Cloud, con más funciones empresariales y un rendimiento altamente optimizado.