Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
se aplica a: SQL Server Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
En este artículo se resumen las nuevas características, mejoras, características en desuso y desusadas, y el comportamiento y los cambios importantes en las versiones más recientes de SQL Server Analysis Services (SSAS).
Servicios de Análisis de SQL Server 2025
Mejoras de rendimiento
Modelos con grupos de cálculo y cadenas de formato en Excel
Hemos realizado mejoras importantes en el rendimiento de las consultas MDX en modelos con grupos de cálculo y cadenas de formato para reducir el uso de memoria y mejorar la capacidad de respuesta. Los últimos cambios mejoran considerablemente el rendimiento y la confiabilidad de las operaciones en Analizar en Excel en modelos que incluyen uno o ambos:
Cadenas de formato dinámico para medidas
Elementos calculados con cadenas de formato
Para obtener más información, visite Cadenas de formato dinámico.
Ejecución de consultas paralelas para DirectQuery
El paralelismo mejorado en el modo DirectQuery permite tiempos de respuesta más rápidos para consultas complejas. La idea fundamental es maximizar el rendimiento de las consultas mediante la paralelización de varias consultas al origen de datos para una sola consulta DAX. Esta paralelización de consultas reduce el impacto de los retrasos del origen de datos y las latencias de red en el rendimiento de las consultas. Para obtener más información, visite este blog.
Fusión horizontal
SSAS 2025 incorpora la versión más reciente de Horizontal Fusion, una optimización del rendimiento de consultas que reduce el número de consultas SQL generadas por DAX, lo que mejora la eficacia de DirectQuery. Para obtener más información, visite: Anuncio de la fusión horizontal.
Funciones y funcionalidades de DAX
Cálculos visuales
La forma en que escribe DAX cambia hoy con la introducción de cálculos visuales. Los cálculos visuales son cálculos DAX que se definen y ejecutan directamente en una visualización. Un cálculo visual puede hacer referencia a cualquier dato en el visual, incluidas columnas, medidas u otros cálculos visuales. Este enfoque elimina la complejidad del modelo semántico y simplifica el proceso de escritura de DAX. Puede usar cálculos de objeto visual para completar cálculos empresariales comunes, como sumas o medias acumuladas. Para obtener más información sobre cómo habilitar y usar cálculos visuales, visite Introducción a los cálculos visuales.
Comportamiento del filtro de valor
Presentamos una nueva opción para controlar el comportamiento del filtro de valores. Al habilitar la configuración "Filtros de valor independiente", los usuarios pueden evitar la combinación automática de varios filtros en la misma tabla en un solo filtro combinado. Este cambio ofrece mayor flexibilidad, lo que permite un filtrado más preciso e independiente para satisfacer necesidades de modelado específicas y mejorar la precisión y el control de las consultas de datos. Para establecer esta propiedad para SSAS, puede usar el modelo de objetos tabulares o TMSL basado en la propiedad ValueFilterBehavior . Para obtener más información, visite: Comportamiento del filtro de valor.
Expresiones de selección para grupos de cálculo
Las expresiones de selección permiten un control ajustado sobre cómo se comportan los cálculos cuando se cumplen determinadas condiciones. Las expresiones de selección presentan lógica adicional para controlar casos en los que se seleccionan varios elementos de cálculo o cuando no se realiza ninguna selección específica en un grupo de cálculo. Para obtener más información, visite: Grupos de cálculos.
Mejoras en las funciones DAX
SSAS 2025 incluye compatibilidad con varias nuevas funciones DAX y mejoras, entre las que se incluyen:
LINEST y LINESTX: estas dos funciones realizan una regresión lineal, utilizando el método Mínimos cuadrados, para calcular una línea recta que mejor se adapte a los datos especificados y devuelvan una tabla que describa esa línea. Estas funciones son especialmente útiles para predecir valores desconocidos (Y) cuando se proporcionan valores conocidos (X). Para obtener más información, visite: Función DAX LINEST y FUNCIÓN DAX LINESTX.
Funciones INFO: las DMV de TMSCHEMA existentes ahora están disponibles como una nueva familia de funciones DAX, que permite consultar metadatos sobre modelos semánticos directamente dentro de DAX, lo que ofrece integración con otras funciones DAX para mejorar el diagnóstico y el análisis. Para obtener más información, visite: Información de funciones DAX.
APPROXIMATEDISTINCTCOUNT: esta función está disponible actualmente para el modo DirectQuery y devuelve un recuento estimado de valores únicos en una columna invocando una operación de agregación correspondiente en el origen de datos, que está optimizada para el rendimiento de las consultas. Para obtener más información, visite La función DAX Approximatedistinctcount, que enumera los orígenes de datos admitidos.
Funciones de ventana: esta función recupera un segmento de resultados mediante posicionamiento absoluto o relativo. La función WINDOW facilita la realización de cálculos, como agregar un total en ejecución, una media móvil o cálculos similares que dependen de seleccionar un intervalo de valores. También incluye dos funciones auxiliares denominadas ORDERBY y PARTITIONBY. Para obtener más información, visite: Función DAX de ventana.
MINX/MAXX: Se ha agregado un parámetro variant opcional a las funciones MINX y MAXX DAX. Tradicionalmente, estas funciones omiten los valores de texto y booleano cuando hay variantes o tipos de datos mixtos, como texto y valores numéricos. Ahora, con el nuevo parámetro variant opcional establecido en TRUE, las funciones consideran los valores de texto. Para obtener más información, visite la función DAX MINX y la función DAX MAXX.
Características adicionales
Actualizaciones de la biblioteca cliente
Se recomienda a los clientes que actualicen a las bibliotecas más recientes de Analysis Services para beneficiarse del rendimiento, la confiabilidad y las mejoras de funcionalidad, como la compatibilidad con XML binario, la serialización tmDL, etc. En concreto, hemos cambiado la comunicación basada en XMLA de XML de texto plano a XML binario y hemos habilitado la compresión para las bibliotecas cliente de .NET. Para obtener más información, visite el blog sobre la mejora del rendimiento de comunicación de herramientas basadas en xmla. También puede encontrar siempre las versiones más recientes de las bibliotecas cliente en la página de descarga de bibliotecas cliente de Analysis Services.
Mejoras de control de caracteres Unicode
SSAS ahora admite estándares Unicode actualizados, ya que proporciona compatibilidad con pares suplentes Unicode para estándares de caracteres, como el estándar de administración pública chino GB18030 en DAX.
Métricas de ejecución para diagnósticos
Las métricas de ejecución ahora se exponen a través de seguimientos XEvents y Profiler, lo que permite a los clientes analizar el rendimiento de las consultas de forma más eficaz.
Características en desuso y cambios importantes en SSAS 2025
Excel PowerPivot para SharePoint obsoleto
Hemos quitado Excel PowerPivot para el modo de SharePoint del instalador. Esta característica ha quedado en desuso en versiones anteriores y ya no se admite.
Actualización del ensamblado del cliente SQL
SSAS 2025 ahora usa una biblioteca cliente de SQL más reciente. Es posible que los clientes necesiten actualizar las definiciones del modelo para reflejar el nuevo nombre del proveedor (Microsoft.Data.SqlClient).
SQL Server 2022 Analysis Services
Actualización acumulativa 1 (CU1)
Actualización del cifrado
Esta actualización incluye una mejora en el algoritmo de cifrado de la operación de escritura de esquema. Esta mejora puede requerir que actualice las bases de datos de modelos tabulares y multidimensionales para garantizar el cifrado adecuado. Para más información, consulte Actualización del cifrado.
Disponible con carácter general
Fusión horizontal
Esta versión presenta Horizontal Fusion, una optimización del plan de ejecución de consultas destinada a reducir el número de consultas de origen de datos necesarias para generar y devolver resultados. Se fusionan varias consultas de origen de datos más pequeñas en una consulta de origen de datos más grande. Menos consultas de origen de datos significan menos recorridos de ida y vuelta y menos exámenes costosos en orígenes de datos grandes, lo que da lugar a mejoras de rendimiento DAX considerables y a una menor demanda de procesamiento en el origen de datos. Las consultas DAX se ejecutan más rápido con Fusión horizontal, especialmente en modo DirectQuery. Además, la escalabilidad también aumenta.
Planes de ejecución paralelos para DirectQuery
Esta mejora permite al motor de Analysis Services analizar consultas DAX en un origen de datos directQuery e identificar operaciones independientes del motor de almacenamiento. A continuación, el motor puede ejecutar en paralelo esas operaciones en el origen de datos. Al ejecutar operaciones en paralelo, el motor de Analysis Services puede mejorar el rendimiento de las consultas aprovechando la escalabilidad de orígenes de datos de gran tamaño. Para asegurarse de que el procesamiento de consultas no sobrecarga el origen de datos, use el valor de la propiedad MaxParallelism para especificar un número fijo de subprocesos que se pueden usar para las operaciones paralelas.
Compatibilidad con modelos semánticos de DirectQuery de Power BI
Esta versión introduce compatibilidad con modelos de Power BI con conexiones DirectQuery a modelos de Analysis Services de SQL Server 2022. Los modeladores de datos y los autores de informes que usan las versiones de mayo de 2022 y versiones posteriores de Power BI Desktop ahora pueden combinar otros datos importados y DirectQuery de modelos de Power BI, Azure Analysis Services y ahora SSAS 2022.
Para más información, consulte Uso de DirectQuery para modelos semánticos y Analysis Services | Documentación de Power BI.
Rendimiento de consultas MDX
En primer lugar, se introdujo en Power BI y ahora en SSAS 2022, MDX Fusion incluye la optimización del motor de fórmulas (FE), lo que reduce el número de consultas del motor de almacenamiento (SE) por consulta MDX. Las aplicaciones cliente que usan expresiones multidimensionales (MDX) para consultar datos de modelo o conjunto de datos, como Microsoft Excel, verán un rendimiento mejorado de las consultas. Los patrones de consulta MDX comunes ahora requieren menos consultas SE en las que anteriormente se requerían numerosas consultas SE para admitir una granularidad diferente. Menos consultas SE significan menos exámenes costosos en modelos grandes, lo que da lugar a importantes mejoras de rendimiento, especialmente al conectarse a modelos tabulares en modo Direct Query.
Para más información, consulte Anuncio del rendimiento mejorado de consultas MDX en Power BI | Blog de Microsoft Power BI.
Gobernanza de recursos
Esta versión incluye una precisión mejorada para la propiedad de memoria del servidor QueryMemoryLimit y la propiedad de cadena de conexión DbpropMsmdRequestMemoryLimit.
Introducida por primera vez en SSAS 2019, la propiedad de memoria del servidor QueryMemoryLimit se aplica solo a los búferes de memoria donde se crean resultados intermedios de consultas DAX durante el procesamiento de las mismas. Ahora en SSAS 2022, también se aplica a las consultas MDX, cubriendo eficazmente todas las consultas. Puede controlar mejor las consultas costosas de procesos que dan lugar a una materialización significativa. Si la consulta alcanza el límite especificado, el motor cancela la consulta y devuelve un error al autor de la llamada, lo que reduce el impacto en otros usuarios simultáneos.
Las aplicaciones cliente pueden reducir aún más la memoria permitida por consulta especificando la propiedad de cadena de conexión DbpropMsmdRequestMemoryLimit . Especificada en los kilobytes, esta propiedad sobrescribe el valor de la propiedad de memoria del servidor QueryMemoryLimit para una conexión.
Intercalación de consultas: sesgo de consulta corto con cancelación rápida
Esta versión presenta un nuevo valor que especifica el sesgo de consulta corto con cancelación rápida para la configuración de la propiedad Threadpool\SchedulingBehavior. Esta configuración de la propiedad mejora los tiempos de respuesta de las consultas de los usuarios en escenarios de alta concurrencia. Para más información, consulte Intercalación de consultas: configuración.
Nivel de compatibilidad del modelo tabular 1600
Esta versión presenta el nivel de compatibilidad 1600 para los modelos tabulares. El nivel de compatibilidad 1600 coincide con la funcionalidad más reciente de Power BI y Azure Analysis Services.
Características en desuso en SSAS 2022
No hay características en desuso anunciadas con esta versión.
Características discontinuas en SSAS 2022
Las siguientes características se descontinuan en esta versión:
Modo/Categoría | Característica |
---|---|
En forma de tabla | 1100 y 1103 Niveles de compatibilidad |
Multidimensional | Minería de datos |
Modo de Power Pivot | Power Pivot para SharePoint |
Cambios importantes en SSAS 2022
Los niveles de compatibilidad del modelo tabular 1100 y 1103 se descontinuan en esta versión. Para evitar un cambio importante, actualice los modelos al nivel de compatibilidad 1200 antes de actualizar una versión anterior de SSAS a SSAS 2022.
Cambios de comportamiento en SSAS 2022
No hay ningún cambio de comportamiento en esta versión.
SQL Server 2019 Analysis Services
SQL Server 2019 Analysis Services CU 5
Las actualizaciones acumulativas de SQL Server Analysis Services se incluyen con las actualizaciones acumulativas de SQL Server. Para obtener más información sobre y descargar la actualización acumulativa más reciente, consulte Actualización acumulativa más reciente de SQL Server 2019. Las páginas de KB de actualización acumulativa resumen problemas conocidos, mejoras y correcciones para todas las características de SQL Server, incluido SSAS. Aquí se describen detalles adicionales para las actualizaciones de características principales de SSAS.
SuperDAX para modelos multidimensionales (SuperDAXMD)
Con CU5, los clientes basados en DAX ahora pueden usar funciones superDAX y patrones de consulta en modelos multidimensionales, lo que proporciona un rendimiento mejorado al consultar los datos del modelo. SuperDAX introdujo primero optimizaciones de consultas DAX para modelos tabulares con Power BI y SQL Server Analysis Services 2016. SuperDAXMD ahora aporta estas mejoras a los modelos multidimensionales.
Un anuncio independiente en el blog de Power BI resalta cómo los usuarios de Power BI pueden beneficiarse de esta mejora del rendimiento del modelo multidimensional mediante la descarga de la versión más reciente de Power BI Desktop. Los informes interactivos existentes en el servicio Power BI pueden beneficiarse sin pasos adicionales, ya que Power BI genera automáticamente las consultas SuperDAX optimizadas. Power BI detecta automáticamente las conexiones a modelos multidimensionales con compatibilidad con SuperDAX y usa las mismas funciones DAX optimizadas y patrones de consulta que ya usa en los modelos tabulares. Aunque Power BI puede cambiar automáticamente a SuperDAXMD, en sus propias soluciones de inteligencia empresarial, es posible que tenga que optimizar manualmente los patrones de consulta DAX.
Los patrones de consulta optimizados deben usar la función SUMMARIZECOLUMNS para reemplazar la función SUMMARIZE estándar menos eficaz. Use variables DAX, VAR, para calcular expresiones solo una vez en el lugar de definición y, a continuación, volver a usar los resultados en cualquier otra expresión DAX sin tener que volver a realizar el cálculo. Otras funciones SuperDAX, y quizá menos comunes son SUBSTITUTEWITHINDEX, ADDMISSINGITEMS, así como NATURALLEFTOUTERJOIN y NATURALINNERJOIN, ISONORAFTER y GROUPBY. SELECTCOLUMNS y UNION también son funciones SuperDAX.
Para obtener más información sobre cómo funciona DAX con modelos multidimensionales y patrones y restricciones importantes que se deben tener en cuenta, asegúrese de ver DAX para modelos multidimensionales.
Disponibilidad general de SQL Server 2019 Analysis Services (disponible con carácter general)
Nivel de compatibilidad del modelo tabular
Esta versión presenta el nivel de compatibilidad 1500 para los modelos tabulares.
Intercalación de consultas
La intercalación de consultas es una configuración del sistema en modo tabular que puede mejorar los tiempos de respuesta a las consultas de usuario en escenarios de alta simultaneidad. La intercalación de consultas con sesgo de consulta corto permite que las consultas simultáneas compartan recursos de CPU. Para obtener más información, vea Intercalación de consultas.
Grupos de cálculo en modelos tabulares
Los grupos de cálculo pueden reducir significativamente el número de medidas redundantes mediante la agrupación de expresiones de medida comunes como elementos de cálculo. Los grupos de cálculo se muestran en los clientes de informes como una tabla con una sola columna. Cada valor de la columna representa un cálculo reutilizable o un elemento de cálculo que se puede aplicar a cualquiera de las medidas. Un grupo de cálculo puede tener cualquier número de elementos de cálculo. Cada elemento de cálculo se define mediante una expresión DAX. Para más información, consulte Grupos de cálculo.
Configuración de gobernanza para las actualizaciones de la caché de Power BI
La propiedad ClientCacheRefreshPolicy ahora se admite en SSAS 2019 y versiones posteriores. Esta configuración de propiedad ya está disponible para Azure Analysis Services. El servicio Power BI almacena en caché los datos del icono del panel y los datos de informe para la carga inicial del informe de Live Connect, lo que provoca un número excesivo de consultas de caché que se envían al motor y, en casos extremos, sobrecarga el servidor. La propiedad ClientCacheRefreshPolicy permite invalidar este comportamiento en el nivel de servidor. Para obtener más información, vea Propiedades generales.
Adjunto en línea
Esta característica proporciona la capacidad de adjuntar un modelo tabular como una operación en línea. Adjunto en línea se puede usar para la sincronización de réplicas de solo lectura en entornos locales de escalabilidad horizontal de consultas. Para realizar una operación de adjuntar en línea, use la opción AllowOverwrite del comando Adjuntar de XMLA.
Esta operación puede requerir el doble de la memoria del modelo para mantener la versión anterior en línea mientras se carga la nueva versión.
Un patrón de uso típico podría ser el siguiente:
DB1 (versión 1) ya está conectado en el servidor de solo lectura B.
DB1 (versión 2) se procesa en el servidor de escritura A.
DB1 (versión 2) se desasocia y se coloca en una ubicación accesible para el servidor B (ya sea a través de una ubicación compartida o mediante robocopy, etc.).
El comando Attach con AllowOverwrite=True se ejecuta en el servidor B con la nueva ubicación de DB1 (versión 2).
Sin esta característica, los administradores primero deben desasociar la base de datos y, a continuación, adjuntar la nueva versión de la base de datos. Esto produce tiempo de inactividad cuando la base de datos no está disponible para los usuarios y se producirá un error en las consultas en ella.
Cuando se especifica esta nueva marca, la versión 1 de la base de datos se elimina atómicamente dentro de la misma transacción sin tiempo de inactividad. Sin embargo, se trata del costo de tener ambas bases de datos cargadas en memoria simultáneamente.
Relaciones varios a varios en modelos tabulares
Esta mejora permite relaciones de muchos a muchos entre tablas en las que ambas columnas no son únicas. Se puede definir una relación entre una dimensión y una tabla de hechos con una granularidad superior a la columna clave de la dimensión. Esto evita tener que normalizar tablas de dimensiones y puede mejorar la experiencia del usuario porque el modelo resultante tiene un número menor de tablas con columnas agrupadas lógicamente.
Las relaciones de varios a varios requieren que los modelos estén en el nivel de compatibilidad 1500 y superior. Puede crear relaciones de varios a varios mediante Visual Studio 2019 con proyectos de Analysis Services vsIX update 2.9.2 y versiones posteriores, la API del modelo de objetos tabulares (TOM), el lenguaje de scripting de modelos tabulares (TMSL) y la herramienta editor tabular de código abierto.
Configuración de memoria para la gobernanza de recursos
La siguiente configuración de propiedades proporciona una gobernanza de recursos mejorada:
- Memory\QueryMemoryLimit : esta propiedad de memoria se puede usar para limitar las colas de memoria creadas por las consultas DAX enviadas al modelo.
- DbpropMsmdRequestMemoryLimit : esta propiedad XMLA se puede usar para invalidar el valor de la propiedad del servidor Memory\QueryMemoryLimit para una conexión.
- OLAP\Query\RowsetSerializationLimit : esta propiedad de servidor limita el número de filas devueltas en un conjunto de filas, protegiendo los recursos de servidor frente al uso extenso de exportación de datos. Esta propiedad se aplica a las consultas DAX y MDX.
Estas propiedades se pueden establecer mediante la versión más reciente de SQL Server Management Studio (SSMS). Esta configuración ya está disponible para Azure Analysis Services.
Características en desuso en SSAS 2019
No hay ninguna característica en desuso anunciada con esta versión.
Características discontinuas en SSAS 2019
No hay características descontinuadas anunciadas con esta versión.
Cambios importantes en SSAS 2019
No hay cambios importantes en esta versión.
Cambios de comportamiento en SSAS 2019
No hay ningún cambio de comportamiento en esta versión.
SQL Server 2017 Analysis Services
SQL Server 2017 Analysis Services ve algunas de las mejoras más importantes desde SQL Server 2012. Basándose en el éxito del modo tabular (introducido primero en SQL Server 2012 Analysis Services), esta versión hace que los modelos tabulares sean más eficaces que nunca.
El modo multidimensional y el modo Power Pivot para SharePoint son un elemento básico para muchas implementaciones de Analysis Services. En el ciclo de vida del producto de Analysis Services, estos modos están maduros. No hay características nuevas para ninguno de estos modos en esta versión. Sin embargo, se incluyen correcciones de errores y mejoras de rendimiento.
Las características que se describen aquí se incluyen en SQL Server 2017 Analysis Services. Pero para aprovecharlas, también debe usar las versiones más recientes de Visual Studio con proyectos de Analysis Services y SQL Server Management Studio (SSMS). Los proyectos de Analysis Services y SSMS se actualizan mensualmente con características nuevas y mejoradas que normalmente coinciden con las nuevas funcionalidades de SQL Server.
Aunque es importante obtener información sobre todas las nuevas características, también es importante saber qué está en desuso y se descontinuó en esta versión y versiones futuras. Para más información, consulte Características en desuso en SSAS 2017.
Echemos un vistazo a algunas de las nuevas características clave de esta versión.
Nivel de compatibilidad 1400 para modelos tabulares
Para aprovechar muchas de las nuevas características y funcionalidades descritas aquí, los modelos tabulares nuevos o existentes deben establecerse o actualizarse al nivel de compatibilidad 1400. Los modelos en el nivel de compatibilidad 1400 no se pueden implementar en SQL Server 2016 SP1 o versiones anteriores, o degradados a niveles de compatibilidad inferiores. Para más información, consulte Nivel de compatibilidad para los modelos tabulares de Analysis Services.
En Visual Studio, puede seleccionar el nuevo nivel de compatibilidad 1400 al crear nuevos proyectos de modelo tabular.
Para actualizar un modelo tabular existente en Visual Studio, en el Explorador de soluciones, haga clic con el botón derecho en Model.bim y, a continuación, en Propiedades, establezca la propiedad Nivel de compatibilidad en SQL Server 2017 (1400).
Es importante tener en cuenta que, una vez que actualice un modelo existente a 1400, no se puede degradar. Asegúrese de mantener una copia de seguridad de la base de datos del modelo 1200.
Experiencia moderna de obtención de datos
En lo que respecta a la importación de datos de orígenes de datos a los modelos tabulares, SSDT presenta la experiencia moderna Obtener Datos para los modelos en el nivel de compatibilidad 1400. Esta nueva característica se basa en funcionalidades similares en Power BI Desktop y Microsoft Excel 2016. La experiencia moderna de obtener datos ofrece inmensas capacidades de transformación y combinación de datos mediante el uso del constructor de consultas Get Data y las expresiones M.
La experiencia moderna de Get Data proporciona compatibilidad con una amplia gama de orígenes de datos. En el futuro, las actualizaciones incluirán soporte para aún más.
Una interfaz de usuario potente e intuitiva hace que la selección de datos y las capacidades de transformación y combinación de datos sean más fáciles que nunca.
La experiencia moderna de Obtener Datos y las funcionalidades de mashup M no se aplican a los modelos tabulares existentes actualizados del nivel de compatibilidad 1200 al 1400. La nueva experiencia solo se aplica a los nuevos modelos creados en el nivel de compatibilidad 1400.
Sugerencias de codificación
Esta versión presenta sugerencias de codificación, una característica avanzada que se usa para optimizar el procesamiento (actualización de datos) de modelos tabulares grandes en memoria. Para comprender mejor la codificación, consulte el documento técnico Optimización del rendimiento de los modelos tabulares en SQL Server 2012 Analysis Services.
La codificación de valores proporciona un mejor rendimiento de las consultas para las columnas que normalmente solo se usan para las agregaciones.
La codificación hash se prefiere para las columnas de agrupamiento (a menudo valores de tabla de dimensiones) y claves foráneas. Las columnas de cadena siempre están codificadas por hash.
Las columnas numéricas pueden usar cualquiera de estos métodos de codificación. Cuando Analysis Services inicia el procesamiento de una tabla, si la tabla está vacía (con o sin particiones) o se realiza una operación de procesamiento de tabla completa, se toman valores de muestra para cada columna numérica para determinar si se debe aplicar la codificación hash o el valor. De forma predeterminada, la codificación de valores se elige cuando la muestra de valores distintos de la columna es lo suficientemente grande; de lo contrario, la codificación hash normalmente proporciona una mejor compresión. Es posible que Analysis Services cambie el método de codificación después de que la columna se procese parcialmente en función de la información adicional sobre la distribución de datos y reinicie el proceso de codificación; sin embargo, esto aumenta el tiempo de procesamiento y es ineficaz. En las notas del producto sobre el ajuste del rendimiento se describe la recodificación con más detalle y se describe cómo detectarlo mediante SQL Server Profiler.
Las sugerencias de codificación permiten al modelador especificar una preferencia para el método de codificación dados conocimientos previos de la generación de perfiles de datos o en respuesta a volver a codificar eventos de seguimiento. Dado que la agregación sobre columnas codificadas por hash es más lenta que las columnas codificadas por valores, la codificación de valores se puede especificar como sugerencia para estas columnas. No se garantiza que se aplique la preferencia. Es una sugerencia en lugar de una configuración. Para especificar una sugerencia de codificación, establezca la propiedad EncodingHint en la columna. Los valores posibles son "Default", "Value" y "Hash". El siguiente fragmento de código de metadatos basados en JSON del archivo Model.bim especifica la codificación de valores para la columna Importe de ventas.
{
"name": "Sales Amount",
"dataType": "decimal",
"sourceColumn": "SalesAmount",
"formatString": "\\$#,0.00;(\\$#,0.00);\\$#,0.00",
"sourceProviderType": "Currency",
"encodingHint": "Value"
}
Jerarquías desiguales
En los modelos tabulares, puede modelar jerarquías de padre e hijo. A menudo, las jerarquías con un número diferente de niveles se conocen como jerarquías irregulares. De forma predeterminada, las jerarquías desiguales se muestran con espacios en blanco para los niveles por debajo del nivel más bajo. Este es un ejemplo de una jerarquía desigual en un organigrama:
Esta versión introduce la propiedad Ocultar miembros. Puede establecer la propiedad Ocultar miembros de una jerarquía en Ocultar miembros en blanco.
Nota:
Los miembros en blanco del modelo se representan mediante un valor en blanco DAX, no una cadena vacía.
Cuando se establece en Ocultar miembros en blanco y el modelo implementado, se muestra una versión más fácil de leer de la jerarquía en clientes de informes como Excel.
Filas de detalles
Ahora puede definir un conjunto de filas personalizado que contribuye a un valor de medida. Las filas de detalles son similares a la acción de exploración detallada predeterminada en modelos multidimensionales. Esto permite a los usuarios finales ver información con más detalle que el nivel agregado.
En la Tabla Dinámica siguiente se muestran las ventas totales de Internet por año del modelo tabular de ejemplo Adventure Works. Puede hacer clic con el botón derecho en una celda con un valor agregado de la medida y, a continuación, hacer clic en Mostrar detalles para ver las filas de detalles.
De forma predeterminada, se muestran los datos asociados en la tabla Internet Sales. Este comportamiento limitado a menudo no es significativo para el usuario porque es posible que la tabla no tenga las columnas necesarias para mostrar información útil, como el nombre del cliente y la información del pedido. Con las filas de detalle, puede especificar una propiedad Expresión de Filas de Detalle para medidas.
Propiedad de Expresión de filas de detalles para las medidas
La propiedad Expresión de filas de detalle para medidas permite a los autores del modelo personalizar las columnas y filas devueltas al usuario final.
La función DAX SELECTCOLUMNS se usa normalmente en una expresión de filas de detalle. En el siguiente ejemplo se definen las columnas que se van a devolver para las filas de la tabla Internet Sales en el modelo tabular de ejemplo de Adventure Works.
SELECTCOLUMNS(
'Internet Sales',
"Customer First Name", RELATED( Customer[Last Name]),
"Customer Last Name", RELATED( Customer[First Name]),
"Order Date", 'Internet Sales'[Order Date],
"Internet Total Sales", [Internet Total Sales]
)
Con la propiedad definida y el modelo implementado, se devuelve un conjunto de filas personalizado cuando el usuario selecciona Mostrar detalles. Respeta automáticamente el contexto de filtro de la celda seleccionada. En este ejemplo, solo se muestran las filas del valor 2010:
Propiedad de expresión predeterminada de filas de detalles para tablas
Además de las medidas, las tablas también tienen una propiedad para definir una expresión de filas de detalle. La propiedad Expresión de filas de detalles predeterminadas actúa como valor predeterminado para todas las medidas de la tabla. Las medidas que no tienen su propia expresión definida heredan la expresión de la tabla y muestran el conjunto de filas definido para la tabla. Esto permite volver a usar expresiones y las nuevas medidas agregadas a la tabla heredan automáticamente la expresión.
Función DETAILROWS de DAX
En esta versión se incluye una nueva DETAILROWS
función DAX que devuelve el conjunto de filas definido por la expresión de las filas de detalle. Funciona de forma similar a la DRILLTHROUGH
instrucción en MDX, que también es compatible con expresiones de filas de detalle definidas en modelos tabulares.
La siguiente consulta DAX devuelve el conjunto de filas definido por la expresión de detalle de filas para la medida o la tabla correspondiente. Si no se define ninguna expresión, se devuelven los datos de la tabla Internet Sales porque es la tabla que contiene la medida.
EVALUATE DETAILROWS([Internet Total Sales])
Seguridad de nivel de objeto
En esta versión se presenta la seguridad de nivel de objeto para tablas y columnas. Además de restringir el acceso a los datos de tabla y columna, se pueden proteger los nombres de tabla y columna confidenciales. Esto ayuda a evitar que un usuario malintencionado detecte este tipo de tabla.
La seguridad de nivel de objeto debe establecerse mediante los metadatos basados en JSON, el lenguaje de scripting de modelos tabulares (TMSL) o el modelo de objetos tabulares (TOM).
Por ejemplo, el código siguiente ayuda a proteger la tabla Product del modelo tabular de Adventure Works de ejemplo estableciendo la propiedad MetadataPermission de la clase TablePermission en None.
//Find the Users role in Adventure Works and secure the Product table
ModelRole role = db.Model.Roles.Find("Users");
Table productTable = db.Model.Tables.Find("Product");
if (role != null && productTable != null)
{
TablePermission tablePermission;
if (role.TablePermissions.Contains(productTable.Name))
{
tablePermission = role.TablePermissions[productTable.Name];
}
else
{
tablePermission = new TablePermission();
role.TablePermissions.Add(tablePermission);
tablePermission.Table = productTable;
}
tablePermission.MetadataPermission = MetadataPermission.None;
}
db.Update(UpdateOptions.ExpandFull);
Vistas de administración dinámica (DMVs)
Las DMV son consultas en SQL Server Profiler que devuelven información sobre las operaciones del servidor local y el estado del servidor. Esta versión incluye mejoras en las vistas de administración dinámica (DMV) para los modelos tabulares en los niveles de compatibilidad 1200 y 1400.
DISCOVER_CALC_DEPENDENCY Ahora funciona con modelos tabulares 1200 y superiores. Los modelos tabulares 1400 y superiores muestran dependencias entre particiones M, expresiones M y orígenes de datos estructurados. Para más información, consulte el blog de Analysis Services.
MDSCHEMA_MEASUREGROUP_DIMENSIONS Mejoras se incluyen para esta DMV, que usa varias herramientas de cliente para mostrar la dimensionalidad de medida. Por ejemplo, la característica Explorar en tablas dinámicas de Excel permite al usuario explorar entre dimensiones relacionadas con las medidas seleccionadas. Esta versión corrige las columnas de cardinalidad, que anteriormente mostraban valores incorrectos.
Mejoras de DAX
Una de las partes más importantes de la nueva funcionalidad DAX es la nueva función IN Operator / CONTAINSROW para expresiones DAX. Esto es similar al TSQL IN
operador que se usa habitualmente para especificar varios valores en una WHERE
cláusula .
Anteriormente, era habitual especificar filtros de varios valores mediante el operador lógico OR
, como en la siguiente expresión de medida:
Filtered Sales:=CALCULATE (
[Internet Total Sales],
'Product'[Color] = "Red"
|| 'Product'[Color] = "Blue"
|| 'Product'[Color] = "Black"
)
Esto se simplifica mediante el IN
operador :
Filtered Sales:=CALCULATE (
[Internet Total Sales], 'Product'[Color] IN { "Red", "Blue", "Black" }
)
En este caso, el IN
operador hace referencia a una tabla de una sola columna con 3 filas; una para cada uno de los colores especificados. Tenga en cuenta que la sintaxis del constructor de tabla usa llaves.
El IN
operador es funcionalmente equivalente a la CONTAINSROW
función :
Filtered Sales:=CALCULATE (
[Internet Total Sales], CONTAINSROW({ "Red", "Blue", "Black" }, 'Product'[Color])
)
El IN
operador también se puede usar eficazmente con constructores de tabla. Por ejemplo, la medida siguiente filtra por combinaciones de color y categoría del producto:
Filtered Sales:=CALCULATE (
[Internet Total Sales],
FILTER( ALL('Product'),
( 'Product'[Color] = "Red" && Product[Product Category Name] = "Accessories" )
|| ( 'Product'[Color] = "Blue" && Product[Product Category Name] = "Bikes" )
|| ( 'Product'[Color] = "Black" && Product[Product Category Name] = "Clothing" )
)
)
Con el nuevo IN
operador, la expresión de medida anterior es ahora equivalente a la siguiente:
Filtered Sales:=CALCULATE (
[Internet Total Sales],
FILTER( ALL('Product'),
('Product'[Color], Product[Product Category Name]) IN
{ ( "Red", "Accessories" ), ( "Blue", "Bikes" ), ( "Black", "Clothing" ) }
)
)
Mejoras adicionales
Además de todas las nuevas características, Analysis Services, SSDT y SSMS también incluyen las siguientes mejoras:
- La jerarquía y la reutilización de columnas se muestran en ubicaciones más útiles en la lista de campos de Power BI.
- Relaciones de fecha para crear fácilmente relaciones con dimensiones de fecha basadas en campos de fecha.
- La opción de instalación predeterminada para Analysis Services ahora es para el modo tabular.
- Nuevos orígenes de datos en Obtener datos (Power Query).
- Editor DAX para SSDT.
- Los orígenes de datos de DirectQuery existentes admiten consultas M.
- Mejoras de SSMS, como la visualización, la edición y la compatibilidad de scripting con orígenes de datos estructurados.
Características en desuso en SSAS 2017
Las siguientes características están en desuso en esta versión:
Modo/Categoría | Característica |
---|---|
Multidimensional | Minería de datos |
Multidimensional | Grupos de medidas enlazadas de manera remota |
En forma de tabla | Modelos en el nivel de compatibilidad 1100 y 1103 |
En forma de tabla | Propiedades del modelo de objetos tabulares: Column.TableDetailPosition, Column.IsDefaultLabel, Column.IsDefaultImage |
herramientas | SQL Server Profiler para captura de seguimiento El reemplazo consiste en usar el generador de perfiles de eventos extendidos insertado en SQL Server Management Studio. Consulte Supervisión de Analysis Services con eventos extendidos de SQL Server. |
herramientas | Perfilador de Servidor para Reproducción de Trazas Reemplazo. No hay reemplazo. |
Objetos de administración de seguimiento y API de seguimiento | Objetos Microsoft.AnalysisServices.Trace (contiene la API para los objetos Trace y Replay de Analysis Services). El reemplazo es de varias partes: - Configuración de seguimiento: Microsoft.SqlServer.Management.XEvent - Lectura de seguimiento: Microsoft.SqlServer.XEvent.Linq - Reproducción de traza: Ninguna |
Características discontinuas en SSAS 2017
Las siguientes características se descontinuan en esta versión:
Modo/Categoría | Característica |
---|---|
En forma de tabla | Especifique el valor de la propiedad de memoria VertiPaqPagingPolicy (2), habilite la paginación en el disco utilizando archivos mapeados a memoria. |
Multidimensional | Particiones remotas |
Multidimensional | Grupos de medidas enlazadas de manera remota |
Multidimensional | Reescritura dimensional |
Multidimensional | Dimensiones vinculadas |
Cambios importantes en SSAS 2017
No hay cambios importantes en esta versión.
Cambios de comportamiento en SSAS 2017
Cambios en MDSCHEMA_MEASUREGROUP_DIMENSIONS y DISCOVER_CALC_DEPENDENCY, detallados en el anuncio de las Novedades de SQL Server 2017 CTP 2.1 para Analysis Services.
SQL Server 2016 Analysis Services
SQL Server 2016 Analysis Services incluye muchas nuevas mejoras que proporcionan un rendimiento mejorado, creación de soluciones más sencilla, administración automatizada de bases de datos, relaciones mejoradas con filtrado cruzado bidireccional, procesamiento de particiones en paralelo y mucho más. En el centro de la mayoría de las mejoras de esta versión se encuentra el nuevo nivel de compatibilidad 1200 para las bases de datos de modelos tabulares.
SQL Server 2016 Service Pack 1 (SP1) Analysis Services
SQL Server 2016 Service SP1 Analysis Services proporciona un mejor rendimiento y escalabilidad a través del reconocimiento de acceso a memoria no uniforme (NUMA) y la asignación de memoria optimizada en función de los bloques de creación de subprocesos de Intel (Intel TBB). Esta nueva funcionalidad ayuda a reducir el costo total de propiedad (TCO) al admitir más usuarios en menos servidores empresariales más eficaces.
En concreto, las características de SQL Server 2016 SP1 Analysis Services mejoran en estas áreas clave:
- Soporte para NUMA - Para mejorar la compatibilidad con NUMA, el motor en memoria (VertiPaq) dentro de Analysis Services ahora mantiene una cola de trabajo separada en cada nodo NUMA. Esto garantiza que los trabajos de examen de segmento se ejecutan en el mismo nodo donde se asigna la memoria para los datos del segmento. Tenga en cuenta que el reconocimiento de NUMA solo está habilitado de forma predeterminada en sistemas con al menos cuatro nodos NUMA. En los sistemas de dos nodos, los costos de acceder a la memoria asignada remota generalmente no garantizan la sobrecarga de administrar los detalles de NUMA.
- Asignación de memoria – Analysis Services se ha acelerado con Intel Threading Building Blocks, un asignador escalable que proporciona grupos de memoria independientes para cada núcleo. A medida que aumenta el número de núcleos, el sistema puede escalar casi linealmente.
- Fragmentación del montón - El asignador escalable basado en TBB de Intel también ayuda a mitigar los problemas de rendimiento ocasionados por la fragmentación del montón, que se ha demostrado que ocurre con el montón de Windows.
Las pruebas de rendimiento y escalabilidad mostraron importantes mejoras en el rendimiento de las consultas al ejecutar SQL Server 2016 SP1 Analysis Services en servidores empresariales de varios nodos grandes.
Aunque la mayoría de las mejoras de esta versión son específicas de los modelos tabulares, se han hecho varias mejoras en los modelos multidimensionales; por ejemplo, la optimización de ROLAP de recuento distinto para orígenes de datos como DB2 y Oracle, soporte de selección múltiple para el drill-through con Excel 2016 y optimizaciones de consultas de Excel.
SQL Server 2016 General Availability (GA) Analysis Services
Modelización
Mejora del rendimiento del modelado para 1200 modelos tabulares
Para los modelos tabulares 1200, las operaciones de metadatos en SSDT son mucho más rápidas que los modelos tabulares 1100 o 1103. En comparación, en el mismo hardware, la creación de una relación en un modelo establecido en el nivel de compatibilidad de SQL Server 2014 (1103) con 23 tablas tarda 3 segundos, mientras que la misma relación en un modelo creado establecido en el nivel de compatibilidad 1200 tarda justo debajo de un segundo.
Plantillas de proyecto agregadas para modelos tabulares 1200 en SSDT
Con esta versión, ya no necesita dos versiones de SSDT para compilar proyectos relacionales y de BI. SQL Server Data Tools para Visual Studio 2015 agrega plantillas de proyecto para soluciones de Analysis Services, incluidos los proyectos tabulares de Analysis Services que se usan para compilar modelos en el nivel de compatibilidad 1200. También se incluyen otras plantillas de proyecto de Analysis Services para soluciones de minería de datos y multidimensionales, pero en el mismo nivel funcional (1100 o 1103) que en versiones anteriores.
Mostrar carpetas
Ahora las carpetas de visualización están disponibles para los modelos tabulares 1200. Definidas en SQL Server Data Tools y representadas en aplicaciones cliente como Excel o Power BI Desktop, las carpetas para mostrar ayudan a organizar un gran número de medidas en carpetas individuales, agregando una jerarquía visual para facilitar la navegación en listas de campos.
Filtrado cruzado bidireccional
Novedad de esta versión es un enfoque integrado para habilitar filtros cruzados bidireccionales en modelos tabulares, lo que elimina la necesidad de soluciones DAX diseñadas a mano para propagar el contexto de filtro entre las relaciones de tabla. Los filtros solo se generan automáticamente cuando se puede establecer la dirección con un alto grado de certeza. Si hay ambigüedad en forma de varias rutas de acceso de consulta entre relaciones de tabla, no se creará automáticamente un filtro. Consulte Filtros cruzados bidireccionales para modelos tabulares en SQL Server 2016 Analysis Services para obtener más información.
Traducciones
Ahora puede almacenar metadatos traducidos en un modelo tabular 1200. Los metadatos del modelo incluyen campos para Referencia cultural, subtítulos traducidos y descripciones traducidas. Para agregar traducciones, use el comando Model>Translations en SQL Server Data Tools. Consulte Traducciones en modelos tabulares (Analysis Services) para obtener más información.
Tablas pegadas
Ahora puede actualizar un modelo tabular 1100 o 1103 a 1200 cuando el modelo contiene tablas pegadas. Se recomienda usar SQL Server Data Tools. En SSDT, establezca CompatibilityLevel en 1200 y, a continuación, implemente en una instancia de SQL Server 2017 de SQL Server Analysis Services. Consulte Nivel de compatibilidad para modelos tabulares en Analysis Services para obtener más información.
Tablas calculadas en SSDT
Una tabla calculada es una construcción exclusivamente de modelo que se basa en una expresión de DAX o en una consulta dentro de SSDT. Cuando se implementa en una base de datos, una tabla calculada no se puede distinguir de las tablas normales.
Hay varios usos para las tablas calculadas, incluida la creación de nuevas tablas para exponer una tabla existente en un rol específico. El ejemplo clásico es una tabla Date que funciona en varios contextos (fecha de pedido, fecha de envío, etc.). Al crear una tabla calculada para un rol determinado, ahora puede activar una relación de tabla para facilitar las consultas o la interacción de datos mediante la tabla calculada. Otro uso para las tablas calculadas es combinar partes de tablas existentes en una tabla completamente nueva que solo existe en el modelo. Consulte Creación de una tabla calculada para obtener más información.
Ajuste de fórmulas
Con la corrección de fórmulas en un modelo tabular 1200, SSDT actualizará automáticamente las medidas que hacen referencia a una columna o tabla que se ha renombrado.
Compatibilidad con el administrador de configuración de Visual Studio
Para admitir varios entornos, como entornos de prueba y preproducción, Visual Studio permite a los desarrolladores crear varias configuraciones de proyecto mediante el administrador de configuración. Los modelos multidimensionales ya aprovechan esto, pero no los modelos tabulares. Con esta versión, ahora puede usar Configuration Manager para implementar en distintos servidores.
Administración de instancias
Administración de modelos tabulares 1200 en SSMS
En esta versión, una instancia de Analysis Services en modo de servidor tabular puede ejecutar modelos tabulares en cualquier nivel de compatibilidad (1100, 1103, 1200). La versión más reciente de SQL Server Management Studio se actualiza para mostrar las propiedades y proporcionar administración del modelo de base de datos para los modelos tabulares en el nivel de compatibilidad 1200.
Procesamiento paralelo para varias particiones de tabla en modelos tabulares
Esta versión incluye una nueva funcionalidad de procesamiento paralelo para tablas con dos o más particiones, lo que aumenta el rendimiento del procesamiento. No hay ninguna configuración para esta característica. Para obtener más información sobre la configuración de particiones y tablas de procesamiento, consulte Particiones de modelo tabulares.
Agregar cuentas de equipo como administradores en SSMS
Los administradores de SQL Server Analysis Services ahora pueden usar SQL Server Management Studio para configurar cuentas de equipo para que sean miembros del grupo de administradores de SQL Server Analysis Services. En el cuadro de diálogo Seleccionar usuarios o grupos , establezca las ubicaciones para el dominio de equipos y agregue el tipo de objeto Computers . Para obtener más información, consulte Concesión de derechos de administrador del servidor a una instancia de Analysis Services.
DBCC for Analysis Services
El Comprobador de coherencia de la base de datos (DBCC) se ejecuta internamente para detectar posibles problemas de daños en la carga de la base de datos, pero también se puede ejecutar a petición si sospecha problemas en los datos o el modelo. DBCC ejecuta comprobaciones diferentes en función de si el modelo es tabular o multidimensional. Consulte Comprobador de coherencia de base de datos (DBCC) para bases de datos tabulares y multidimensionales de Analysis Services para obtener más información.
Actualizaciones de eventos extendidos
Esta versión agrega una interfaz gráfica de usuario a SQL Server Management Studio para configurar y administrar eventos extendidos de SQL Server Analysis Services. Puede configurar flujos de datos activos para supervisar la actividad del servidor en tiempo real, mantener los datos de sesión cargados en memoria para un análisis más rápido o guardar flujos de datos en un archivo para el análisis sin conexión. Para más información, vea Supervisar Analysis Services con SQL Server Extended Events.
Escritura de scripts
PowerShell para modelos tabulares
Esta versión incluye mejoras de PowerShell para los modelos tabulares en el nivel de compatibilidad 1200. Puede usar todos los cmdlets aplicables, además de los cmdlets específicos del modo tabular: Invoke-ProcessASDatabase y Invoke-ProcessTable cmdlet.
Operaciones de base de datos de scripting de SSMS
En la versión más reciente de SQL Server Management Studio (SSMS), el script ahora está habilitado para los comandos de base de datos, incluidos Create, Alter, Delete, Backup, Restore, Attach, Detach. La salida es el lenguaje de script de modelo tabular (TMSL) en JSON. Consulte Tabular Model Scripting Language (TMSL) Reference (Referencia del lenguaje de scripting de modelos tabulares [TMSL]) para obtener más información.
Tarea Ejecutar DDL de Analysis Services
La tarea de ejecutar DDL de Analysis Services ahora también acepta comandos de TMSL (Lenguaje de Script de Modelos Tabulares).
Cmdlet de PowerShell de SSAS
El cmdlet invoke-ASCmd de SSAS powerShell ahora acepta comandos del lenguaje de scripting de modelos tabulares (TMSL). Otros cmdlets de PowerShell de SSAS podrían actualizarse en una versión futura para usar este nuevo metadato tabular (las excepciones se indicarán en las notas de la versión). Consulte Referencia de PowerShell de Analysis Services para obtener más información.
Lenguaje de scripting de modelos tabulares (TMSL) compatible con SSMS
Con la versión más reciente de SSMS, ahora puede crear scripts para automatizar la mayoría de las tareas administrativas de los modelos tabulares 1200. Actualmente, se pueden automatizar mediante scripts las siguientes tareas: Procesar en cualquier nivel, además de CREAR, ALTERAR, ELIMINAR en el nivel de base de datos.
Funcionalmente, TMSL es equivalente a la extensión ASSL XMLA que proporciona definiciones de objetos multidimensionales, excepto que TMSL usa descriptores nativos como model, table y relationship para describir metadatos tabulares. Consulte Tabular Model Scripting Language (TMSL) Reference (Referencia del lenguaje de scripting de modelos tabulares [TMSL]) para obtener más información sobre el esquema.
Un script generado basado en JSON para un modelo tabular podría tener un aspecto similar al siguiente:
{
"create": {
"database": {
"name": "AdventureWorksTabular1200",
"id": "AdventureWorksTabular1200",
"compatibilityLevel": 1200,
"readWriteMode": "readWrite",
"model": {}
}
}
}
La carga es un documento JSON que puede ser tan mínimo como el ejemplo que se muestra anteriormente o muy embellecido con el conjunto completo de definiciones de objetos. La referencia del lenguaje de scripting de modelos tabulares (TMSL) describe la sintaxis.
En el nivel de base de datos, los comandos CREATE, ALTER y DELETE generarán el script TMSL en la ventana XMLA conocida. Otros comandos, como Process, también se pueden scriptar en esta versión. La compatibilidad con scripts para muchas otras acciones se puede agregar en una versión futura.
Comandos scriptables | Descripción |
---|---|
crear | Agrega una base de datos, una conexión o una partición. El equivalente de ASSL es CREATE. |
crearOSustituir | Actualiza una definición de objeto existente (base de datos, conexión o partición) sobrescribiendo una versión anterior. El equivalente de ASSL es ALTER con AllowOverwrite establecido en true y ObjectDefinition en ExpandFull. |
borrar | Quita una definición de objeto. El equivalente de ASSL es DELETE. |
actualizar | Procesa el objeto . El equivalente de ASSL es PROCESS. |
DAX
Edición mejorada de fórmulas DAX
Las actualizaciones de la barra de fórmulas le ayudan a escribir fórmulas con más facilidad diferenciando funciones, campos y medidas mediante el resaltado de sintaxis, y proporciona sugerencias inteligentes de función y campo, indicándole si hay errores en partes de su expresión DAX mediante subrayados ondulados. También permite usar varias líneas (Alt + Entrar) y sangría (Tabulador). La barra de fórmulas ahora también le permite escribir comentarios como parte de sus medidas, simplemente escriba "//" y todo después de estos caracteres en la misma línea se considerará un comentario.
Variables DAX
Esta versión ahora incluye compatibilidad con variables en DAX. Las variables ahora pueden almacenar el resultado de una expresión como una variable con nombre, que luego se puede pasar como argumento a otras expresiones de medida. Una vez calculados los valores resultantes para una expresión variable, esos valores no cambian, incluso si se hace referencia a la variable en otra expresión. Para obtener más información, vea Función VAR.
Nuevas funciones de DAX
Con esta versión, DAX presenta más de cincuenta funciones nuevas para admitir cálculos más rápidos y visualizaciones mejoradas en Power BI. Para más información, consulte Nuevas funciones DAX.
Guardar las medidas incompletas
Ahora puede guardar medidas DAX incompletas directamente en un proyecto de modelo tabular 1200 y recogerlo de nuevo cuando esté listo para continuar.
Mejoras adicionales de DAX
- Cálculo no vacío: reduce el número de exploraciones necesarias para el no vacío.
- Measure Fusion: se combinarán varias medidas de la misma tabla en un único motor de almacenamiento: consulta.
- Conjuntos de agrupación: cuando una consulta solicita medidas en varias granularidades (Total/Año/Mes), se envía una sola consulta en el nivel más bajo y el resto de las granularidades se derivan del nivel más bajo.
- Eliminación de combinaciones redundantes: una sola consulta al motor de almacenamiento devuelve las columnas de dimensión y los valores de medida.
- Evaluación estricta de IF/SWITCH: una rama cuya condición es falsa dejará de dar lugar a consultas del motor de almacenamiento. Anteriormente, las ramas se evaluaron diligentemente, pero los resultados se descartaron más adelante.
Desarrollador
Espacio de nombres Microsoft.AnalysisServices.Tabular para la programabilidad tabular, versión 1200 en AMO
Analysis Services Management Objects (AMO) se actualiza para incluir un nuevo espacio de nombres tabular para administrar una instancia de modo tabular de SQL Server 2016 Analysis Services, así como proporcionar el lenguaje de definición de datos para crear o modificar modelos tabulares 1200 mediante programación. Visite Microsoft.AnalysisServices.Tabular para obtener más información sobre la API.
Actualizaciones de Objetos de administración de Analysis Services (AMO)
Analysis Services Management Objects (AMO) se ha vuelto a factorizar para incluir un segundo ensamblado, Microsoft.AnalysisServices.Core.dll. El nuevo ensamblado separa clases comunes como Servidor, Base de datos y Rol que tienen una aplicación amplia en Analysis Services, independientemente del modo de servidor. Anteriormente, estas clases formaban parte del ensamblado microsoft.AnalysisServices original. Moverlos a un nuevo ensamblado allana el camino para futuras extensiones a AMO, con una división clara entre las API genéricas y específicas del contexto. Las aplicaciones existentes no se ven afectadas por los nuevos ensamblados. Sin embargo, si decide recompilar aplicaciones con el nuevo ensamblado de AMO por cualquier motivo, asegúrese de agregar una referencia a Microsoft.AnalysisServices.Core. Del mismo modo, los scripts de PowerShell que cargan y llaman a AMO ahora deben cargar Microsoft.AnalysisServices.Core.dll. Asegúrese de actualizar los scripts.
Editor JSON para archivos BIM
La Vista de código de Visual Studio 2015 ahora muestra el archivo BIM en formato JSON para los modelos tabulares 1200. La versión de Visual Studio determina si el archivo BIM se representa en JSON a través del Editor JSON integrado o como texto simple.
Para usar el editor JSON, con la capacidad de expandir y contraer secciones del modelo, necesitará la versión más reciente de SQL Server Data Tools más Visual Studio 2015 (cualquier edición, incluida la edición Community gratuita). Para todas las demás versiones de SSDT o Visual Studio, el archivo BIM se representa en JSON como texto simple. Como mínimo, un modelo vacío contendrá el siguiente json:
{
"name": "SemanticModel",
"id": "SemanticModel",
"compatibilityLevel": 1200,
"readWriteMode": "readWrite",
"model": {}
}
Advertencia
Evite editar el archivo JSON directamente. Si lo hace, puede dañar el modelo.
Nuevos elementos del esquema de MS-CSDLBI 2.0
Se han agregado los siguientes elementos al tipo complejo TProperty definido en el esquema [MS-CSDLBI] 2.0:
Elemento | Definición |
---|---|
DefaultValue | Propiedad que especifica el valor utilizado al evaluar la consulta. La propiedad DefaultValue es opcional, pero se selecciona automáticamente si no se pueden agregar los valores del miembro. |
Estadísticas | Conjunto de estadísticas de los datos subyacentes asociados a la columna. Estas estadísticas se definen mediante el tipo complejo TPropertyStatistics y solo se proporcionan si no son costosas de generar, como se describe en la sección 2.1.13.5 del documento sobre el formato de archivo de definición del esquema conceptual con anotaciones de inteligencia empresarial. |
Consulta Directa
Nueva implementación de DirectQuery
Esta versión ve mejoras significativas en DirectQuery para los modelos tabulares 1200. A continuación se muestra un resumen:
- DirectQuery ahora genera consultas más sencillas que proporcionan un mejor rendimiento.
- Control adicional sobre la definición de conjuntos de datos de ejemplo usados para el diseño y las pruebas del modelo.
- Ahora se admite la seguridad a nivel de fila (RLS) para los modelos tabulares 1200 en el modo DirectQuery. Anteriormente, la presencia de RLS impedía implementar un modelo tabular en modo DirectQuery.
- Las columnas calculadas se admiten ahora en los modelos tabulares 1200 en modo DirectQuery. Anteriormente, la presencia de columnas calculadas impedía implementar un modelo tabular en modo DirectQuery.
- Las optimizaciones de rendimiento incluyen la eliminación de combinaciones redundantes para VertiPaq y DirectQuery.
Nuevos orígenes de datos para el modo DirectQuery
Los orígenes de datos admitidos para los modelos tabulares 1200 en el modo DirectQuery ahora incluyen Oracle, Teradata y la plataforma Microsoft Analytics (anteriormente conocida como Parallel Data Warehouse). Para más información, consulte Modo DirectQuery.
Características en desuso en SSAS 2016
Las siguientes características están en desuso en esta versión:
Modo/Categoría | Característica |
---|---|
Multidimensional | Particiones remotas |
Multidimensional | Grupos de medidas enlazadas de manera remota |
Multidimensional | Reescritura dimensional |
Multidimensional | Dimensiones vinculadas |
Multidimensional | Notificaciones de tabla de SQL Server para el almacenamiento en caché proactivo. El reemplazo consiste en usar el sondeo para el almacenamiento en caché proactivo. Consulte Almacenamiento en caché proactivo (dimensiones) y almacenamiento en caché proactivo (particiones). |
Multidimensional | Cubos de sesión. No hay reemplazo. |
Multidimensional | Cubos locales. No hay reemplazo. |
En forma de tabla | Los niveles de compatibilidad del modelo tabular 1100 y 1103 no se admitirán en una versión futura. El reemplazo consiste en establecer modelos en el nivel de compatibilidad 1200 o superior, convirtiendo las definiciones de modelo en metadatos tabulares. Consulte Nivel de compatibilidad para modelos tabulares en Analysis Services. |
herramientas | SQL Server Profiler para captura de seguimiento El reemplazo consiste en usar el generador de perfiles de eventos extendidos insertado en SQL Server Management Studio. Consulte Supervisión de Analysis Services con eventos extendidos de SQL Server. |
herramientas | Perfilador de Servidor para Reproducción de Trazas Reemplazo. No hay reemplazo. |
Objetos de administración de seguimiento y API de seguimiento | Objetos Microsoft.AnalysisServices.Trace (contiene la API para los objetos Trace y Replay de Analysis Services). El reemplazo es de varias partes: - Configuración de seguimiento: Microsoft.SqlServer.Management.XEvent - Lectura de seguimiento: Microsoft.SqlServer.XEvent.Linq - Reproducción de traza: Ninguna |
Características discontinuas en SSAS 2016
Las siguientes características se descontinuan en esta versión:
Característica | Sustitución o solución alternativa |
---|---|
CalculationPassValue (MDX) | Ninguno. Esta característica está en desuso en SQL Server 2005. |
CalculationCurrentPass (MDX) | Ninguno. Esta característica está en desuso en SQL Server 2005. |
sugerencia del optimizador de consultas NON_EMPTY_BEHAVIOR | Ninguno. Esta característica está en desuso en SQL Server 2008. |
Ensamblados COM | Ninguno. Esta característica está en desuso en SQL Server 2008. |
CELL_EVALUATION_LIST propiedad de celda intrínseca | Ninguno. Esta característica está en desuso en SQL Server 2005. |
Cambios importantes en SSAS 2016
Actualización de la versión de .NET 4.0
Ahora, las bibliotecas cliente de Objetos de administración de Analysis Services (AMO), ADOMD.NET y modelo de objetos tabulares (TOM) tienen como destino el entorno de ejecución de .NET 4.0. Esto puede ser un cambio importante para las aplicaciones destinadas a .NET 3.5. Las aplicaciones que usan versiones más recientes de estos ensamblados ahora deben tener como destino .NET 4.0 o posterior.
Actualización de la versión de AMO
Esta versión es una actualización para Analysis Services Management Objects (AMO) y es un cambio importante en determinadas circunstancias. El código y los scripts existentes que llaman a AMO seguirán ejecutándose como antes si actualiza desde una versión anterior. Sin embargo, si necesita volver a compilar la aplicación y tiene como destino una instancia de SQL Server 2016 Analysis Services, debe agregar el siguiente espacio de nombres para que el código o el script funcionen:
using Microsoft.AnalysisServices;
using Microsoft.AnalysisServices.Core;
El espacio de nombres Microsoft.AnalysisServices.Core ahora es necesario siempre que haga referencia al ensamblado Microsoft.AnalysisServices en el código. Los objetos que anteriormente solo se encontraban en el espacio de nombres Microsoft.AnalysisServices se mueven al espacio de nombres Core de esta versión si el objeto se usa de la misma manera en escenarios tabulares y multidimensionales. Por ejemplo, las API relacionadas con el servidor se reubican en el espacio de nombres Core.
Aunque ahora existen múltiples espacios de nombres, ambos se encuentran en el mismo ensamblado (Microsoft.AnalysisServices.dll).
Cambios en XEvent DISCOVER
Para mejorar la compatibilidad con la transmisión de XEvent DISCOVER en SSMS para SQL Server 2016 Analysis Services, DISCOVER_XEVENT_TRACE_DEFINITION
se sustituye por las siguientes trazas de XEvent:
DISCOVER_XEVENT_PAQUETES
DESCUBRIR_OBJETO_EVENTO_X
DISCOVER_XEVENT_OBJECT_COLUMNS
DISCOVER_XEVENT_SESSION_TARGETS
Cambios de comportamiento en SSAS 2016
Analysis Services en modo de SharePoint
La ejecución del Asistente para configuración de Power Pivot ya no es necesaria como tarea posterior a la instalación. Esto es cierto para todas las versiones compatibles de SharePoint que cargan modelos de SQL Server 2016 Analysis Services actuales.
Modo DirectQuery para modelos tabulares
DirectQuery es un modo de acceso a datos para los modelos tabulares, donde la ejecución de consultas se realiza en una base de datos relacional de back-end, recuperando un conjunto de resultados en tiempo real. A menudo se usa para conjuntos de datos muy grandes que no pueden caber en la memoria o cuando los datos son volátiles y desea que los datos más recientes se devuelvan en las consultas en un modelo tabular.
DirectQuery ha existido como modo de acceso a datos para las últimas versiones. En SQL Server 2016 Analysis Services, la implementación se ha revisado ligeramente, suponiendo que el modelo tabular está en el nivel de compatibilidad 1200 o superior. DirectQuery tiene menos restricciones que antes. También tiene diferentes propiedades de base de datos.
Si usa DirectQuery en un modelo tabular existente, puede mantener el modelo en su nivel de compatibilidad actual de 1100 o 1103 y seguir usando DirectQuery como su implementado para esos niveles. Como alternativa, puede actualizar a 1200 o superior para beneficiarse de las mejoras realizadas en DirectQuery.
No hay ninguna actualización local de un modelo de DirectQuery porque la configuración de los niveles de compatibilidad anteriores no tiene equivalentes exactos en los niveles de compatibilidad más recientes de 1200 y superiores. Si tiene un modelo tabular existente que se ejecuta en modo DirectQuery, debe abrir el modelo en SQL Server Data Tools, desactivar DirectQuery, establecer la propiedad Nivel de compatibilidad en 1200 o superior y volver a configurar las propiedades de DirectQuery. Consulte Modo DirectQuery para obtener más información.
Definiciones
Una característica en desuso será eliminada del producto en una versión futura, pero todavía se admite e incluye en la versión actual para mantener la compatibilidad retroactiva. Se recomienda dejar de usar características en desuso en proyectos nuevos y existentes para mantener la compatibilidad con versiones futuras. La documentación no se actualiza para las características en desuso.
Una característica descontinuada fue declarada obsoleta en una versión anterior. Puede seguir estando incluido en la versión actual, pero ya no se admite. Las características discontinuas se pueden quitar completamente en la versión indicada o futura.
Un cambio importante hace que una característica, un modelo de datos, el código de aplicación o el script ya no funcionen después de actualizar a la versión actual.
Un cambio de comportamiento afecta al funcionamiento de la misma característica en la versión actual en comparación con la versión anterior. Solo se describen cambios de comportamiento significativos. No se incluyen los cambios en la interfaz de usuario. Los cambios en los valores predeterminados, la configuración manual necesaria para completar una funcionalidad de actualización o restauración, o una nueva implementación de una característica existente son ejemplos de un cambio de comportamiento.