La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

##SQLSatMadrid Para crear modelos analíticos: ¿Power Query o Power Pivot? ¿M o DAX? Ana María Bisbé York Consultora BI

Presentaciones similares


Presentación del tema: "##SQLSatMadrid Para crear modelos analíticos: ¿Power Query o Power Pivot? ¿M o DAX? Ana María Bisbé York Consultora BI"— Transcripción de la presentación:

1 ##SQLSatMadrid Para crear modelos analíticos: ¿Power Query o Power Pivot? ¿M o DAX? Ana María Bisbé York Consultora BI http://amby.net/ anabisbe@amby.net @ambynet

2 ##SQLSatMadrid BIG Thanks to SQLSatMadrid Sponsors

3 ##SQLSatMadrid 4 Sponsor Sessions at 11:40 Don’t miss them, they might be getting distributing some awesome prizes!  HPE  SolidQ  KABEL  TSD Consulting Also BIG Raffle prizes at the end of the event provided by: Plainconcepts, SolidQ, Kabel, TSD Consulting, Pyramid Analytics & sqlpass.es

4 ##SQLSatMadrid Agenda  Modelos tabulares con Microsoft  Excel Power BI vs Power BI Desktop  Power Query vs Power Pivot  M vs DAX  Combinar consultas vs RELATED()  Agrupar columnas vs RELATEDTABLE()  Control de errores  Columnas calculadas vs transformaciones de consulta  BI de tiempos  Semanas  Columnas vs Medidas  Granularidad  Analizar en Excel desde PowerBI 4 |

5 ##SQLSatMadrid Consulta y Modelos tabulares  Consulta para acceder a datos  Lenguaje M  Modelos tabulares  Basados en tablas y sus relaciones  Lenguaje DAX  Data Analysis Expressions  Entornos tabulares Microsoft  SQL Server Analysis Services Tabular  Power Pivot  Power BI

6 ##SQLSatMadrid EXCEL VS POWER BI

7 ##SQLSatMadrid Excel vs Power BI  Excel - herramienta madura de Microsoft con muchas funcionalidades además de Power BI  http://amby.net/2016/03/14/serie-ms-office-excel-2016/ http://amby.net/2016/03/14/serie-ms-office-excel-2016/ MS Excel 2016 Mejoras en tabla dinámica Nuevos gráficos Hojas de pronóstico Nuevas funciones Excel y DAX Obtener y transformar vs Power Query Mejoras en Power Pivot Power View Mapas 3D vs Power Map Mejoras en colaboración Excel 2016 y PowerBI Excel 2016 para Office 365

8 ##SQLSatMadrid Excel vs Power BI  Power BI - Mucho más que PowerBI Desktop

9 ##SQLSatMadrid Excel vs Power BI  Power BI acaba de cumplir un año  https://powerbi.microsoft.com/es-es/blog/happy-first-birthday-to-power-bi/ https://powerbi.microsoft.com/es-es/blog/happy-first-birthday-to-power-bi/

10 ##SQLSatMadrid Excel vs Power BI - interfaz  Power BI Query Designer vs Power Query  Apenas se diferencian estéticamente

11 ##SQLSatMadrid Excel vs Power BI - interfaz  Vista relaciones

12 ##SQLSatMadrid Excel vs Power BI - interfaz  Vista Datos

13 ##SQLSatMadrid ¿Excel vs Power BI?  Lo mejor de ambos mundos  Excel como herramienta de uso masivo sigue siendo imprescindible  También para consumir Power BI  Power BI es y será en el futuro la herramienta más utilizada, con independencia del origen de datos para crear modelos, publicar, compartir y consumir modelos analíticos  Se hermana con Excel, como origen y destino

14 ##SQLSatMadrid POWER QUERY VS POWER PIVOT

15 ##SQLSatMadrid Power Query vs Power Pivot Aspecto / HerramientaPower QueryPower Pivot Identificación de relaciones entre tablas en servidor SQL Server Al reutilizar la conexión, sí importa las relaciones entre tablas existentes en la base de datos de origen Al reutilizar la conexión, no importa las relaciones entre tablas existentes en la base de datos de origen Extracción de datos Extrae un subconjunto para facilitar vista preliminar y realizar las transformaciones Importa los datos, creando una instantánea entre lo que hay físicamente en Excel y lo que hay en el servidor en el momento de la importación Ejecución de transformaciones En el servidor que corresponde al origen de datos, siempre que sea posible En Excel, al servidor de origen sólo se accede durante la importación y el procesado o recarga de datos

