Настройка уровня совместимости многомерной базы данных (службы Analysis Services)

В службах Analysis Services свойство уровня совместимости базы данных определяет функциональный уровень базы данных. Уровни совместимости уникальны для каждого типа модели. Например, уровень 1100 совместимости имеет другое значение в зависимости от того, является ли база данных многомерной или табличной.

В этом разделе описывается уровень совместимости только для многомерных баз данных. Дополнительные сведения о табличных решениях см. в разделе "Уровень совместимости" (SSAS Tabular SP1).

Замечание

Табличные модели имеют дополнительные уровни совместимости базы данных, которые не применимы к многомерным моделям. Уровень 1103 совместимости не существует для многомерных моделей. Дополнительные сведения о 1103 табличных решениях см. в статье "Новые возможности табличной модели" в SQL Server 2012 с пакетом обновления 1 (SP1) и уровне совместимости.

Уровни совместимости для многомерных баз данных

В настоящее время единственное многомерное поведение базы данных, которое зависит от функционального уровня, — это архитектура хранилища строк. Повышая уровень совместимости базы данных, можно переопределить максимальное ограничение 4 гигабайта для хранения строковых мер и измерений.

Для многомерной базы данных допустимые значения свойства CompatibilityLevel включают следующее:

Настройки Описание
1050 Это значение не отображается в скрипте или средствах, но оно соответствует базам данных, созданным в SQL Server 2005, SQL Server 2008 или SQL Server 2008 R2. Любая база данных, для которой CompatibilityLevel не задано явно, неявно выполняется на уровне 1050.
1100 Это значение по умолчанию для новых баз данных, создаваемых в SQL Server 2012 или SQL Server 2014. Вы также можете указать его для баз данных, созданных в более ранних версиях служб Analysis Services, чтобы включить использование функций, поддерживаемых только на этом уровне совместимости (а именно, увеличение хранилища строк для атрибутов измерения или отдельных мер счетчика, содержащих строковые данные).

Базы данных с CompatibilityLevel, установленным на 1100, получают дополнительное свойство StringStoresCompatibilityLevel, которое позволяет выбрать альтернативное хранилище строк для разделов и измерений.

Предупреждение

Установка совместимости базы данных на более высокий уровень необратима. После увеличения уровня 1100совместимости необходимо продолжить запуск базы данных на более новых серверах. Вы не можете выполнить откат до 1050. Не удается подключить или восстановить 1100 базу данных на серверной версии, которая раньше, чем SQL Server 2012 или SQL Server 2014.

Предпосылки

Уровни совместимости базы данных представлены в SQL Server 2012. Для просмотра или задания уровня совместимости базы данных необходимо иметь службы SQL Server 2012Analysis или более поздней версии.

База данных не может быть локальным кубом. Локальные куби не поддерживают CompatibilityLevel свойство.

База данных должна быть создана в предыдущем выпуске (SQL Server 2008 R2 или более ранней версии), а затем присоединена или восстановлена к серверу SQL Server 2012Analysis Services или более поздней версии. Базы данных, развернутые в SQL Server 2012, уже находятся на текущем уровне 1100 и не могут быть понижены до более низкого уровня.

Определение существующего уровня совместимости базы данных для многомерной базы данных

Единственным способом просмотра или изменения уровня совместимости базы данных является XMLA. Вы можете просмотреть или изменить скрипт XMLA, указывающий базу данных в SQL Server Management Studio.

При поиске определения XMLA базы данных для свойства CompatibilityLevel и если оно не существует, скорее всего, у вас база данных на уровне 1050.

Инструкции по просмотру и изменению скрипта XMLA приведены в следующем разделе.

Настройка уровня совместимости базы данных в SQL Server Management Studio

  1. Перед повышением уровня совместимости создайте резервную копию базы данных, если вы хотите изменить изменения позже.

  2. С помощью SQL Server Management Studio подключитесь к серверу служб SQL Server 2014Analysis, на котором размещена база данных.

  3. Щелкните правой кнопкой мыши имя базы данных, наведите указатель набазу данных скрипта, а затем выберите "Создать окно редактора запросов". Представление XMLA базы данных откроется в новом окне.

  4. Скопируйте следующий XML-элемент:

    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    
  5. Вставьте его после закрывающего </Annotations> элемента и перед элементом <Language> . XML-код должен выглядеть примерно так:

    </Annotations>  
    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
    <Language>1033</Language>  
    
  6. Сохраните файл.

  7. Чтобы запустить скрипт, нажмите кнопку "Выполнить " в меню "Запрос" или нажмите клавишу F5.

Поддерживаемые операции, требующие того же уровня совместимости

Для следующих операций требуется, чтобы исходные базы данных совместно используют одинаковый уровень совместимости.

  1. Объединение секций из разных баз данных поддерживается только в том случае, если обе базы данных имеют одинаковый уровень совместимости.

  2. Использование связанных измерений из другой базы данных требует того же уровня совместимости. Например, если вы хотите использовать связанное измерение из базы данных SQL Server 2008 R2 в базе данных SQL Server 2012, необходимо перенести базу данных SQL Server 2008 R2 на сервер SQL Server 2012 и установить уровень 1100совместимости.

  3. Синхронизация серверов поддерживается только для серверов с одинаковыми версиями и уровнем совместимости баз данных.

Дальнейшие шаги

После увеличения уровня совместимости базы данных можно задать StringStoresCompatibilityLevel свойство в SQL Server Data Tools. Это увеличивает хранилище строк для мер и измерений. Дополнительные сведения об этой функции см. в разделе "Настройка хранилища строк для измерений и секций".

См. также

Резервное копирование, восстановление и синхронизация баз данных (XMLA)