Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

Gestión de inventario basada en eventos para la fabricación

Compila un sistema de gestión de inventario orientado a eventos que use MongoDB Atlas para habilitar análisis en tiempo real, automatización y visibilidad del inventario.

caso de uso: Catálogo, análisis

Industrias: Manufactura

Productos: MongoDB Change Streams, MongoDB Atlas Charts, MongoDB Atlas Search, MongoDB Atlas Triggers

emparejar: Next.js

En el competitivo panorama empresarial de la manufactura, contar con el inventario adecuado de productos en el lugar correcto y en el momento oportuno es fundamental. La falta de inventario provoca interrupciones operativas y oportunidades perdidas. El exceso de inventario incrementa los costos y riesgos asociados con el almacenamiento. Las empresas de todos los tamaños tienen problemas con la gestión de inventarios.

Las soluciones, como una vista única de inventario, análisis en tiempo real y arquitecturas orientadas a eventos, pueden ayudar a las empresas a superar estos desafíos y mejorar la gestión de su inventario.

Esta guía abarca el proceso de construcción de un sistema de gestión de inventario adaptado a diversos sectores, como el de la manufactura.

Las cadenas de suministro de la fabricación moderna son sistemas complejos e interconectados. Las cadenas de suministro eficientes pueden controlar los costos operativos y garantizar la entrega oportuna a los clientes. La optimización y gestión de inventarios son componentes clave para lograr estos objetivos. Si bien mantener niveles de inventario más altos permite a los proveedores gestionar las fluctuaciones inesperadas de la demanda, estos conllevan mayores costos de almacenamiento de inventario que podrían trasladarse a los clientes. Así, cada participante en la cadena de suministro se esfuerza por lograr un equilibrio entre los niveles de inventario para maximizar la rentabilidad y la ventaja competitiva en el mercado. La gestión eficaz del inventario mitiga el riesgo del efecto látigo, en el que las demandas repentinas pueden perturbar los costos y el rendimiento de la cadena de suministro.

A significant example of inventory management challenges in manufacturing involves overstock. Nearly 8% of surplus stock globally ends up as waste, with approximately $163,000,000,000 of inventory discarded annually. For manufacturers, managing and optimizing inventory levels starts with maintaining an accurate and real-time view of inventory levels across multiple plants, warehouses, and suppliers. This visibility is essential because it is impossible to optimize without visibility into current inventory levels.

La integración de datos en tiempo real ayuda a los fabricantes a rastrear los movimientos de inventario y optimizar los niveles de acciones, pero también es esencial para la automatización. Las alertas automatizadas y los disparadores de flujos de trabajo mantienen los niveles de inventario sin supervisión manual constante. Esta automatización mejora la precisión y permite a los fabricantes responder rápidamente a los cambios en las necesidades de producción o a interrupciones en la cadena de suministro, manteniendo una operación fluida.

Diagnóstico de turbinas eólicas en tiempo real

Figura 1. Descripción general de la gestión de inventario

En este sistema, MongoDB ayuda a las empresas a mejorar la calidad del servicio, la eficiencia de la fuerza laboral y optimizar la gestión de inventarios al habilitar una vista única del inventario, arquitecturas orientadas a eventos y análisis en tiempo real.

Estas capacidades preparan el terreno para otros escenarios avanzados, tales como:

  • Integración de IoT y etiquetas RFID

  • Pronósticos de IA/aprendizaje automático para una predicción precisa de la demanda

  • Logística distribuida

La solución de gestión de inventarios aprovecha una aplicación Next.js perfectamente integrada con MongoDB Atlas, que proporciona un backend flexible y escalable, como se muestra en la Figura 2.

La solución utiliza los siguientes componentes:

  • MongoDB Atlas almacena cuatro colecciones clave: products, transactions, users y locations. Estas colecciones gestionan el inventario, procesan las transacciones y realizan un seguimiento de los datos de los usuarios y las ubicaciones.

  • Las operaciones compatibles con ACID garantizan la coherencia e integridad de los datos, en particular durante los cambios de nivel de acciones debido a transacciones. Tanto las colecciones products como transactions reciben actualizaciones para mantener la fiabilidad y la coherencia en todo el sistema.

  • La aplicación se conecta a MongoDB a través del driver MongoDB Node.js.

  • Atlas Search mejora las capacidades de búsqueda de las aplicaciones, permitiendo funcionalidades de búsqueda de texto completo avanzadas. Esto permite a los usuarios realizar consultas complejas, como buscar por categoría de producto o aplicar filtros con facetas.

  • Atlas Triggers automatizan la lógica del backend al ejecutar funciones en respuesta a cambios en la base de datos, tales como reordenar automáticamente el inventario cuando el stock cae por debajo de un determinado umbral.

  • MongoDB Change Streams actúan como escuchas en tiempo real, detectan cambios en la base de datos y envían actualizaciones a la aplicación. Esto permite que los administradores del inventario reciban alertas en tiempo real, como notificaciones de bajas acciones.

  • Atlas Charts proporciona una herramienta de visualización para análisis en tiempo real, permitiendo a los usuarios crear gráficas interactivas y tableros directamente a partir de datos de MongoDB. Esto permite a los responsables de la toma de decisiones rastrear métricas clave, como los niveles de inventario y las tendencias de ventas, en tiempo real.

  • Aislamiento de carga de trabajo las consultas de análisis se ejecutan en un nodo dedicado, lo que garantiza que el rendimiento operativo permanezca sin afectar.

Esta arquitectura cohesiva admite interacciones de datos en tiempo real y automatiza tareas clave para optimizar los procesos. Permite que la aplicación Next.js ofrezca una experiencia de usuario dinámica y con buena capacidad de respuesta, basada en las sólidas funciones de gestión de datos de MongoDB.

A través de esta integración, la solución equilibra eficazmente el rendimiento, la automatización y la escalabilidad, lo que la hace perfectamente adecuada para los desafíos actuales de la gestión de inventarios.

Sistema de gestión de inventarios con MongoDB.

Figura 2. Arquitectura del sistema de gestión de inventario usando MongoDB Atlas y Next.js

El sistema de gestión de inventario almacena datos en cuatro colecciones. La colección products representa el stock. La colección transactions representa los movimientos de entrada y salida que afectan a los niveles de stock. La colección users representa a los usuarios de la aplicación. La colección locations representa las ubicaciones a las que presta servicio el sistema.

Lo que distingue al modelo de datos de documentos de los modelos tabulares tradicionales es su notable flexibilidad. Con un enfoque tabular, obtener una visión general completa del inventario normalmente implicaría uniones complejas entre varias tablas. Con el modelo de documentos de MongoDB, esta complejidad se elimina.

Modelo relacional equivalente para el producto.

Figura 3. Colección de productos equivalente en una configuración tabular

La colección transactions utiliza el patrón Referencia extendida para referenciar elementos. Como tal, el documento de transacción incluye el campo product.id para referencia interna y el product.name. Este patrón permite que la interfaz de usuario muestre información relevante al usuario sin usar consultas o uniones adicionales en la colección products.

La colección products contiene lo que requeriría 10 tablas separadas en una base de datos relacional. Los documentos individuales incluyen:

  • Arreglos integrados para variantes de productos, lo que permite almacenar diferentes configuraciones del mismo producto juntas.

  • Información sobre el stock de productos y su ubicación, lo que normalmente requeriría tablas adicionales en una base de datos relacional.

Esta flexibilidad proporciona un diseño más intuitivo, optimiza el acceso a los datos y asegura que los datos relacionados se almacenen juntos.

Modelo de base de datos con MongoDB.

Figura 4. Representación de cómo se incrustan los documentos complejos y los arreglos dentro del documento

Aquí tienes un ejemplo de un documento de transacción:

{
"type": "inbound",
"location": {
"origin": {
"type": "warehouse"
},
"destination": {
"type": "factory",
"id": {
"$oid": "65c63cb61526ffd3415fadbd"
},
"name": "Bogatell Factory"
}
},
"placement_timestamp": {
"$date": "2024-04-08T15:13:58.822Z"
},
"items": [
{
"sku": "CT001-PT-MDB0001",
"name": "Programmable Thermostats",
"unit": "pieces",
"delivery_time": {
"amount": 3,
"unit": "seconds"
},
"status": [
{
"name": "placed",
"update_timestamp": {
"$date": "2024-04-08T15:13:58.822Z"
}
},
{
"name": "arrived",
"update_timestamp": {
"$date": "2024-04-08T15:14:03.741Z"
}
}
],
"amount": 15,
"product": {
"id": {
"$oid": "65cce1a4ccdfb7402dbb4db4"
},
"name": "Controls and Thermostats",
"image": {
"url": "/images/products/thermostats.png"
}
}
}
],
"automatic": true,
"transaction_number": 133
}

Para replicar esta solución, necesitas configurar MongoDB Atlas y configurar tu aplicación. Para obtener instrucciones detalladas, consulta el repositorio GitHub. La página de GitHub te guía a través de los siguientes pasos:

1

Crea un clúster de MongoDB Atlas. Replica las colecciones, vistas e índices de la base de datos de demostración.

2

Creá un activador de base de datos que emita automáticamente una orden de reposición cuando los niveles de inventario caigan por debajo de un umbral definido. Con fines de demostración, configura un segundo activador para simular el progreso de una orden desde su realización hasta su cumplimiento.

3

Configura índices de búsqueda para la búsqueda de texto completo y las facetas de filtro en las colecciones de productos y transacciones.

4

Mejore las capacidades de visualización y análisis de su aplicación con Atlas Charts. Desbloquea análisis en tiempo real y crea gráficas personalizadas de acuerdo a tus preferencias.

5

Clona el GitHub repositorio a tu máquina local, actualiza las variables de entorno con tus propios valores, instala las dependencias y ejecuta la aplicación localmente en http://localhost:3000.

Esta solución destaca las siguientes capacidades:

  • Alertas en tiempo real: Implemente alertas de stock bajo en tiempo real en su frontend utilizando los Change Streams.

  • Automatización del flujo de trabajo: Aprovecha los activadores de bases de datos para automatizar los flujos de trabajo de reabastecimiento de acciones.

  • Análisis en tiempo real: Mantente a la vanguardia de tus datos, analiza tendencias y toma decisiones informadas a tiempo con Atlas Charts.

  • Vista única del inventario: Aprovecha la flexibilidad del modelo orientado a documentos para crear una vista única y completa del inventario.

Siéntete libre de explorar, ajustar y mejorar tu sistema de gestión de inventario para adaptarlo a tus propias necesidades.

  • Dr. Humza Akhtar, MongoDB

  • Ramiro Pinto Prieto, MongoDB

  • Tamar Alphaidze, MongoDB