Es innegable que los motores de BBDD transaccionales deben adaptarse a la posibilidad de gestionar datos no estructurados. Microsoft en SQL Server 2016 incluye un motor nuevo (llamado Polybase) que permite acceder con lenguaje Transact SQL a datos no estructurados y poder mezclarlos con datos estructurados. En esta sesión conocerá este nuevo motor y cómo empezar a integrar datos no estructurados en sus bases de datos transaccionales.

Presentación realizada en el SolidQ Summit por: Eladio Rincón

Polybase from SolidQ on Vimeo.

 



1. #SQSummit Polybase Eladio Rincón erincon@solidq.com Cruzando datos estructurados y menos estructurados

2. Polybase en SQL Server 2016 • Motivación y Escenarios de Uso • Arquitectura Hadoop – foco consultar • Arquitectura Polybase • Instalación y Puesta en Marcha • Conclusiones

3. Definiciones de Big Data • Un conjunto de tecnologías relacionales y no relacionales para analítica a gran escala • Gran volumen, alta velocidad y gran variedad de información que demanda un procesado poco costoso para obtener conocimiento y tomar decisiones. • Volumen: Terabytes, Petabytes, Exabytes • Velocidad: hora, segundos, milisegundos • Variedad: 5 formatos, 10 formatos, 20+ formatos • Variabilidad: formatos cambian en el tiempo • Valioso: beneficio/coste de la solución

4. Definiciones de Big Data

5. Motivación Polybase – Usuario Final

6. Motivación Polybase – Habilidades

7. Escenarios de Uso: Big Data • Combinar cualquier origen de datos • Desordenado: webs, media • Bastante ordenado: fb, twitter, sensors, • Casi ordenado: csv, arc. intercambio • Ordenado: otros RDBMS • Datos archivados • Demasiado valiosos para borrar

8. Escenarios de Uso: Big Data  Polybase Latencia Transformación Desordenado – Webs, Media Ordenado – Otros RDBMS Casi Ordenado – csv, txt Bastante Ordenado – twitter, streams Transformación compleja

9. Escenarios de Uso Polybase: Gran Depende • Data Scientists: Leer muchos datos? • Capacidad Calculo: A qué coste? • ETL/ELT: Transformar datos? • Archiving: A sitio barato?

10. Escenarios de Uso Polybase: Data Scientists Necesidad: • Leer y transformar cualquier cosa • Gran capacidad de cálculo • Menos de 100 usuarios Procedimiento: • Modela su visión • Transfiere modelo Desordenados!? Scale up, out Concurrencia 32

11. Escenarios de Uso Polybase: Capacidad Calculo • Volumetría de procesamiento muy grande • Predicate push-down! • Dependiendo de necesidades • Modelo on-prem • Modelo appliance • Modelo PaaS • Modelo Storage SQL DW PaaS Autogestionado Grande, modelo racks SQL de siempre Azure Storage Solo store!

12. Escenarios de Uso Polybase: ETL/ELT • Dilema en proyectos de Big Data ETL (transforma antes) ELT (transforma después) Cuando “1 vez” En cada lectura Flexible Esquema fijo Falsa Flexibilidad Estructurado En Capas – Staging Mezcla de capas Modelado Modelo Primero Modelo Después Herramientas SSIS, BIML Hive, TSQL, APIs

13. Escenarios de Uso Polybase: Archiving y acceso rápido/eventual Polybase es mixto • Mezclado con Hadoop existente • Storage en Azure (no calculo) • Push Storage a Azure. Distinto de StrechDB Hadoop DELL/HP Legacy Systems Coste / TB 1K USD 10-15K USD 40-50K USD http://www.informationweek.com/software/how-hadoop-cuts-big-data-costs/d/d-id/1105546?

14. © Hortonworks Inc. 2013 – Confidential Apache Hive: SQL in Hadoop CORE SERVICES DATA SERVICES SQOOP FLUME HIVEPIGHBASE TEZStore and Process Data Apache Hive SQL interface in Hadoop • De-facto SQL interface, enables world of tools on Hadoop • Scales from GB to PB across all queries • Good for both batch and interactive queries • First application to use Apache Tez OPERATIONAL SERVICES Provision, Manage & Monitor the cluster

