Athrun Data Intelligence


Servicio de Amazon OpenSearch ha estado proporcionando capacidades de bases de datos vectoriales para permitir búsquedas eficientes de similitud vectorial utilizando índices especializados de vecinos K-Nearest (K-NN) a los clientes desde 2019. Esta funcionalidad ha admitido varios casos de uso, como búsqueda semántica, concepción de concepción de recuperación (RAG) con modelos de idiomas grandes (LLMS) y búsqueda de medios ricos. Con la crisis de las capacidades de IA y la creciente creación de aplicaciones generativas de IA, los clientes buscan bases de datos vectoriales con conjuntos de características ricas.

El servicio de OpenSearch incluso ofrece una decisión de almacenamiento de múltiples niveles a sus clientes en forma de niveles ultragráficos y fríos. Ultrawarm proporciona un almacenamiento rentable para datos menos activos con capacidades de consulta, aunque con decano latencia en comparación con el almacenamiento en caliente. El nivel frío ofrece un almacenamiento de archivo incluso de último costo para índices separados que se pueden retornar a colocar cuando sea necesario. Mover datos a ultrawarm lo hace inmutable, lo que se alinea correctamente con los casos de uso en los que las actualizaciones de datos son poco frecuentes como el investigación de registros.

Hasta ahora, había una distrito en la que los niveles de almacenamiento ultragráfico o de frío no podían juntar índices K-NN. A medida que los clientes adoptan el servicio OpenSearch para casos de uso vectorial, hemos observado que enfrentan altos costos correcto a que la memoria y el almacenamiento se convierten en cuellos de botella para sus cargas de trabajo.

Para proporcionar una hacienda de economía de costos similar para conjuntos de datos más grandes, ahora estamos apoyando índices K-NN en niveles exaltado inusenteros y fríos. Esto le permitirá economizar costos, especialmente para cargas de trabajo donde:

  • Se accede a una parte significativa de sus datos vectoriales con menos frecuencia (por ejemplo, catálogos de productos históricos, incrustaciones de contenido archivado o repositorios de documentos anteriores)
  • Necesita un aislamiento entre cargas de trabajo de entrada frecuente e infrecuente, minimizando la escazes de prosperar instancias de nivel caliente para ayudar a aprestar la interferencia de los índices que se pueden mover al nivel cálido

En esta publicación, discutimos esta nueva capacidad y sus casos de uso, y proporcionamos un investigación de costo-beneficio en diferentes escenarios.

Nueva capacidad: índices de K-NN en niveles ultragráficos y fríos

Ahora puede habilitar niveles ultrawarm y fríos para sus índices K-NN de OpenSearch Service traducción 2.17 y en lo alto. Esta característica está acondicionado para dominios nuevos y existentes actualizados a la traducción 2.17. Los índices K-NN creados luego del servicio OpenSearch traducción 2.x son elegibles para la migración a niveles cálidos y fríos. Los índices K-NN que utilizan varios tipos de motores (FAISS, NMSLIB y Lucene) son elegibles para portar.

Casos de uso

Este enfoque de múltiples niveles para la búsqueda de vectores K-NN beneficia a los siguientes varios casos de uso:

  • Búsqueda semántica a derrochador plazo – Proseguir la capacidad de búsqueda en primaveras de datos de texto históricos para fines legales, de investigación o cumplimiento
  • Modelos de IA en desarrollo – Almacene los incrustaciones de múltiples versiones de modelos de IA, permitiendo comparaciones y compatibilidad con postergación sin el costo de abastecer todos los datos en almacenamiento en caliente
  • Similitud de imagen y video a gran escalera – Cree bibliotecas extensas de contenido visual que se pueda apañarse de forma valioso, incluso a medida que el conjunto de datos crece más allá de los límites prácticos del almacenamiento en caliente
  • Recomendaciones de productos de comercio electrónico – Almacene y busque a través de vastos catálogos de productos, moviendo artículos menos populares o de temporada a niveles más baratos mientras mantiene las capacidades de búsqueda

