Cdiscount Peaksys reorganiza sus bases de datos en torno a Snowflake
hace 2 años
En 2019, Peaksys, la filial tecnológica del grupo Cdiscount, decidió converger diferentes bases de datos históricas en torno a una única base, optando por la plataforma en la nube Snowflake. Julien Dulout, director de ingeniería de datos de Peaksys, compartió su testimonio sobre este enfoque durante una mañana organizada por la editorial.
Repensar su base de datos para atender mejor los diferentes casos de uso, particularmente en BtoB. Esta es la trayectoria seguida por el grupo Cdiscount, relatada por Julien Dulout, director de ingeniería de datos de su filial tecnológica, Peaksys, durante la mañana Data for Breakfast organizada por la editorial Snowflake el 12 de abril de 2023.
Un jugador histórico en el comercio electrónico francés, creado a finales de 1998, Cdiscount cuenta hoy con 20 millones de usuarios únicos por mes, con picos de 1.000 pedidos por minuto durante el Black Friday. Con el tiempo, el grupo se ha diversificado en mercados de empresa a empresa, a través de varias subsidiarias BtoB, incluidas Octopia en mercados, C-Logistics en logística, Cdiscount Advertising en marketing digital y Baleen en ciberseguridad. Para satisfacer mejor las expectativas de estos nuevos negocios sobre la explotación de datos, así como el aumento de las necesidades analíticas dentro de las actividades de comercio electrónico del grupo, Peaksys ha decidido repensar su base de datos.
Convergencia hacia una sola base
En 2018, la compañía elaboró un plan maestro de datos con un doble objetivo: dar agilidad y libertad a los usuarios y simplificar los usos y la gobernanza de los datos. Pero cuando se trata de datos, el grupo no partía de cero. Desde 2005, año de la implementación de un primer almacén de datos bajo SQL Server, Cdiscount, de hecho, había implementado varios sistemas sucesivos para almacenar datos. “Teníamos una plataforma por caso de uso. Para BI, la base era el almacén de datos, mientras que Hadoop alimentaba las aplicaciones de análisis de tráfico y ciencia de datos, con casi 600 TB de datos. Finalmente, teníamos otra base RTime para la animación comercial del sitio”, describe Julien Dulout. Este heterogéneo sistema existente tenía varios inconvenientes, en particular la redundancia de datos, con, por ejemplo, pedidos que aparecían en las tres bases de datos. La ampliación fue difícil, la carga de mantenimiento aumentó y el costo de los proyectos se multiplicó por tres. Finalmente, este legado generó complejidad de uso para los usuarios finales, “que no sabían muy bien dónde obtener los datos, ni cómo hacerlo”, según el director de datos.
Siguiendo el plan maestro, Peaksys opta por hacer converger estas tres bases principales en una sola base, optando por la plataforma en la nube Snowflake. Antes de la implementación, el equipo del proyecto se ocupa de pensar en cómo almacenar los datos. “Nuestro objetivo era facilitar el acceso”, destaca Julien Dulout. Para ello, Peaksys decide clasificar los datos por grandes "silos" o dominios de negocio, en una arquitectura tipo malla de datos. "Cada información entrante llega a un dominio comercial", describe Julien Dulout. Pero esos datos también necesitan ser gobernados. Para ello, el equipo optó por la solución de catálogo de código abierto DataHub. También creó un nuevo rol de propietario de datos. “Hay uno o dos propietarios de datos por dominio. Constituyen el punto de entrada de cada silo y son los garantes de las reglas de gestión de datos, validación y cálculo de KPIs. También validan el acceso a estos datos”, describe el director de datos.
Capacidades dedicadas por caso de uso
Cada silo corresponde a cuatro esquemas en Snowflake. El primero gestiona la recopilación de datos, con un primer nivel de estandarización y armonización de la semántica, para garantizar, por ejemplo, que la identificación de un producto sea la misma en todas partes. El segundo esquema, "datos inteligentes", se utiliza para refinar y consolidar datos. Un tercer esquema ayuda a garantizar el cumplimiento del RGPD. “Los datos personales de los clientes se codifican por defecto. Para respetar los principios de aislamiento, esquemas específicos gestionan la correspondencia entre los datos hash y los demás, con diferentes derechos de acceso, gestionados a través de roles en Snowflake”, explica el director de datos. Finalmente, un último diagrama sirve como sandbox para usos exploratorios (laboratorio de datos). A cambio, la vida útil de los datos está limitada a seis meses. “Al final de este período, debemos saber si el experimento conduce a la industrialización y un proyecto. De lo contrario, borramos las tablas”, especifica Julien Dulout.
La plataforma se creó en 2019, con los primeros casos de uso en torno a la visualización de datos en Power BI. Siguieron otros casos de uso, incluida la ciencia de datos, la carga y transformación de datos (Peaksys está en proceso de implementar dbt), pruebas y desarrollo, consultas SQL ad hoc y usos externos. . “Usamos almacenes virtuales dedicados por caso de uso, asociando capacidades de procesamiento, porque el cómputo y el almacenamiento están disociados en la solución. Por lo tanto, no hay competencia de acceso entre usos”, especifica Julien Dulout. “Lo más importante para nosotros era poder concentrarnos en nuevos casos de uso y controlar nuestros costos”, agrega.
Gracias a los indicadores que proporciona la solución, Peaksys puede afinar sus costes, a petición del usuario. “Creamos un tablero de Power BI para rastrear esta información”, dice Julien Dulout. A medida que se implementaron los casos de uso, la plataforma reemplazó el almacén de datos histórico de Cdiscount y luego la plataforma Hadoop. En la arquitectura actual, Snowflake recibe datos a través de dos modos principales: por lotes, a través de Talend, con transmisiones totalmente automatizadas y transmisión a través de Kafka. En la salida, alimenta los flujos de Kafka, pero también las aplicaciones de informes, ciencia de datos y flujo por lotes, así como el intercambio de datos (intercambio seguro de datos).
Intercambio de datos al servicio de la estrategia
Este último aspecto de la compartición de datos ocupa un lugar importante en la estrategia del grupo, según explica el director de datos. “Necesitábamos una plataforma de datos para las nuevas entidades del grupo, pero teníamos que respetar la muralla china, porque entre los clientes de nuestras filiales puede haber competidores”. Para hacer frente a este desafío y permitir que el grupo desarrolle sus actividades BtoB, el equipo ha creado una organización multiinquilino, con mucha rigidez. “Duplicamos la plataforma y creamos cuentas Snowflake para cada entidad. La configuración de tales plataformas solo lleva unas pocas horas, gracias a las capacidades de duplicación de la solución”, especifica Julien Dulout. “Para que las diferentes plataformas se comuniquen entre sí cuando sea necesario, hemos implementado capacidades de intercambio de datos, sin duplicar datos ni necesidad de crear flujos ETL. Por ejemplo, podemos compartir datos de logística con la plataforma C-Logistics. También compartimos datos con nuestros socios, como Floa para pago fraccionado”, ilustra el director de datos.
Ahora que Peaksys tiene una base de datos unificada, no faltan proyectos. “Nuestro objetivo es aportar valor a nuestros clientes BtoB externos y a nuestros vendedores, a través de nuevos servicios. El intercambio de datos realmente representa un acelerador para nosotros en BtoB”, dice Julien Dulout. El equipo también está probando la API Snowpark, destinada al procesamiento de datos a escala, para aumentar el rendimiento de sus algoritmos y brindar una mejor experiencia al usuario. Finalmente, el grupo planea mejorar y monetizar algunos de sus activos de datos a través del mercado de Snowflake.
Si quieres conocer otros artículos parecidos a Cdiscount Peaksys reorganiza sus bases de datos en torno a Snowflake puedes visitar la categoría Otros.
Otras noticias que te pueden interesar