caso de uso: Búsqueda Inteligente, Vista Única, Catálogo
Industrias: Comercio minorista
Productos: MongoDB Atlas, MongoDB Atlas Search, MongoDB Atlas Vector Search, Voyage AI Embeddings
Descripción general de la solución
Activar datos es un desafío en muchas industrias. El Comercio Unificado combina datos de múltiples canales en una capa operativa para entregar información precisa y accesible a equipos internos y aplicaciones de clientes.
Figura 1. Estrategia de comercio unificado
Con esta solución, puedes compilar una aplicación para asociados de tiendas usando MongoDB como la ODL para una estrategia de Comercio Unificado. Esta solución proporciona mejores experiencias al cliente y permite la visibilidad de inventario, búsquedas avanzadas y consultas geoespaciales.
Para conseguir estas ventajas, primero se deben romper los sistemas aislados.
Sistemas aislados y datos fragmentados generan ineficiencias
Los minoristas utilizan a menudo sistemas aislados, lo que significa que los datos se almacenan en diferentes plataformas y tecnologías. Esta fragmentación limita la visibilidad y dificulta que los empleados de tienda tengan acceso a información en tiempo real. Como resultado, la respuesta a las preguntas de los clientes depende de otros departamentos y sistemas obsoletos.
Los empleados de tienda también deben comprobar manualmente el almacén, lo que provoca retrasos e información incorrecta. Estas ineficiencias erosionan la confianza de los clientes y dañan la experiencia del cliente.
Una base de datos sólida para cerrar brechas
Un ODL combina datos de sistemas existentes como inventario, pedidos y perfiles de clientes, y los pone a disposición en una capa unificada. MongoDB Atlas sirve como el ODL. Su modelo orientado a documentos flexible gestiona estructuras de datos diversas y complejas de diferentes sistemas y evoluciona a medida que cambian los negocios. Esta capacidad unifica los datos sin esquemas rígidos ni transformaciones complejas.
Almacenar datos en MongoDB impulsa la innovación de las siguientes maneras:
Capacidades de búsqueda integrada e IA: Las capacidades nativas de búsqueda de texto completo, vectorial e híbrida permiten la innovación interna, como el descubrimiento inteligente de productos y la personalización de recomendaciones. Esta base de datos también da poder a RAG, asistentes basados en LLM y sistemas multiagente.
La pila tecnológica se simplifica: MongoDB almacena tanto datos operativos como embeddings vectoriales en un solo lugar, reduciendo la complejidad y eliminando herramientas de propósito único como bases de datos vectoriales o motores de búsqueda.
Acceso en tiempo real a datos unificados: Las aplicaciones pueden conectarse fácilmente a MongoDB Atlas para consumir datos sincronizados en tiempo real para el personal de tienda.
Figura 2. Las tres capas en cada aplicación
Enfoque de modelo de datos
Los entornos de venta minorista son dinámicos, y los detalles de los productos y el inventario cambian constantemente. El modelo orientado a documentos flexible de MongoDB gestiona fácilmente las configuraciones de la tienda, incluidos los datos geoespaciales, de serie de tiempo y jerárquicos. Esto crea una base sólida para el comercio unificado.
Figura 3. Conceptos básicos de ODL: Modelo flexible, sincronización en vivo, búsqueda inteligente
Esta solución logra un equilibrio entre simplicidad y rendimiento, lo que permite modelar datos operativos y de búsqueda para casos de uso en la venta minorista. Así es como se modelan los datos:
Una colección canónica de
inventoryrastrea los datos en tiempo real de las acciones de cada producto en las tiendas, optimizada para escrituras de alta frecuencia.Una colección
productsoptimizada para lectura incorpora un arregloinventorySummaryligero con disponibilidad a nivel de tienda. Esto es ideal para el filtrado rápido, la renderización de la Interfaz de Usuario y las consultas de búsqueda.Una sincronización basada en desencadenantes mantiene los resúmenes de inventario actualizados en tiempo real utilizando MongoDB Atlas Triggers.
Figura 4. Esquema del producto: texto, metadatos y vectores
Este esquema se valida por su rendimiento en el rango de tiendas 50. Para escenarios de mayor escalar, puede adaptar el modelo de la siguiente manera:
Recuperar el inventario a nivel de tienda de forma dinámica como parte de la query.
Reestructure los caminos de escritura y lectura con otras estrategias de modelado.
Arquitectura de referencia
Esta demostración utiliza una aplicación principal en Next.js y un microservicio de búsqueda avanzada dedicado. La demo contiene los siguientes componentes:
MongoDB Atlas: Centraliza todos los datos, permite la sincronización en tiempo real y proporciona la infraestructura para el rendimiento, la disponibilidad y la seguridad.
Aplicación principal con Next.js: Aplicación full-stack que gestiona la interfaz de usuario y consultas geoespaciales para encontrar tiendas cercanas con stock disponible.
Microservicio de búsqueda avanzada con FastAPI: Un backend dedicado que gestiona todo tipo de búsquedas, como texto, semántica e híbrida, y coordina la incrustación de consultas.
Proveedor de incrustaciones con Voyage AI: Genera incrustaciones vectoriales para la búsqueda semántica.
Figura 5. Detrás de la demostración: Diagrama del sistema de la aplicación para asociados de tienda con MongoDB y Voyage IA
En particular, el microservicio de búsqueda avanzada hace que la lógica de demostración sea más clara y adaptable. Esta configuración ofrece los siguientes beneficios:
Diseño por capas: Esta solución utiliza un microservicio que se compone de interfaces para la API, una aplicación para la lógica de negocio y una infraestructura para la integración con MongoDB y Voyage IA. Esta estructura mantiene la base de código modular, lo que facilita las pruebas, escalar y la adaptación. También puedes reemplazar servicios externos, como cambiar de Voyage AI a Bedrock, actualizando solo la capa de infraestructura.
Flexibilidad de IA: Capacidad para alternar entre proveedores como Voyage AI o Bedrock utilizando un único adaptador.
Compatibilidad multicanal: Una sola API compatible con todas las plataformas frontend, incluidas la web, las móviles y chatbots, que pone canales en línea con el mínimo esfuerzo.
Buscar capacidades de microservicio
El microservicio de búsqueda ofrece una API unificada para gestionar múltiples mecanismos de recuperación, entre ellos:
Búsqueda con regex: Coincidencia de patrones básica utilizada como referencia para comparar las funcionalidades de búsqueda avanzada de MongoDB.
Búsqueda de texto completo: Utiliza MongoDB Atlas Search para coincidencias imprecisas, campos aumentados y filtrado por nivel de tienda.
Búsqueda vectorial semántica: Encuentra productos conceptualmente similares usando embeddings de Voyage IA.
Búsqueda híbrida: combina resultados de texto y vectoriales utilizando RRF. Ajusta el peso del texto y la relevancia semántica según el contexto de la búsqueda.
Figura 6. Desglose de la estrategia de búsqueda: Texto, vectores y búsqueda híbrida
Puede aprender a utilizar el framework de agregación para personalizar las capacidades de búsqueda revisando estos archivos.
Con MongoDB, unificas las capacidades de búsqueda en una sola plataforma, combinando precisión, comprensión semántica y datos en tiempo real. Como resultado, atiendes a los compradores más rápido, empoderas a los equipos de tienda y escalas en todos los canales.
Compilar la solución
Para reproducir esta demo en tu propio entorno, sigue estos pasos:
Crea tu base de datos en MongoDB Atlas
Inicia sesión en MongoDB Atlas.
Crea un clúster en el nivel gratuito.
Cree una base de datos llamada retail-unified-commerce o actualice su .env si está utilizando otro nombre.
Clona el repositorio
Clona este repositorio de GitHub ejecutando el siguiente comando.
git clone https://github.com/mongodb-industry-solutions/retail-unified-commerce.git
Importar colecciones demo
Después de clonar el repositorio, navegue hasta la carpeta con los datos de muestra.
cd retail-unified-commerce/docs/setup/collections
Allí, encontrará los archivos JSON para importar en MongoDB Atlas: un conjunto de datos de muestra de 500 productos de supermercado con inventario a nivel de tienda y vectores incrustados de Voyage IA:
inventory.jsonproducts.jsonstores.json
En Atlas, ve a Browse Collections. Crea cada colección y luego haz clic en Add Data para insertar tus documentos desde los archivos JSON.
Configure sus índices
En la colección products, cree:
En la colección stores, crea un índice geoespacial.
Configura la sincronización del inventario en tiempo real (opcional)
Agrega inventory_sync y daily_inventory_simulation Atlas Triggers para integrar actualizaciones en tiempo real en tu colección de inventario. Estas características simulan transacciones en vivo y mantienen los datos sincronizados con la colección products.
Añadir variables de entorno.
Copie cada archivo .env.example en .env tanto en el frontend y advanced-search-ms directorios.
Pega tu cadena de conexión de Atlas y añade tu clave API de VoyageAI en el archivo advanced-search-ms/.env para habilitar la búsqueda basada en incrustaciones.
VOYAGE_API_KEY=your_voyage_api_key
Para garantizar comparaciones de vectores precisas y significativas, utiliza el mismo proveedor de embeddings tanto para tus datos como para las consultas de los usuarios. Si cambias de proveedor, debes volver a generar los vectores, crear un nuevo índice, actualizar el archivo .env con la nueva clave API y ajustar la implementación del puerto de incrustación en la capa de infraestructura.
Compila y ejecuta la aplicación con Docker Compose
Verifica que tienes Docker y Docker Compose instalados, y que estás en la raíz de la carpeta del proyecto retail-unified-commerce. Desde allí, inicia la aplicación con el siguiente comando.
make build
Después de que la aplicación esté ejecutándose:
Abre tu navegador y ve a http://localhost:3000 para usar la aplicación de demostración.
Consulta los Docs de la API de microservicio en http://localhost:8000/docs o lee el README.
Comprueba el estado del microservicio en http://localhost:8000/health.
Puedes usar estos comandos para controlar tu implementación de Docker:
Detén tu aplicación: Detén todos los contenedores y remueve las imágenes con el siguiente comando:
make clean Ver registros: Rastrea la implementación de tu aplicación y visualiza cómo tus datos se mueven a través de las capas con el siguiente comando:
make logs
Lecciones clave
El comercio unificado genera confianza en la tienda: MongoDB permite el acceso en tiempo real al estado de las estanterías, la ubicación de las existencias y los datos de reposición. Al combinar búsqueda inteligente con visibilidad en todos los canales, proporcionas a los empleados de la tienda las herramientas para brindar servicios coherentes e informados que impulsan la confianza y la conversión de clientes.
Un ODL transforma datos fragmentados en información práctica: MongoDB actúa como el ODL, consolidando datos aislados en una única fuente en tiempo real. Su modelo orientado a documentos flexible se adapta a diversas estructuras minoristas, y su seguridad, disponibilidad y rendimiento integrados lo hacen adecuado para empresas.
Los datos unificados permiten una búsqueda avanzada y aplicaciones de IA: MongoDB unifica la búsqueda de texto completo, semántica y geoespacial en un solo lugar. También puedes almacenar tus datos en vivo y los embeddings juntos, lo que permite el descubrimiento en tiempo real y potencia casos de uso inteligentes de IA para el futuro.
Autores
Prashant Juttukonda, MongoDB
Florencia Arin, MongoDB
Angie Guemes, MongoDB
Diego Canales, MongoDB
Obtén más información
Para descubrir cómo MongoDB impulsa la innovación en el sector minorista, visita MongoDB para venta minorista.
Para aprender cómo el comercio unificado beneficia a los minoristas, lee el Blog de Comercio unificado para la innovación de la venta minorista con MongoDB Atlas.
Para explorar ODL con Atlas en detalle, consulta el Libro Blanco sobre la capa de datos operativos.