Explore los escenarios del mundo positivo para ilustrar los beneficios potenciales de costos del uso de índices K-NN con niveles de almacenamiento ultragráfico y de frío. Estaremos usando us-east-1 Como la región representativa de AWS para estos escenarios.

Proscenio 1: Firmeza de almacenamiento caliente y cálido para cargas de trabajo mixtas

Supongamos que tiene 100 millones de vectores de 768 dimensiones (cerca de de 330 GB de vectores en bruto) que se extienden a través de 20 índices de motor Lucene de 5 millones de vectores cada uno (aproximadamente 16.5 GB), de los cuales el 50% de los datos (aproximadamente 10 índices o 165 GB) se consideran con poca frecuencia.

Configuración del dominio sin soporte ultrawarm

En este enfoque, prioriza el mayor rendimiento al abastecer todos los datos en el almacenamiento en caliente, proporcionando las respuestas de consulta más rápidas posibles para los vectores. Implementa un clúster con 6x r6gd.4xlarge instancias.

El costo mensual para esta configuración llega a $ 7,550 por mes con un costo de instancia de datos de $ 6,700.

Aunque esto proporciona un rendimiento de primer nivel para las consultas, podría ser demasiado provisional legado los patrones de entrada variado de sus datos.

Organización de economía de costos: configuración de dominio ultrawarm

En este enfoque, alinea su organización de almacenamiento con los patrones de entrada observados, optimizando tanto para el rendimiento como para el costo. El nivel caliente continúa proporcionando un rendimiento espléndido para los datos de entrada frecuente, mientras que los datos menos críticos se mueven al almacenamiento ultrawarm.

Mientras que las consultas ultragráficas experimentan una decano latencia en comparación con el almacenamiento en caliente, esta compensación a menudo es aceptable para datos con menos frecuencia. Adicionalmente, legado que los datos ultrawarm se vuelven inmutables, esta organización funciona mejor para conjuntos de datos estables que no requieren ninguna puesta al día.

Mantiene el 50% de los datos de entrada frecuente (aproximadamente 165 GB) en almacenamiento en caliente, lo que le permite resumir su nivel caliente a 3x r6gd.4xlarge.search instancias. Para el 50% de los datos de entrada menos frecuente (aproximadamente 165 GB), introduce 2x ultrawarm1.medium.search instancias como nodos ultrawarm. Este nivel ofrece una decisión rentable para datos que no requieren los tiempos de entrada más rápidos.

Al equiparar sus datos basados ​​en patrones de entrada, reduce significativamente su huella de nivel caliente al introducir un pequeño nivel cálido para datos menos críticos. Esta organización le permite abastecer un parada rendimiento para consultas frecuentes al tiempo que optimiza los costos para todo el sistema.

El nivel caliente continúa proporcionando un rendimiento espléndido para la mayoría de las consultas que se dirigen a los datos de entrada frecuente. Para el nivel cálido, se ve un aumento en la latencia para las consultas en datos de entrada con menos frecuencia, pero esto se mitiga el almacenamiento en personalidad efectivo en los nodos ultraenados. En militar, el sistema mantiene una entrada disponibilidad y tolerancia a fallas.

Este enfoque moderado reduce su costo mensual a $ 5,350, con $ 3,350 para el nivel caliente y $ 350 para el nivel cálido, reduciendo los costos mensuales en aproximadamente un 29% en militar.

Proscenio 2: Dirección de la cojín de datos de vectores de crecimiento con patrones basados ​​en entrada

Imagine que su sistema procesa e indexa grandes cantidades de contenido (texto, imágenes y videos), generando incrustaciones de vectores utilizando el motor Lucene para recomendación vanguardia de contenido y búsqueda de similitud. A medida que su biblioteca de contenido crece, ha observado patrones de entrada claros donde el contenido más nuevo o popular se consulta con frecuencia, mientras que el contenido preparatorio o menos popular ve una actividad disminuida, pero aún es necesario apañarse.

