¿Qué hacer cuando tenemos muchos datos? ¿Y si llegan en un flujo continuo?¿Necesito analizarlos ya?¿puedo ofrecer esa información como servicio? ¿puedo visualizarlo con Power BI?
Manejando grandes datos en un tiempo razonable. La nube como factor diferencial from SolidQ on Vimeo.
Presentación realizada en el SolidQ Summit por: Carlos Moreno Rojo
1. #SQSummit Manejando grandes volúmenes de datos en un tiempo razonable. Carlos Moreno Rojo cmoreno@solidq.com @carmorenorojo La nube como factor diferencial.
2. Contenido de la sesión 1. Orígenes de datos “no relacionales” en la empresa. Obtener conocimiento desde el origen. Azure. 2. Manejando datos semiestructurados. ¿Qué es realmente Big Data? Big Data es para todos. Trabajar con Big Data. 3. Manejando datos en “streaming”. Entendiendo el “streaming”. Arquitectura de IoT. La belleza del IoT.
3. Datos y analítica en Azure (24/5/16) HDInsight Microsoft’s cloud-based Big Data service. Apache Hadoop and other popular Big Data solutions Machine Learning Build, deploy and share advanced analytics solutions Data Factory Transform data into trusted information orchestrating data flows and decisions Event Hub Cloud-scale telemetry ingestion from websites, apps, devices… Stream Analytics Unlock real-time insights from streaming data Data Lake Analytics Big Data analytics made easy Data Catalog Data source discovery to get more value from existing enterprise data assets Cognitive Services Build apps with powerful built in algorithms and AI IoT Hub Create your own IoT hub and hook it to your Azure IoT services. Data Lake Hyper-scale repository for big data analytic workloads SQL Data Warehouse Fully elastic, managed, and parallelized relational database. Power BI Embedded (preview Embed fully interactive, stunning data visualizations in your applications
4. 1. Orígenes de datos “no relacionales” en la empresa. Obtener conocimiento desde el origen. Azure. • Otros tipos de datos “no relacionales” • ¿Qué podemos hacer si quiero manejar un gran volumen de datos semiestrucutados en un tiempo razonable? • ¿Qué podemos hacer si los datos me llegan en un flujo constante y para generar información en tiempo real quiero manejarlos mientras fluyen? • Azure nos facilita muchísimo la vida para trabajar con esta tipología de datos
5. Contenido de la sesión • 1. Grandes volúmenes de datos menos habituales. Obtener conocimiento desde el origen. Azure. • 2. Manejando datos semiestructurados. • ¿Qué es realmente Big Data? Big Data es para todos. • Trabajar con Big Data. • 3. Manejando datos en “streaming”. • Entendiendo el “streaming”. • Una Arquitectura de IoT. La belleza del IoT.
6. 2. Manejando datos semiestructurados. ¿Qué es realmente Big Data? Big Data es para todos. • ¿Big Data? “¡Qué miedo!” o “No lo veo en mi empresa”. • Es para grandísimas empresas. NO. • Es para grandísimos volúmenes de datos. NO. • Necesitaré contratar a SolidQ de por vida. NO. (o no necesariamente ?) • Concepto de Big Data. Paradigma que nos permite manejar datos, generalmente no estructurados, mediante almacenamiento y procesamiento distribuido gracias a una elevada, y relativamente simple, escalabilidad.
7. 2. Manejando datos semiestructurados. ¿Qué es realmente Big Data? Big Data es para todos. • Partes de Big Data: • Frameworks: Hadoop, Spark • Distribuciones: Cloudera, Hortonworks, Microsoft • Herramientas o lenguajes: Hive, Pig, Storm, Sqoop, Spark ML
8. Contenido de la sesión • 1. Grandes volúmenes de datos menos habituales. Obtener conocimiento desde el origen. Azure. • 2. Manejando datos semiestructurados. • ¿Qué es realmente Big Data? Big Data es para todos. • Trabajar con Big Data. • 3. Manejando datos en “streaming”. • Entendiendo el “streaming”. • Arquitectura de IoT. La belleza del IoT.
9. 2. Manejando datos semiestructurados. Trabajar con Big Data. • Provisionar un clúster: HDInsight. • Almacenamiento: Blob Storage. • Procesamiento y almacenamiento están desacoplados. • Trabajo con el clúster: Ambari y Hive. • Conexión / Herramientas cliente. • Cargar datos. • Procesamiento: HiveQL. • Consumir resultados: Blog Storage y ODBC + Excel.
10. 2. Manejando datos semiestructurados. Trabajar con Big Data. • Conexión / Herramientas cliente.
11. 2. Manejando datos semiestructurados. Trabajar con Big Data. Arquitectura que vamos a ver:
12. Demo Trabajar con Big Data.
13. Contenido de la sesión • 1. Grandes volúmenes de datos menos habituales. Obtener conocimiento desde el origen. Azure. • 2. Manejando datos semiestructurados. • ¿Qué es realmente Big Data? Big Data es para todos. • Trabajar con Big Data. • 3. Manejando datos en “streaming”. • Entendiendo el “streaming”. • Arquitectura de IoT. La belleza del IoT.
14. 3. Manejando datos en “streaming”. Entendiendo el “streaming”. • Terminos de moda: IoT ? Streaming. • Definición “streaming”: Fluyendo. • Mi esquema mental: Una tubería infinita por la que fluyen de forma ininterrumpida un flujo de datos • “Windowing”: ¿Qué porción de datos? ¿Cada cuánto tiempo? • “Timestamp by”: Línea de tiempo
15. 3. Manejando datos en “streaming”. Entendiendo el “streaming”. “Windowing” ¿Qué porción de datos? ¿Cada cuánto tiempo? • Tumbling Window: cada X genera una ventana de X.
16. 3. Manejando datos en “streaming”. Entendiendo el “streaming”. “Windowing” ¿Qué porción de datos? ¿Cada cuánto tiempo? • Hopping Window: cada X utilizo una ventana de Y.
17. 3. Manejando datos en “streaming”. Entendiendo el “streaming”. “Windowing” ¿Qué porción de datos? ¿Cada cuánto tiempo? • Sliding Window: al producirse un evento utilizo una ventana de X
18. Contenido de la sesión • 1. Grandes volúmenes de datos menos habituales. Obtener conocimiento desde el origen. Azure. • 2. Manejando datos semiestructurados. • ¿Qué es realmente Big Data? Big Data es para todos. • Trabajar con Big Data. • 3. Manejando datos en “streaming”. • Entendiendo el “streaming”. • Arquitectura de IoT. La belleza del IoT.
19. 3.Manejando datos en “streaming”. Arquitectura de IoT. La belleza del IoT. • Origen: qué genera los datos. • Entrada: tubería infinita. • Base de datos • Ficheros • Cola de Azure Storage • Azure EventHub • Azure IoTHub • Procesamiento: pieza clave. • ETL convencional • Azure Stream Analytics • Storm • Spark Streaming
20. Manejando datos en “streaming”. Arquitectura de IoT. La belleza del IoT. • Salida: dónde dejamos los datos. • Base de datos • Blob Storage • Azure SQL • *Power BI • Y un larguísimo etcétera • Explotación: cómo podrán ver los datos los usuarios. • Power BI • Excel
21. Manejando datos en “streaming”. Arquitectura de IoT. La belleza del IoT.
22. Demo Una arquitectura de IoT basada en Azure.
23. ASA –> PowerBI SQL Azure -Direct Query- SQL Azure – Importar datos- Procesamiento ASA procesa sin problemas. La escritura de datos directamente en PowerBI luego es poco controlable. Elimina los datos cuando llega al máximo de registros. ASA escribe sin problemas 2.000 registros por minuto en una BD Basic. Para mejorar rendimiento utilizar “columnstore” o la tabla in-memory es necesario nivel “Premium” de BD. ASA escribe sin problemas 2.000 registros por minuto en una BD Basic Datos referencia Permitido pero se maneja con ficheros en “blobstorage” El rendimiento puede verse afectado, pero es perfectamente utilizable. Se podrían subir a esta BD los datos de referencia necesarios para posteriormente generar las consultas necesarias para mostrar los datos en PowerBI Se podrían subir a esta BD los datos de referencia necesarios para posteriormente generar las consultas necesarias para mostrar los datos en PowerBI Filtrado para visiones La forma de filtrar sería la creación de un “dataset” por cada valor a filtrar. El filtrado de Sala se puede realizar incluyendo seguridad a nivel de fila directamente sobre PowerBI. Si importamos los datos no está habilitada la opción de seguridad por fila en PowerBI, por lo que habría que recurrir a tener un “dataset” por cada valor a filtrar. Al estar en “preview” no estará 100%. Diseño informe Solo desde PowerBI Web Para poder usar la opción de filtrado por fila es necesario diseñar en informe en PowerBI Desktop, publicarlo y añadir la seguridad desde PowerBI Web. Si se aplica la seguridad por filas y se vuelve a desplegar el “dataset” desde PowerBI Desktop habría que volver a configurar los roles, según la documentación de PowerBI. PowerBI Web o PowerBI Desktop Actualización datos En tiempo real, cada vez que ASA envía datos, se ven reflejados en los paneles de PowerBI Según se entiende en la documentación se debería refrescar cada 15 minutos pero ahora mismo no lo hace. Desde el móvil o desde la aplicación de PowerBI, si se interactua con el panel se refrescan los datos. Desde la web, tanto en el informe como en el panel hay que pulsar en actualizar datos. Se puede automatizar el refresco de los datos y cada vez que se refrescan los objetos en los paneles también se refrescan. Antes se podían refrescar cada 15 minutos pero este lunes parecen haber cambiado y ahora hay que programar la actualización a las horas que queramos y solo aparecen los 00 y 30 minutos de cada hora.
24. Conclusiones… 1. Orígenes de datos “no relacionales” en la empresa. Obtener conocimiento desde el origen. Azure. 2. Manejando datos semiestructurados. ¿Qué es realmente Big Data? Big Data es para todos. Trabajar con Big Data. 3. Manejando datos en “streaming”. Entendiendo el “streaming”. Arquitectura de IoT. La belleza del IoT.
25. También puedes preguntar tus dudas con el hashtag #SQSummit en Twitter ADAPTIVE BI FRAMEWORK Te ayudaremos a mejorar la velocidad de desarrollo de tu plataforma de analítica de negocio basada en nuestra experiencia: •Diseña antes de construir •Automatización de procesos por ETL •Servicios de mentoring para ayudarte a conseguir mejores prácticas para la construcción de procesos específicos y plataformas de analítica de negocio •Muy fácil de mantener SOLIDQ FLEX SERVICES Con SolidQ Flex Services evitarás sustos, consiguiendo que tus sistemas sean estables. Desde una solución sencilla de monitorización, hasta un servicio de atención de incidencias 24/7, mantenimiento proactivo, resolución de problemas y línea de soporte. Todo con un coste fijo mensual… y tú dedica el tiempo a las cosas important