Nivel de compatibilidad de una base de datos multidimensional (Analysis Services)

se aplica a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

En SQL Server Analysis Services, la propiedad de nivel de compatibilidad de la base de datos determina el nivel funcional de una base de datos. Los niveles de compatibilidad son únicos para cada tipo de modelo. Por ejemplo, un nivel de compatibilidad de 1100 tiene un significado diferente en función de si la base de datos es multidimensional o tabular.

En este tema se describe solo el nivel de compatibilidad de las bases de datos multidimensionales. Para obtener más información sobre las soluciones tabulares, vea Nivel de compatibilidad para modelos tabulares en Analysis Services.

Nota:

Los modelos tabulares tienen niveles de compatibilidad de base de datos adicionales que no son aplicables a los modelos multidimensionales. El nivel de compatibilidad 1103 no existe para los modelos multidimensionales.

Niveles de compatibilidad para bases de datos multidimensionales

Actualmente, el único comportamiento de la base de datos multidimensional que varía según el nivel funcional es la arquitectura de almacenamiento de cadenas. Al aumentar el nivel de compatibilidad de la base de datos, puede invalidar el límite máximo de 4 gigabytes para el almacenamiento de cadenas de medidas y dimensiones.

Para una base de datos multidimensional, los valores válidos para la propiedad CompatibilityLevel incluyen los siguientes valores:

Configuración Description
1050 Este valor no es visible en el script o las herramientas, pero corresponde a las bases de datos creadas en SQL Server 2005 (9.x), SQL Server 2008 o SQL Server 2008 R2. Cualquier base de datos que no tenga CompatibilityLevel establecida explícitamente se ejecuta implícitamente en el nivel 1050 .
1100 Este valor es el valor predeterminado para las nuevas bases de datos que se crean en SQL Server 2012 (11.x) o SQL Server 2017. También puede especificarla para las bases de datos creadas en versiones anteriores de SQL Server Analysis Services para habilitar el uso de características que solo se admiten en este nivel de compatibilidad (es decir, un mayor almacenamiento de cadenas para atributos de dimensión o medidas de recuento distintas que contienen datos de cadena).

Las bases de datos que tienen un valor CompatibilityLevel establecido en 1100 obtienen una propiedad adicional, StringStoresCompatibilityLevel, que permite elegir almacenamiento de cadenas alternativo para particiones y dimensiones.

Importante

Establecer la compatibilidad de la base de datos en un nivel superior es irreversible. Después de aumentar el nivel de compatibilidad a 1100, debe seguir ejecutando la base de datos en servidores más recientes. No se puede revertir a 1050. No se puede adjuntar ni restaurar una base de datos 1100 en una versión de servidor anterior a SQL Server 2012 (11.x) o SQL Server 2017.

Prerrequisitos

Los niveles de compatibilidad de bases de datos se presentan en SQL Server 2012 (11.x). Debe tener SQL Server 2012 (11.x)SQL Server Analysis Services o superior para ver o establecer el nivel de compatibilidad de la base de datos.

La base de datos no puede ser un cubo local. Los cubos locales no admiten la propiedad CompatibilityLevel .

La base de datos debe crearse en una versión anterior (SQL Server 2008 R2 o anterior) y, a continuación, adjuntar o restaurar a un servidor de SQL Server 2012 (11.x)SQL Server Analysis Services o superior. Las bases de datos implementadas en SQL Server 2012 ya están en 1100 y no se pueden degradar para ejecutarse en un nivel inferior.

Determinar el nivel de compatibilidad de la base de datos existente para una base de datos multidimensional

Puede ver o modificar el nivel de compatibilidad de la base de datos solo a través de XMLA. Puede ver o modificar el script XMLA que especifica la base de datos en SQL Server Management Studio.

Si busca la definición XMLA de una base de datos para la propiedad CompatibilityLevel y no existe, es más probable que la base de datos esté en el nivel 1050 .

En la sección siguiente se proporcionan instrucciones para ver y modificar el script XMLA.

Establecer el nivel de compatibilidad de la base de datos en SQL Server Management Studio

  1. Antes de elevar el nivel de compatibilidad, realice una copia de seguridad de la base de datos en caso de que quiera revertir los cambios más adelante.

  2. Usando SQL Server Management Studio, conéctese al servidor de SQL Server Analysis Services de SQL Server 2017 que hospeda la base de datos.

  3. Haga clic con el botón derecho en el nombre de la base de datos, seleccione Incluir la base de datos como, seleccione ALTER Toy, después, seleccione Nueva ventana del Editor de consultas. Se abre una representación XMLA de la base de datos en una nueva ventana.

  4. Copie el siguiente elemento XML:

    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    
  5. Pegue el elemento después del </Annotations> elemento de cierre y antes del <Language> elemento . El XML debe tener un aspecto similar al del ejemplo siguiente:

    </Annotations>  
    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    <Language>1033</Language>  
    
  6. Guarde el archivo.

  7. Para ejecutar el script, seleccione Ejecutar en el menú Consulta o presione F5.

Operaciones admitidas que requieren el mismo nivel de compatibilidad

Las siguientes operaciones requieren que las bases de datos de origen compartan el mismo nivel de compatibilidad.

  1. La combinación de particiones de bases de datos diferentes solo se admite si ambas bases de datos comparten el mismo nivel de compatibilidad.

  2. El uso de dimensiones vinculadas de otra base de datos requiere el mismo nivel de compatibilidad. Por ejemplo, si desea usar una dimensión vinculada de una base de datos de SQL Server 2008 R2 en una base de datos de SQL Server 2012 (11.x), debe migrar la base de datos de SQL Server 2008 R2 a un servidor de SQL Server 2012 (11.x) y establecer el nivel de compatibilidad en 1100.

  3. La sincronización de servidores solo se admite para los servidores que comparten la misma versión y el mismo nivel de compatibilidad de base de datos.

Paso siguiente

Después de aumentar el nivel de compatibilidad de la base de datos, puede establecer la propiedad StringStoresCompatibilityLevel en SQL Server Data Tools. Esta configuración aumenta el almacenamiento de cadenas para medidas y dimensiones. Para obtener más información sobre esta característica, consulte Configuración del almacenamiento de cadenas para dimensiones y particiones.

Consulte también

Copia de seguridad, restauración y sincronización de bases de datos (XMLA)