Power BI es el compendio de tecnologías que existían ya en las últimas versiones de Excel (Power Query, Power Pivot y Power View). Entendiendo que hay 3 aspectos diferenciados: conexión y carga de datos, manejo de los datos y visualización, en Power BI disponemos de 3 lenguajes distintos para cada una de estas situaciones, aunque no es imprescindible siempre su manejo, sí que, en proyectos reales, donde surgen muchas excepciones y requerimientos específicos será necesario conocer.
El proceso de adquisición de datos (en el modo de importación) se vale de un lenguaje denominado Power Query Formula Language, conocido popularmente como M, es el encargado de crear las consultas, aplicar cierta lógica a las mismas, incluir parámetros y disponer de funciones para acometer filtros y otras transformaciones de datos hasta el modelo de datos que tendremos en Power Query.
DAX (Data Analysis Expressions) es el lenguaje con el que mejorar el modelo de datos una vez tenemos los datos importados. DAX nos permite crear nuevas tablas, nuevas columnas y nuevas medidas a partir de un conjunto de funciones provenientes de Excel más otras añadidas al lenguaje con el objetivo de poder crear tablas calculadas, agregaciones, etc.
Por otro lado, Power BI incorpora la opción de programar en R (Microsoft R Open), se trata de un lenguaje Open Source orientado a análisis estadístico con el que aplicar multitud de algoritmos y a su vez graficar los resultados.