Поделиться через


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

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

Этот раздел описывает уровень совместимости только для многомерных баз данных. Дополнительные сведения о табличных решениях см. в разделе Уровень совместимости (службы SSAS с пакетом обновления 1 (SP1) — табличные модели).

ПримечаниеПримечание

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

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

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

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

Параметр

Описание

1050

Это значение недоступно в скриптах и инструментах, но соответствует базам данных, созданным в SQL Server 2005, SQL Server 2008 или SQL Server 2008 R2. Любая база данных, в которой значение CompatibilityLevel явным образом не задано, неявно работает на уровне 1050.

1100

Это значение по умолчанию для новых баз данных, созданных в SQL Server 2012. К тому же его можно задавать для баз данных, созданных в более ранних версиях служб Analysis Services, чтобы разрешить использование функций, которые поддерживаются только на этом уровне совместимости, а именно увеличенного хранилища строк для атрибутов измерений или мер числа различных объектов, содержащих строковые данные.

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

ПредупреждениеВнимание!

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

Предварительные требования

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

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

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

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

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

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

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

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

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

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

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

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

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

    </Annotations>
    <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>
    <Language>1049</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)