16 ##SQLSatMadrid Power Query vs Power Pivot Aspecto / HerramientaPower QueryPower Pivot Uso de memoria Durante la creación de la consulta al no tener cargados todos los datos, no es un problema Al tener todos los datos almacenados en memoria, puede provocar problemas de rendimiento Consumo del resultado desde tabla dinámica (TD) No hay paso directo de PQ a TD Sí, nativo Consumo del resultado desde Power View (PV) No Sí, es origen de datos para PV Consumo del resultado desde Power Map (PM) No Sí, es origen de datos para PM Lenguaje para transformaciones Lenguaje M para extracción y transformación Lenguaje de expresiones DAX para crear columnas calculadas y medidas

17 ##SQLSatMadrid Power Query vs Power Pivot Aspecto / HerramientaPower QueryPower Pivot Opciones de menú para transformaciones Cubren todas las transformaciones básicas necesarias No existen opciones de menú para transformaciones. Para crear columnas calculadas y/o medidas hay que escribir expresiones DAX Opciones de menú para propiedades Si, existen Curva de aprendizaje No hay que aprender M, conviene entenderlo y trabajar, en algún caso, desde el editor avanzado de código No se puede evitar, hay que entender DAX, que aunque puede recordar a Excel y/o al mundo relacional, es diferente y puede costar entender su comportamiento

18 ##SQLSatMadrid Power Query vs Power Pivot Aspecto / HerramientaPower QueryPower Pivot Reusabilidad La consulta en M, puede ser copiada y pegada en otro libro Excel, ejecuta, modificada a mano, por ejemplo, es muy sencillo actualizar la ruta de un origen de datos No es posible “copiar” y “pegar” un modelo tabular creado en PowerPivot, lo que sí se puede hacer es consultar, con DAX, uno existente ResultadoConsultaModelo tabular Funcionalidad Definir la consulta para extraer datos, transformarlos y cargarlos en hojas Excel y/o Modelos de datos (Power BI Designer) Su funcionalidad es crear el Modelo tabular que será consumido, entre otros, por tablas y gráficos dinámicos, PV y PM

19 ##SQLSatMadrid ¿Power Query vs Power Pivot?  Lo mejor de ambos mundos  Power Query para acceder, limpiar, y transformar datos que llegan desde todo tipo de origen  Lenguaje M  Power Pivot para modelar, clasificar columnas por categorías, crear jerarquías, sinónimos, crear cálculos  Lenguaje DAX  http://amby.net/2015/03/04/serie-power-query-vs-power-pivot/ http://amby.net/2015/03/04/serie-power-query-vs-power-pivot/

20 ##SQLSatMadrid Consulta vs Modelo  Escenarios  Normalizar o De-normalizar  Funcionalidad de los campos en el modelo  Jerarquías de usuario  Obtención de agregados  Detalles específicos dentro de los agregados  Control de errores  División por cero  Errores en conversión de datos  BI de tiempos  Semanas

21 ##SQLSatMadrid M - COMBINAR VS DAX - RELATED() Escenario: De-normalizar

22 ##SQLSatMadrid Escenario  Los campos Subcategoría y Categoría sólo sirven para describir el Producto  El objetivo es analizar desde jerarquía  Obtención de detalles por niveles

23 ##SQLSatMadrid Combinar M vs RELATED() DAX  Combinar  RELATED()

24 ##SQLSatMadrid M - AGRUPAR VS DAX - RELATEDTABLE() Escenario: Agregados

25 ##SQLSatMadrid Escenario  Escenario  La columna CodCliente se repite tantas veces como haya comprado cada uno de los clientes  Objetivos para cada cliente  ¿Cuántas veces ha comprado?  Agregado  ¿Cuánto ha comprado?  Agregado  ¿Por cuánto compró la primera y última vez?  Detalle

26 ##SQLSatMadrid Agregados y Detalles  Consulta  DAX

27 ##SQLSatMadrid M – Agrupar filas - Agregados  Ordenar previamente por columna Fechas  Agrupar  Definir granularidad del grupo  Seleccionar CodCliente  Columnas agrupadas  CantidadVeces – conteo de filas  Ingresos – Suma de las Ventas  DetalleVentas – todos las filas

28 ##SQLSatMadrid M – Agrupar filas - Agregados  Ver Resultados  Ver detalles

29 ##SQLSatMadrid M – Agrupar filas - Detalles  Agregar dos líneas con el código para obtener el monto de la primera y última venta

30 ##SQLSatMadrid M – Agrupar filas – Agregados y detalles  Ver Resultado  Ver detalles

31 ##SQLSatMadrid DAX – Agregar con RELATEDTABLE()  RELATEDTABLE()  Sigue la relación 1:M y devuelve todas las filas que se relacionan con la fila actual  Ver datos

32 ##SQLSatMadrid M – FUNCIONES VARIAS VS DAX – FUNCIONES VARIAS Escenario: Control de errores

