Aunque sabemos que las arquitecturas Enterprise Data Hub (EDH) no son especialmente recomendadas, podemos decir que en muchas situaciones, pueden ayudarnos y bastante. Como idea base tenemos que tener claro que nunca en nuestra EDH tendremos la lógica del negocio, la usaremos “simplemente” como streams de datos.
Una manera interesante de conectar distintos tipos de source es mediante una EDH, aunque tendremos distintos tipos de “caminos”, los generados directamente por eventos (PUSH) o los que tendremos que hacer una recuperación para inyectar los datos en el procesos (PULL). Miremos de mantener fuera de nuestro alcance aquellos PULL que van directamente a las bases de datos,…
Un punto muy importante será nuestro módulo de stream-processing, dónde Apache Kafka será estratégico. Mediante publicación de Topics, con un tiempo de retención (t’) definido, podremos hacer un subscribe desde otras aplicaciones para recuperar esos eventos que nos interesen.
Para aquellos procesos que necesitemos aplicar cierta lógica, controladamente, podremos conectar Spark Streaming y convertir un topic de salida en un nuevo topic de entrada (dato consolidado o dato prima).
En todo momento, podemos salvar los datos de salida de los topic en un bucket de AWS S3, como RAW DATA, para que de podamos lanzar dos procesos inmediatamente: un AWS DynamoDB para salvaguardar nuestros metadatos (Data Catalog) y un Elasticsearch para realizar búsquedas (full search).
En caso de necesitarse, podemos realizar un Loader mediante AWS Lambda, que al más puro estilo ETL, podremos cargar los datos ya transformados a nuestro Redshift Data warehouse.
El Redshift Data warehouse será otro componente estratégico y más para los equipos de Data Analytics y/o Data Science, y será el lugar donde se podrán aplicar, por ejemplo, modelos de Machine Learning.
Un último punto, no menos importante, será muy interesante poder recoger todos los Logs a modo de Audit Logging mediante una plataforma ELK, donde podremos aplicar alarmas y ciertas reglas que nos permitan controlar aquellos procesos más complejos, etc…
O’Reilly Media siempre dispone de buenos libros que nos ayudan en nuestro día a día, hoy recomendamos el libro de Ted Dunning y Ellen Friedman: Streaming Architecture.
NOTA: Recuerda que si pulsas en el enlace del libro, me gano una pequeña comisión sin que a ti te cueste nada extra y me estarás ayudando con los costes de mantenimiento del Blog.
Comentarios, opiniones y valoración: Me gustaría saber qué tienes que decir a través de las redes sociales.
- Enlace Instagram (esta foto
- Enlace Twitter (este tweet)
Autor: Joakim Vivas