Para utilizar efectivamente el almacenamiento escalonado en el servicio OpenSearch, considere organizar sus datos en índices separados basados ​​en los patrones de consulta esperados. Esta ordenamiento a nivel de índice es importante porque la migración de datos entre niveles ocurre en el nivel de índice, lo que le permite mover índices específicos a niveles de almacenamiento rentables a medida que cambian sus patrones de entrada.

Su conjunto de datos flagrante consta de 150 GB de datos vectoriales, que crecen en 50 GB mensualmente a medida que se agrega contenido nuevo. Los patrones de entrada a datos muestran:

  • Rodeando del 30% de su contenido recibe el 70% de las consultas, típicamente artículos más nuevos o populares
  • Otro 30% ve un prominencia de consulta moderado
  • El 40% restante se accede con poca frecuencia, pero debe permanecer en investigación de integridad y investigación ocasional de profundos

Dadas estas características, exploremos un enfoque de nivel único y de niveles múltiples para regir este creciente conjunto de datos de forma valioso.

Configuración de un solo nivel

Para una configuración de un solo nivel, a medida que el conjunto de datos se expande, los datos de vectores crecerán para ser de cerca de de 400 GB durante 6 meses, todos almacenados en un nivel caliente (predeterminado). En el caso de r6gd.8xlarge.search Instancias, el recuento de instancias de datos sería de cerca de de 3 nodos.

Los costos mensuales generales para el dominio bajo una configuración de nivel único serían de cerca de de $ 8050 con un costo de instancia de datos de cerca de de $ 6700.

Configuración de múltiples niveles

Para optimizar el rendimiento y el costo, implementa una organización de almacenamiento de niveles múltiples utilizando políticas de trámite de estado índice (ISM) para automatizar el movimiento de índices entre niveles a medida que evolucionan los patrones de entrada:

  • Nivel caliente – Tiendas de entrada frecuentemente para ingresar a los índices para el entrada más rápido
  • Nivel cálido – Casas de entrada moderado con decano latencia
  • Nivel frío -Archivos rara vez se accede a índices para una retención rentable a derrochador plazo

Para la distribución de datos, comienza con un total de 150 GB con un crecimiento mensual de 50 GB. La ulterior es la distribución de datos proyectada cuando los datos alcanzan 400 GB a cerca de de la marca de 6 meses:

  • Nivel caliente – Aproximadamente 100 GB (contenido consultado con decano frecuencia) en 1x r6gd.8xlarge
  • Nivel cálido – Aproximadamente 100 GB (contenido de entrada moderado) en 2x ultrawarm1.medium.search
  • Nivel frío – Aproximadamente 200 GB (contenido raramente accedido)

Bajo la configuración de múltiples niveles, el costo para el dominio del dominio de datos vectoriales totaliza $ 3880, incluido el costo de $ 2330 de los nodos de datos, el costo de $ 350 de nodos ultrawarmes y $ 5.00 de costos de almacenamiento en frío.

Verá ahorros de enumeración como el tamaño de instancia de nivel caliente escaso en cerca de del 66%. Su economía militar de costos fue de cerca de del 50% año tras año con dominios de niveles múltiples.

Proscenio 3: Búsqueda de vectores basados ​​en disco a gran escalera con ultrawarm

Consideremos un sistema que administra mil millones de vectores de 768 dimensiones distribuidas en 100 índices de 10 millones de vectores cada uno. El sistema utiliza predominantemente la búsqueda de vectores basada en disco con una cuantización FAISS 32X para la optimización de costos, y aproximadamente el 70% de las consultas se dirigen al 30% de los datos, lo que lo convierte en un candidato ideal para el almacenamiento escalonado.

Configuración del dominio sin soporte ultrawarm

