Recolecta y analiza el Big Data de las Noticias con tu propio Data Lake

En este artículo mostrare como ejecutar en tu equipo personal los componentes básicos de un Data Lake o Lago de Datos en español, con esfuerzo mínimo gracias a la tecnología de contenedores de Docker (https://www.docker.com/). Por cierto si aun no lo tienes instalado, este es buen momento para que lo hagas, en una publicación anterior de este Blog (https://abxda.medium.com/geo-big-data-con-datos-censales-2de6250772a5), hay algunas instrucciones para que lo puedas instalar en un equipo con Windows 10 Professional. Gracias a esta tecnología bastará con ejecutar una sola línea en tu terminal y algo paciencia, tendrás todos los componentes básicos de un Mini Data Lake ejecutándose en tu computadora personal. Con todo eso corriendo en tu Laptop podrás recolectar sistemáticamente miles de artículos de noticias usando la tecnología llamada Apache Airflow (https://airflow.apache.org), creando una base de datos semiestructurada. Todas las noticias recolectadas serán almacenadas en un deposito de objetos basados en la tecnología S3 de Amazon, pero corriendo localmente en tu propio Data Lake con tecnología de Software Libre (https://min.io). Después de eso realizaremos análisis de ese Big Data recolectado mediante PySpark usando Cuadernos de Jupyter Lab (https://jupyter.org), con lo que realizaremos algunos resúmenes y le daremos estructura a los datos para ser puestos en la base de datos relacional PostgreSql (https://www.postgresql.org). Por último, conectaremos una herramienta de Inteligencia de Negocios de última generación para analizar visualmente los datos analizados (https://superset.apache.org). Aunque no se verá en este tutorial, también se incluyo en el Data Lake una tecnología para generar APIs de Datos, que nos permitirá realizar productos de Datos a la Medida, aunque eso será material para otro tutorial 😃

¿Qué es un Data Lake?

Antes de continuar, vale la pena establecer lo que se entiende por un Data Lake, al final de este artículo podrás encontrar las referencias usadas en esta definición. Se entiende que la finalidad básica de un Lago de Datos es almacenar todos los datos que una organización produce. Permitiendo su incorporación con la menor fricción posible, aceptando datos sin modelar, semiestructurados o incluso no estructurados cómo archivos de texto e imágenes. Por lo que los datos se encuentran accesibles para su análisis tan pronto como se incorporan. De ahí que el sistema de almacenamiento usado es altamente…

Abel Alejandro Coronado Iruegas, Ph.D.

Father-Husband-Data Scientist-Philosopher-Entrepreneur-Professor in Data Science-MSc Stats #Scala #SatelliteImagery #Python https://www.a2bigdata.com.mx/