33 ##SQLSatMadrid Control de errores  Escenarios  Error al convertir tipo de datos  Error al realizar operaciones con “números”  División  Posibles soluciones  Eliminar toda la fila, ¿cómo?  No, no, cuidadín  Curarse en salud preguntando por el error y sustituyendo… antes de  Obtener información detallada del error  Devolver el dato al origen para su corrección

34 ##SQLSatMadrid M – Control de errores - Conversión  Utilizar TRY…0  Ver resultado

35 ##SQLSatMadrid M – Control de errores - División  División por cero y otros errores  Columna calculada en la consulta  Resultados  Problemas  Si el numerador o denominador no es número  Devuelve Error  Si el numerador o denominador es NULL  Devuelve NULL  Si el denominador es cero:  Infinity si el numerador es positivo  -Infinity si el numerador es negativo  0/0 devuelve NaN

36 ##SQLSatMadrid M – Control de errores - División  Uso de función TRY (código M)  Resultado, registro con detalles  Expandir y ver detalles  Resultado, registro con detalles

37 ##SQLSatMadrid M – Control de errores - División  Utilizar función TRY con sustitución  Ver resultados

38 ##SQLSatMadrid M – Control de errores - División  Crear función - comprobar registros con errores  Nueva consulta en blanco  Crear función

39 ##SQLSatMadrid M – Control de errores - División  Ver función creada  Comprobar calidad datos

40 ##SQLSatMadrid DAX – ¿Control de calidad y tipos de datos?  Para DAX ya es tarde   Las funciones de control de errores en DAX son lentas,  Muy muy dañinas para el rendimiento   En el momento de modelado hay que saber ya de qué tipo es nuestro dato y garantizar su limpieza  Columna ID, columna de relación  No duplicados  Tipo correcto  Control de calidad de datos  Consulta, consulta y otra vez consulta  Código M - TRY

41 ##SQLSatMadrid Control de errores en DAX  Funciones DAX  DIVIDE(), optimizado por el motor

42 ##SQLSatMadrid M – FUNCIONES NATIVAS VS DAX – NO EXISTEN FUNCIONES  Escenario: BI de tiempo - Semanas

43 ##SQLSatMadrid Escenarios  BI de tiempos  Lo mejor de ambos mundos  Crear las columnas desde Power Query, las necesarias  Disfrutar de las funciones DAX de BI de tiempo  ¿Y qué hay para semanas?

44 ##SQLSatMadrid BI de tiempos – DAX Períodos anteriores y posteriores

45 ##SQLSatMadrid Consulta – BI de tiempos  Transformaciones disponibles para Semanas  M

46 ##SQLSatMadrid Consulta BI de Tiempo  Devuelve Verdadero o Falso  ¿Semana pasada?  ¿Últimas n semanas?  ¿Semana actual?  ¿Próxima semana?  Devuelve Fecha  Suma y Resta semanas  ¿Hay funciones para estos escenarios?  Sí, hay funciones en lenguaje M nativo

47 ##SQLSatMadrid Consulta BI de Tiempo - ¡¡¡ Ayuda !!!  Nueva consulta en blanco  Función #shared  Devuelve funciones y enumeradores del lenguaje M  Convertir a tabla  Resultado

48 ##SQLSatMadrid Consulta BI de Tiempo  Obtener ayuda de la referencia del lenguaje  Filtrar por “Week”  Resultado  Crear nuevas consultas (funciones)

49 ##SQLSatMadrid Consulta BI de Tiempo  Crear las funciones necesarias  Dar respuesta a requerimientos  Crear columnas que llamen a las funciones

50 ##SQLSatMadrid Consulta BI de Tiempo  Resultado Final

51 ##SQLSatMadrid DAX – FUNCIONES ¿Olvidar DAX? De eso nada !!! DAX es nuestro mejor aliado a la hora de modelar

52 ##SQLSatMadrid Escenarios  Jerarquías no balanceadas: padre-hijo  Identificación y uso de patrones  Filtros avanzados  Crear tablas, columnas calculadas y medidas

53 ##SQLSatMadrid Variables en DAX  Muy útil y poderoso  Ventajas  Legibilidad del código  Menos repeticiones  La variable garantiza que la evaluación de la expresión ocurre una sola vez  Todos los tipos de datos están soportados en las variables

54 ##SQLSatMadrid Uso de Columnas calculadas vs Medidas  Columnas  Filtros  Segmentadores  Es necesario tener el dato visible  Análisis ABC o de Pareto  Medidas  Cálculos para implementar lógica  BI de tiempos  Cálculos de Porcentajes  Ratios  Agregaciones complejas