En este enfoque, utilizando la búsqueda vectorial basada en disco para manejar los datos a gran escalera, implementa un clúster con 4x r6gd.4xlarge instancias. Esta configuración proporciona una capacidad de almacenamiento adecuada al tiempo que optimiza el uso de la memoria a través de la búsqueda basada en el disco.

El costo mensual para esta configuración llega a $ 6,500 por mes con un costo de instancia de datos de $ 4,470.

Organización de economía de costos: configuración de dominio ultrawarm

En este enfoque, alinea su organización de almacenamiento con los patrones de consulta observados, similar al círculo 1.

Mantiene el 30% de los datos de entrada frecuente en el almacenamiento en caliente, utilizando 1x r6gd.4xlarge instancias. Para el 70% de los datos con menos frecuencia, usa 2x ultrawarm1.medium.search instancias.

Utiliza la búsqueda vectorial basada en disco en los dos niveles de almacenamiento para optimizar el uso de la memoria. Este enfoque moderado reduce su costo mensual a $ 3,270, con $ 1,120 para el nivel caliente y $ 400 para el nivel cálido, reduciendo los costos mensuales en aproximadamente un 50% en militar.

Comience con el almacenamiento ultraenal y en frío

Para utilizar los índices K-NN en niveles exaltado inusenteros y fríos, asegúrese de que su dominio esté ejecutando OpenSearch Service 2.17 o posterior. Para obtener instrucciones para portar índices K-NN en niveles de almacenamiento, consulte Almacenamiento ultraenal para el servicio Amazon OpenSearch.

Considere las siguientes mejores prácticas para la búsqueda de vectores de múltiples niveles:

  • Analice sus patrones de consulta para optimizar la colocación de datos en los niveles
  • Usar Index State Management (ISM) para regir el ciclo de vida de los datos en los niveles de forma transparente
  • Monitorear las tasas de accesorios de personalidad utilizando el estadísticas de K-NN y ajustar el nivel de niveles y del nodo según sea necesario

Recapitulación

La preparación de las capacidades de búsqueda de vectores de K-NN en niveles ultragráficos y fríos para el servicio OpenSearch marca un paso delante significativo para proporcionar soluciones rentables y escalables para las cargas de trabajo de búsqueda vectorial. Esta característica le permite equilibrar el rendimiento y el costo manteniendo los datos de entrada frecuente en el almacenamiento en caliente para la latencia más muerto, mientras se mueve menos datos activos a ultrawarm para economizar costos. Si correctamente el almacenamiento ultragráfico introduce algunas compensaciones de rendimiento y hace que las datos sean inmutables, estas características a menudo se alinean correctamente con los patrones de entrada del mundo positivo donde los datos más antiguos ve menos consultas y actualizaciones.

Le recomendamos que evalúe sus cargas de trabajo de búsqueda de vectores actuales y considere cómo este enfoque de varios niveles podría beneficiar a sus casos de uso. A medida que AI y el formación forzoso continúan evolucionando, seguimos comprometidos a mejorar nuestros servicios para satisfacer sus crecientes deposición.

Estén atentos para futuras actualizaciones a medida que continuamos innovando y expandiendo las capacidades de la búsqueda vectorial en el servicio OpenSearch.


Sobre los autores

Kunal Kotwani es ingeniero de software en Amazon Web Services, centrándose en OpenSearch Core y Vector Search Technologies. Sus principales contribuciones incluyen el crecimiento de soluciones de optimización de almacenamiento para sistemas de almacenamiento locales y remotos que ayudan a los clientes a ejecutar sus cargas de trabajo de búsqueda de forma más rentable.

Navneet Verma es ingeniero de software senior en AWS OpenSearch. Sus intereses principales incluyen el formación forzoso, los motores de búsqueda y la perfeccionamiento de la relevancia de búsqueda. Fuera del trabajo, le gusta corretear al bádminton.

Sorabh Hamirwasia es ingeniero de software senior en AWS trabajando en el plan OpenSearch. Su interés principal incluye sistemas distribuidos optimizados y performantes de costos de construcción.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *