Cuando Jeff Bezos preparaba pedidos en su garaje y llevaba él mismo los paquetes a la oficina de correos, calcular las cifras de costes, hacer un seguimiento de las existencias y prever la demanda futura era relativamente sencillo. 25 años más tarde el negocio de distribución minorista de Amazon registra más de 175 Fulfillment Centers (FC) en todo el mundo, con más de 250.000 empleados a tiempo completo que envían millones de artículos al día. El equipo de operaciones financieras mundiales de Amazon tiene la increíble labor por delante de rastrear todos esos datos (que se miden en petabytes).
Por eso, en 2019, se les ocurrió una idea: construir un lago de datos que pudiera dar soporte a una de las mayores redes logísticas del planeta. Más adelante pasaría a denominarse internamente lago de datos Galaxy. Este vio la luz en 2019 y ahora todos los diversos equipos están trabajando para transferirle sus datos.
Los desafíos del big data
Los desafíos a los que se ha enfrentado Amazon con el big data son similares a los que encaran muchas otras empresas: datos compartimentados, dificultad para analizar diversos conjuntos de datos, control sobre los mismos, seguridad e incorporación del aprendizaje automático. Echemos un vistazo más en profundidad a estos desafíos y veamos cómo un lago de datos puede ayudar a resolverlos.
Dejar atrás la compartimentación
Una de las principales razones por las que las empresas deciden crear lagos de datos es para acabar con la compartimentación. El hecho de tener conjuntos de datos en diferentes lugares, controlados por diferentes grupos, los oscurece por defecto. Esto suele pasar cuando una empresa crece rápidamente y/o adquiere nuevos negocios. En el caso de Amazon, fue por ambas cosas.
Analizar diversos conjuntos de datos
Otro problema que plantea la utilización de diferentes sistemas y enfoques a la gestión de datos es que las estructuras de los datos y la información varían. Si se quisieran combinar todos estos datos en un almacén de datos tradicional sin un lago de datos, sería necesario un gran esfuerzo de preparación de datos y exportación, transformación y carga.
Los lagos de datos permiten importar cualquier cantidad de datos en cualquier formato porque no hay un esquema predefinido. Incluso puedes incluir datos en tiempo real. Mover todos los datos a un lago de datos también mejora las posibilidades frente a un almacén de datos tradicional. Tenemos flexibilidad para almacenar datos muy estructurados, datos a los que se accede con frecuencia en un almacén de datos, y al mismo tiempo mantener hasta exabytes de datos estructurados, semiestructurados y no estructurados en nuestro lago de almacenamiento.
Gestionar el acceso a los datos
Con datos almacenados en tantos lugares, es difícil tanto acceder a todos ellos como vincularlos a herramientas externas para su análisis. Los datos financieros de las operaciones de Amazon se encuentran repartidos en más de 25 bases de datos, con equipos regionales que crean su propia versión local de los conjuntos. Eso implica más de 25 credenciales de gestión de acceso para algunas personas. Muchas de las bases de datos requieren soporte de gestión de acceso para realizar acciones como modificar perfiles o restablecer contraseñas.
Con un lago de datos, es más fácil hacer llegar los datos correctos a las personas adecuadas en el momento preciso. En lugar de gestionar el acceso a todas las diferentes ubicaciones en las que se almacenan datos, solo hay que preocuparse de un conjunto de credenciales. Los lagos de datos tienen controles que permiten a los usuarios autorizados ver, acceder, procesar y/o modificar activos específicos. Los lagos de datos ayudan a garantizar que los usuarios no autorizados no puedan realizar acciones que comprometan la confidencialidad y la seguridad de los datos.
Acelerar el aprendizaje automático
Un lago de datos es una base poderosa para el aprendizaje automático y la inteligencia artificial, porque ambos prosperan en grandes y diversos conjuntos de datos. El aprendizaje automático utiliza algoritmos estadísticos que aprenden de los datos existentes, un proceso denominado «entrenamiento», para tomar decisiones sobre nuevos datos, un proceso llamado «inferencia». Durante el entrenamiento, se identifican los patrones y las relaciones en los datos para crear un modelo. El modelo nos permite tomar decisiones inteligentes sobre datos a los que se enfrenta por primera vez.
El año pasado, el equipo de finanzas de operaciones de Amazon hizo una prueba. Seleccionaron un subconjunto de sus previsiones y compararon su proceso manual tradicional con Amazon Forecast, un servicio totalmente gestionado que recurre al aprendizaje automático para ofrecer pronósticos muy precisos. En este ensayo, las previsiones completadas por Forecast fueron, de media, un 67% más precisas que las realizadas por el proceso manual.
Usar las herramientas adecuadas: Galaxy en AWS
El negocio de distribución minorista de Amazon utiliza cierta tecnología anterior a la creación de Amazon Web Services (AWS), que vio la luz en 2006. Para ser más escalables, eficientes, eficaces y seguras, muchas cargas de trabajo en el negocio de distribución minorista de Amazon se han trasladado a AWS en la última década. El lago de datos Galaxy está construido sobre el Servicio de almacenamiento simple de Amazon (Amazon Simple Storage Service o Amazon S3), un servicio de almacenamiento de objetos que ofrece una disponibilidad, durabilidad y adaptabilidad inigualables.
AWS Glue, un servicio de ETL completamente gestionado que facilita la preparación y carga de datos para su análisis, y el Servicio de migración de bases de datos AWS (AWS DMS) se utilizan para integrar los diversos conjuntos de datos en Amazon S3. Galaxy combina activos de metadatos de múltiples servicios, incluidos Amazon Redshift, Amazon RDS, y el Catálogo de datos de AWS Glue, en una capa de catálogo unificada construida sobre Amazon DynamoDB, una base de datos de valores clave y documentos.
Una vez que los datos han sido catalogados, se utilizan varios servicios en la capa de clientes. Por ejemplo, Amazonas Athena, un servicio de consulta interactivo para consultas de exploración específicas que utilizan el estándar SQL; Amazon Redshift, un servicio para consultas e informes más estructurados; y Amazon SageMaker, para el aprendizaje automático.
AWS Lake Formation
En agosto de 2019, AWS lanzó AWS Lake Formation para ayudar a los clientes a recopilar y catalogar datos de las bases de datos y el almacenamiento de objetos, trasladar los datos al nuevo lago de datos Amazon S3, limpiar y clasificar los datos mediante algoritmos de aprendizaje automático y garantizar el acceso a los datos sensibles.
Al almacenar los datos en un repositorio unificado en formatos basados en estándares abiertos, los lagos de datos nos permiten superar la compartimentación, utilizar una amplia gama de servicios analíticos para obtener la mayor cantidad de información de los datos que conservamos y aumentar de manera rentable las necesidades de almacenamiento y procesamiento de datos a lo largo del tiempo.
Werner Vogels
CTO, Amazon.com