15. Arquitectura: Objetivos Diseño • Interfaces / Conceptos • Similar a Hive: tablas reales • Acciones • Leer y escribir de/a Hadoop  SELECT, INSERT • Combinar datos  JOIN • Orígenes • On-prem: SQL Server y APS • PaaS: SQL DW • Cualquier distribución Hadoop • Azure Storage (sin HDInsight!)

16. Arquitectura: Diseño Cloudera HortonWorks Azure Storage SQL DW PaaS

17. Las consultas entran por aqui Se consultan tablas locales o externas Los Nodos de cálculo son útiles para escalar procesamiento contra tablas externas HDFS El DBA ajusta dinámicamente el número de nodos de calculo El cluster Hadoop se puede compartir con varios clusters de SQL Server Arquitectura: Diseño final on Prem

18. Las consultas entran por aqui Se consultan tablas locales o externas Arquitectura: SQL DW PaaS El DBA ajusta dinámicamente el número de nodos de calculo (DW Units)

19. Instalación y Puesta en Marcha (INS) • Pasos para usar Polybase: 1. Elegirlo en Setup 2. Habilitarlo en instancia 3. Enlazar SQL con Hadoop 4. Crear “tablas” 5. Consumir datos

20. INS: Elegirlo en el Setup • Pre-requisitos: • SQL2016 STD/EE • .NET 4.5 • JRE 7.51 • 4GB RAM • 2GB Disk Space • TCP/IP

21. INS: Habilitarlo en Instancia • Opciones de configuración: exec sp_configure ‘hadoop connectivity’, 7;

22. INS: Enlazar con Hadoop • Transact SQL:

23. INS: Crear Formatos de Archivos

24. INS: Crear Tablas

25. INS: Crear Tablas (CTAs) • Solo SQL Azure DW y APS

26. INS: Crear Tablas (CTAs) • Solo SQL Azure DW y APS

27. DEMO Ejemplos con Polybase

28. Conclusiones y Retos • Propósito • Integrar datos de fuentes diversas • Dentro de SQL Server, con Scale-out • Retos y Dilemas • ETL o ELT mientras lees? • Índice de concurrencia? • Tiempo real? • Archivado?

29. 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 importantes. ¡Gracias!

30. Apéndice

31. © Hortonworks Inc. 2013 – Confidential Arquitectura Hadoop Hortonworks Data Platform (HDP) • Core Services – Storage & processing • Data Services – Movement and interaction • Operational Services – Management, monitoring CORE SERVICES HORTONWORKS DATA PLATFORM (HDP) OPERATIONAL SERVICES DATA SERVICES HDFS SQOOP FLUMEAMBARI FALCON YARN MAP TEZREDUCE HIVEPIG HBASE OOZIE Enterprise Readiness High Availability, Disaster Recovery, Rolling Upgrades, Security and Snapshots

32. © Hortonworks Inc. 2013 – Confidential Apache Flume: Loading Stream Data CORE SERVICES DATA SERVICES SQOOP FLUME HIVEPIGHBASE Apache Flume Store Log Files & Events • Distributed service for efficiently collecting, aggregating, and moving streams of log data into HDFS • Primary use case: move web log files directly into Hadoop Store and Process Data OPERATIONAL SERVICES Provision, Manage & Monitor the cluster

33. © Hortonworks Inc. 2013 – Confidential Apache Sqoop: Loading Databases CORE SERVICES DATA SERVICES SQOOP FLUME HIVEPIGHBASE Apache Sqoop Get Data from/to SQL Databases • SQ-OOP: SQL to Hadoop • Tools and connectors that enable data from traditional SQL databases and data warehouses to be stored to & retrieved from Hadoop Store and Process Data OPERATIONAL SERVICES Provision, Manage & Monitor the cluster

34. © Hortonworks Inc. 2013 – Confidential Apache Pig: Scripting in Hadoop CORE SERVICES DATA SERVICES SQOOP FLUME HIVEPIGHBASE Store and Process Data Apache Pig Scripting Interface for Hadoop • Write complex data transformations using a simple scripting language • Pig latin (the language) defines a set of transformations on a data set such as aggregate, join and sort among others OPERATIONAL SERVICES Provision, Manage & Monitor the cluster