Hacía mucho tiempo que no hacía cursos, pero con la llegada del año nuevo, me he aventurado a seguir el curso de Introducción a Big Data de Microsoft, ofrecido desde EdX (la plataforma elegida por Microsoft para sus cursos). El curso ya no está disponible, pero te resumo lo que he aprendido y para lo que me ha servido.
Datos
A lo largo de la vida de este blog, se ha hablado en muchas ocasiones de BigData, de lo que es, de los actores, e incluso he detallado el contenido de algún curso que he realizado. Por otro lado, llevaba ya algún tiempo que estaba más centrado en TypeScript y llevo tiempo sin hablar de Big Data. Si a esto le unes que Microsoft quiere expandir Azure, el curso es casi perfecto para iniciarse.
La primera parte es increiblemente interesante, pues detalla con precisión que ….
Los datos están presentes en muchos sitios, en distintos formatos, con distintos encodings, y que pueden estar estructurados (con estructura definida), o desectructurados (donde no hay ninguna estructura ni patrón, y cambia con cada registro o elemento).
El tema de los encodings es importante, porque el hecho de elegir uno u otro puede hacer que el contenido se pierda o no. De igual forma, el encoding facilita utilizar caracteres especiales, como por ejemplo los de otros idiomas con caracteres especiales, como el chino o el árabe, de ahí la importancia de conocer qué encoding utilizar.
Microsoft Azure
Que no te quepa duda, de que uno de los objetivos del curso es que conozcas Azure, la nube de Microsoft y los distintos servicios que tiene. Uno de ellos es Azure Storage, que te permite guardar ficheros, pero si necesitas ficheros mucho más grandes, disponen de Azure Data Lake Store.
El acceso a los sistemas de almacenamiento permite subir ficheros que quedarán almacenados en la nube. Posteriormente, hay distintas formas de acceder a dichos ficheros, que por cierto, también pueden distribuirse en distintos directorios.
Otra de las partes del grupo hace referencia a las bases de datos, que tienes varias opciones, tanto relacionales como No-SQL. La base de datos NoSQL de Azure es CosmosDB, que tiene soporte para usar distintos tipos de bases de datos como MongoDB, DocumentDB, … o table es que es del tipo clave:valor. Por supuesto, existe una forma de trabajar con datos en formato JSON usando Document Data Stores. Una característica que sí me ha gustado mucho es que puedes aplicar sintáxis SQL para realizar consultas, aunque estés trabajando con bases de datos NoSQL. Por último, es posible trabajar con Graph Data Stores, GraphDB, que permite relacionar datos.
La última parte está dedicada al procesamiento de Big Data. Debido a que se trabaja con grandes volúmenes de datos, uno de los principios que hay que aplicar es el procesamiento en paralelo, con intención de no mover de la ubicación donde están alojados los datos, de forma que sean más rápidos los procesos. El destino de los datos procesados será almacenarlos para sacar informes, gráficas, representaciones, …. Esto mismo también aplica a los datos a procesar en tiempo real.
Entre las soluciones apostadas por Microsoft, dispones de las clásicas como Apache hadoop o Spark, dentro de un servicio llamado HDInsight, pero también está Azure Data Factory que permite montar redes y flujos de trabajo de forma que se puedan manejar todos los datos, limpiarlos, agregarlos hasta dejarlos preparados para la visualización de resultados, o incluso almacenarlos en otras bases de datos, hojas de cálculo, … Por supuesto, puedes usar todas las soluciones a la vez.
Las opciones incluidas para el análisis de Big Data desde Azure son muchas, para que no te falte de nada, incluso tienes Azure Machine Learning para que lo apliques.
Lo aprendido gracias a este curso
Si bien reconozco que trabajar con las distintas partes de este curso requiere tiempo y dedicación, la mejor de las conclusiones que saco es que la tecnología está disponible, al alcance de cualquiera, y que por supuesto, JSON es básico, pues es una estructura de datos flexible que se adapta muy bien a Javascript, y TypeScript, y cada vez hay bases de datos más potentes que hacen uso de este formato, que encima es abierto.
Vivimos en la era del Big Data, y si tienes intención de dar los primeros pasos en este mundo, dónde situarte, y por donde empezar, este curso es un primer escalón. Porque no hay que olvidar que, aunque Big Data signifique trabajar con las tres V, será necesario hacer adecuación de datos, limpieza de datos, agregaciones, … y todo de forma lo más automática posible, y sabiendo que las fuentes de origenes de datos serán múltiples y bien distintas, y que aplica no solo a texto o números, sino también a imágenes, audio, video, …..
Detrás de cada acción, por supuesto, debe haber un objetivo que alcanzar.
Pues nada, a seguir aprendiendo!