55 ##SQLSatMadrid Cálculos DAX para modelos tabulares  Columnas calculadas ¡¡ evitar las innecesarias !!  Estas dos son innecesarias, crear medidas  Medida o campo calculado  Tabla calculada

56 ##SQLSatMadrid DAX columnas vs medidas Analizar en Excel  Contenido modelo Power BI vs Excel  Replica exactamente el modelo  Al panel valores sólo se pueden agregar las Medidas  No reconoce las columnas numéricas como valores

57 ##SQLSatMadrid ¿Preguntas?  Ana María Bisbé York  anabisbe@amby.net anabisbe@amby.net  http://amby.net/ http://amby.net/  @ambynet  ¡¡ Gracias !!

58 ##SQLSatMadrid Recursos Consultas y M  Libro  https://www.amazon.com/gp/product/1615 470395/ref=as_li_tl?ie=UTF8&camp=1789 &creative=390957&creativeASIN=161547 0395&linkCode=as2&tag=powe022- 20&linkId=QHM62FCPUOXVRTIJ https://www.amazon.com/gp/product/1615 470395/ref=as_li_tl?ie=UTF8&camp=1789 &creative=390957&creativeASIN=161547 0395&linkCode=as2&tag=powe022- 20&linkId=QHM62FCPUOXVRTIJ  Comparativas entre herramientas  https://www.youtube.com/watch?v=clIjG9q 3iTk https://www.youtube.com/watch?v=clIjG9q 3iTk  http://amby.net/2015/03/04/serie-power- query-vs-power-pivot/ http://amby.net/2015/03/04/serie-power- query-vs-power-pivot/  Power Query y lenguaje M  http://radacad.com/tutorial-introduction-to- power-query http://radacad.com/tutorial-introduction-to- power-query  http://radacad.com/power-query-formula- language-m http://radacad.com/power-query-formula- language-m

59 ##SQLSatMadrid Recursos Consultas y M  Uso de Shared  http://radacad.com/power-query-library-of-functions- shared-keyword http://radacad.com/power-query-library-of-functions- shared-keyword  http://radacad.com/how-to-get-list-of-all-functions- and-invoke-them-in-power-query http://radacad.com/how-to-get-list-of-all-functions- and-invoke-them-in-power-query  Trabajo con Semanas  http://radacad.com/grouping-in-power-query-getting- the-last-item-in-each-group http://radacad.com/grouping-in-power-query-getting- the-last-item-in-each-group  Y más…  https://blog.crossjoin.co.uk/2016/05/15/creating-m- functions-from-parameterised-queries-in-power-bi/ https://blog.crossjoin.co.uk/2016/05/15/creating-m- functions-from-parameterised-queries-in-power-bi/

60 ##SQLSatMadrid Recursos DAX  Libro  http://www.amazon.es/dp/073569 835X/?tag=wwwsqlbicom0f-21 http://www.amazon.es/dp/073569 835X/?tag=wwwsqlbicom0f-21  BI Tiempos  https://www.sqlbi.com/articles/we ek-based-time-intelligence-in- dax/ https://www.sqlbi.com/articles/we ek-based-time-intelligence-in- dax/  Patrones  http://www.daxpatterns.com/ http://www.daxpatterns.com/  http://www.daxpatterns.com/usec ases/ http://www.daxpatterns.com/usec ases/

61 ##SQLSatMadrid Recursos DAX  Trabajo con semanas desde DAX  https://www.sqlbi.com/articles/week-based-time- intelligence-in-dax/ https://www.sqlbi.com/articles/week-based-time- intelligence-in-dax/  Y más…  https://blog.crossjoin.co.uk/2015/12/15/power-bi-desktop- sort-by-column-and-dax-calculations-that-use-the-all- function/ https://blog.crossjoin.co.uk/2015/12/15/power-bi-desktop- sort-by-column-and-dax-calculations-that-use-the-all- function/  https://projectbotticelli.com/knowledge/dax-calculated- columns-vs-measures-video-tutorial https://projectbotticelli.com/knowledge/dax-calculated- columns-vs-measures-video-tutorial  https://projectbotticelli.com/knowledge/what-is-time- intelligence-video-tutorial https://projectbotticelli.com/knowledge/what-is-time- intelligence-video-tutorial  https://projectbotticelli.com/knowledge/how-calculate- hierarchies-dax-video-tutorial-data-analysis-expressions https://projectbotticelli.com/knowledge/how-calculate- hierarchies-dax-video-tutorial-data-analysis-expressions

62 ##SQLSatMadrid BIG Thanks to SQLSatMadrid Sponsors


Descargar ppt "##SQLSatMadrid Para crear modelos analíticos: ¿Power Query o Power Pivot? ¿M o DAX? Ana María Bisbé York Consultora BI"

Presentaciones similares


Anuncios Google