Новые возможности в службах SQL Server Analysis Services

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

В этой статье перечислены новые функции, улучшения, устаревшие и неподдерживаемые функции, а также изменения в поведении и критические изменения в последних версиях SQL Server Analysis Services (SSAS).

службы Analysis Services SQL Server 2022

Накопительный пакет обновления 1 (CU1)

Обновление шифрования

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

Общедоступная версия (GA)

Горизонтальное слияние

Эта версия представляет Horizontal Fusion, оптимизацию плана выполнения запросов, направленную на сокращение количества запросов к источникам данных, необходимых для создания и возврата результатов. Несколько небольших запросов к источникам данных объединяются в более крупный запрос источника данных. Меньше запросов к источникам данных означает меньшее количество круговых путей и меньшее количество дорогостоящих проверок в больших источниках данных, что приводит к значительному повышению производительности DAX и снижению спроса на обработку в источнике данных. Запросы DAX выполняются быстрее с помощью Horizontal Fusion, особенно в режиме DirectQuery. Кроме того, увеличивается масштабируемость.

Планы параллельного выполнения для DirectQuery

Это улучшение позволяет подсистеме служб Analysis Services анализировать запросы DAX к источнику данных DirectQuery и выявлять независимые операции подсистемы хранилища. Затем подсистема может выполнять эти операции с источником данных параллельно. Выполняя операции параллельно, подсистема служб Analysis Services может повысить производительность запросов, используя возможности масштабируемости больших источников данных. Чтобы обработка запросов не перегружать источник данных, используйте параметр свойства MaxParallelism , чтобы указать фиксированное количество потоков, которые можно использовать для параллельных операций.

Поддержка семантических моделей DirectQuery в Power BI

В этой версии реализована поддержка моделей Power BI с подключениями DirectQuery к SQL Server моделям служб Analysis Services 2022. Разработчики моделей данных и авторы отчетов, использующие май 2022 г. и более поздние версии Power BI Desktop, теперь могут объединять другие импортированные данные и данные DirectQuery из моделей Power BI, Azure Analysis Services и теперь SSAS 2022.

Дополнительные сведения см. в статье Использование DirectQuery для семантических моделей и служб Analysis Services | Документация по Power BI.

Производительность запросов многомерных выражений

Впервые появилась в Power BI, а теперь в SSAS 2022, многомерные выражения Fusion включает оптимизацию обработчика формул (FE), сокращая количество запросов подсистемы хранилища (SE) на запрос многомерных выражений. Клиентские приложения, использующие многомерные выражения для запроса данных модели или набора данных, такие как Microsoft Excel, будут видеть повышенную производительность запросов. Для распространенных шаблонов запросов многомерных выражений теперь требуется меньше запросов SE, так как ранее для поддержки разной степени детализации требовалось множество запросов SE. Меньше запросов SE означает сокращение затрат на сканирование больших моделей, что приводит к значительному повышению производительности, особенно при подключении к табличным моделям в режиме прямого запроса.

Дополнительные сведения см. в статье Объявление о повышении производительности запросов многомерных выражений в Power BI | Блог Microsoft Power BI.

Управление ресурсами

Эта версия включает повышенную точность для свойства памяти сервера QueryMemoryLimit и свойства строка подключения DbpropMsmdRequestMemoryLimit.

Впервые появилось в SSAS 2019, свойство памяти сервера QueryMemoryLimit применяется только к очереди памяти, в которых во время обработки запросов создаются промежуточные результаты запроса DAX. Теперь в SSAS 2022 он также применяется к запросам многомерных выражений, фактически охватывая все запросы. Вы можете лучше управлять обработкой ресурсоемких запросов, что приводит к значительной материализации. Если запрос достигает указанного предела, подсистема отменяет запрос и возвращает вызывающей стороне ошибку, уменьшая влияние на других одновременно работающих пользователей.

Клиентские приложения могут дополнительно сократить объем памяти, разрешенный для каждого запроса, указав свойство строка подключения DbpropMsmdRequestMemoryLimit. Указанное в килобайтах, это свойство переопределяет значение свойства памяти сервера QueryMemoryLimit для подключения.

Чередование запросов — короткое смещение запроса с быстрой отменой

В этой версии введено новое значение, указывающее смещение короткого запроса с быстрой отменой для параметра свойства Threadpool\SchedulingBehavior. Этот параметр свойства сокращает время отклика на запросы пользователя в сценариях с высоким уровнем параллелизма. Дополнительные сведения см. в разделе Чередование запросов — настройка.

Уровень совместимости табличной модели 1600

В этой версии представлен уровень совместимости 1600 для табличных моделей. Уровень совместимости 1600 совпадает с новейшими функциями Power BI и Azure Analysis Services.

Нерекомендуемые функции в SSAS 2022

В этой версии не объявлены нерекомендуемые функции.

Неподдерживаемые функции в SSAS 2022

В этой версии не поддерживаются следующие функции:

Режим или категория Компонент
Таблица Уровни совместимости 1100 и 1103
Многомерная Интеллектуальный анализ данных
Режим Power Pivot Power Pivot для SharePoint

Критические изменения в SSAS 2022

Уровни совместимости табличных моделей 1100 и 1103 не поддерживаются в этой версии. Чтобы предотвратить критическое изменение, обновите модели до уровня совместимости 1200 перед обновлением более ранней версии SSAS до SSAS 2022.

Изменения в поведении в SSAS 2022

В этой версии нет изменений в поведении .

службы Analysis Services SQL Server 2019

SQL Server 2019 Analysis Services CU 5

SQL Server Analysis Services накопительные обновления входят в состав SQL Server накопительных обновлений. Дополнительные сведения о последнем накопительных обновлениях и его загрузке см. в статье SQL Server последнем накопительным обновлением 2019 года. На страницах базы знаний накопительных обновлений перечислены известные проблемы, улучшения и исправления для всех SQL Server функций, включая службы SSAS. Дополнительные сведения об основных обновлениях компонентов для служб SSAS описаны здесь.

SuperDAX для многомерных моделей (SuperDAXMD)

С накопительным пакетом обновления 5 клиенты на основе DAX теперь могут использовать функции SuperDAX и шаблоны запросов к многомерным моделям, обеспечивая повышенную производительность при запросе данных модели. SuperDAX впервые представила оптимизацию запросов DAX для табличных моделей с Power BI и SQL Server Analysis Services 2016. SuperDAXMD теперь вносит эти улучшения в многомерные модели.

В отдельном объявлении в блоге Power BI показано, как пользователи Power BI могут извлечь выгоду из этого улучшения производительности многомерной модели, скачав последнюю версию Power BI Desktop. Существующие интерактивные отчеты в службе Power BI могут быть полезны без дополнительных действий, так как Power BI автоматически создает оптимизированные запросы SuperDAX. Power BI автоматически обнаруживает подключения к многомерным моделям с поддержкой SuperDAX и использует те же оптимизированные функции DAX и шаблоны запросов, которые уже используются для табличных моделей. Хотя Power BI может автоматически переключаться на SuperDAXMD, в собственных решениях бизнес-аналитики может потребоваться оптимизировать шаблоны запросов DAX вручную.

Оптимизированные шаблоны запросов должны использовать функцию SUMMARIZECOLUMNS , чтобы заменить менее эффективную стандартную функцию SUMMARIZE . Используйте переменные DAX VAR для вычисления выражений только один раз в месте определения, а затем повторно использовать результаты в других выражениях DAX без повторного выполнения вычислений. Другие и, возможно, менее распространенные функции SuperDAX — ЭТО SUBSTITUTEWITHINDEX, ADDMISSINGITEMS, а также NATURALLEFTOUTERJOIN и NATURALINNERJOIN, ISONORAFTER и GROUPBY. SELECTCOLUMNS и UNION также являются функциями SuperDAX.

Дополнительные сведения о том, как DAX работает с многомерными моделями, а также о важных шаблонах и ограничениях, которые следует учитывать, см. в статье DAX для многомерных моделей.

SQL Server 2019 Analysis Services (общедоступная версия)

Уровень совместимости табличной модели

В этом выпуске представлен уровень совместимости 1500 для табличных моделей.

Чередование запросов

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

Группы вычисления в табличных моделях

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

Параметр управления для обновлений кэша Power BI

Параметр свойства ClientCacheRefreshPolicy теперь поддерживается в SSAS 2019 и более поздних версиях. Этот параметр свойства уже доступен для Azure Analysis Services. Служба Power BI кэширует данные плитки панели мониторинга и данные отчета для начальной загрузки Live Connect отчета, что приводит к чрезмерному количеству запросов кэша, отправляемых в подсистему, и в крайнем случае перегружает сервер. Свойство ClientCacheRefreshPolicy позволяет переопределить это поведение на уровне сервера. Дополнительные сведения см. в разделе Общие свойства.

Интерактивное подключение

Эта функция предоставляет возможность присоединить табличную модель в интерактивном режиме. Такое подключение можно использовать для синхронизации реплик только для чтения в локальных средах масштабирования запросов. Чтобы выполнить операцию подключения по сети, используйте параметр AllowOverwrite команды Attach XMLA.

AllowOverwrite

Эта операция может потребовать удвоения памяти модели, чтобы старая версия оставалась доступна при загрузке новой версии.

Стандартный шаблон использования может выглядеть следующим образом:

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

  2. База данных 1 (версия 2) обрабатывается на сервере А, доступном для записи.

  3. База данных 1 (версия 2) отсоединяется и размещается в расположении, доступном серверу Б (через общее расположение, с помощью robocopy и т. д.).

  4. Команда <Attach> с параметром AllowOverwrite=True выполняется на сервере B с новым расположением DB1 (версия 2).

Без этой функции администраторам сначала требуется отсоединить базу данных, а затем присоединить новую версию базы данных. Это приводит к простою в течение времени, когда база данных недоступна для пользователей, и запросы к ней завершатся ошибкой.

Если указан этот новый флаг, версия 1 базы данных удаляется атомарно в рамках той же транзакции без простоя. Однако цена за это — одновременное присутствие обеих баз данных в памяти.

Связи "многие ко многим" в табличных моделях

Это улучшение позволяет создавать связи "многие ко многим" между таблицами, где оба столбца не являются уникальными. Связь можно определить между измерением и таблицей фактов со степенью детализации выше, чем ключевой столбец измерения. Это избавляет от необходимости нормализовать таблицы измерений и повышает удобство работы для пользователей, так как итоговая модель содержит меньше таблиц, а столбцы в них логически сгруппированы.

Для связи "многие ко многим" требуется, чтобы модели были на уровне совместимости 1500 и выше. Связи "многие ко многим" можно создавать с помощью Visual Studio 2019 с проектами служб Analysis Services VSIX с обновлением 2.9.2 и более поздних версий, API табличной объектной модели (TOM), языка сценариев табличных моделей (TMSL) и средства табличного редактора с открытым кодом.

Параметры памяти для управления ресурсами

Следующие параметры свойств обеспечивают улучшенное управление ресурсами:

  • Memory\QueryMemoryLimit — с помощью этого свойства памяти можно ограничивать очереди памяти, которые создаются запросами DAX к модели.
  • DbpropMsmdRequestMemoryLimit — с помощью этого свойства XMLA можно переопределять значение свойства сервера Memory\QueryMemoryLimit для подключения.
  • OLAP\Query\RowsetSerializationLimit — это свойство сервера ограничивает количество строк, возвращаемых в наборе строк, защищая ресурсы сервера от чрезмерно интенсивного использования экспорта данных. Оно применимо как к запросам DAX, так и к запросам многомерных выражений.

Эти свойства можно задавать с помощью последней версии SQL Server Management Studio (SSMS). Эти параметры уже доступны для Azure Analysis Services.

Устаревшие функции в SSAS 2019

В этом выпуске не объявлены нерекомендуемые функции.

Неподдерживаемые функции в SSAS 2019

В этом выпуске не объявлено о прекращении поддержки функций.

Критические изменения в SSAS 2019

В этом выпуске нет критических изменений .

Изменения в поведении в SSAS 2019

В этом выпуске нет изменений в поведении .

SQL Server 2017 Analysis Services

SQL Server 2017 Служба Analysis Services содержит некоторые из наиболее важных улучшений с SQL Server 2012 года. Основываясь на успешном табличном режиме (впервые появилось в SQL Server 2012 Analysis Services), этот выпуск делает табличные модели более мощными, чем когда-либо.

Многомерный режим и режим Power Pivot для SharePoint являются основным элементом для многих развертываний служб Analysis Services. В жизненном цикле продукта служб Analysis Services эти режимы являются зрелыми. В этом выпуске нет новых функций для любого из этих режимов. Однако исправления ошибок и улучшения производительности включены.

Описанные здесь функции включены в SQL Server analysis Services 2017. Но чтобы воспользоваться ими, необходимо также использовать последние версии Visual Studio с проектами служб Analysis Services и SQL Server Management Studio (SSMS). Проекты служб Analysis Services и SSMS ежемесячно обновляются с новыми и улучшенными функциями, которые обычно совпадают с новыми функциями в SQL Server.

Хотя важно узнать обо всех новых функциях, важно также знать, что является нерекомендуемой и прекращенной в этом и будущих выпусках. Дополнительные сведения см. в статье Устаревшие функции в SSAS 2017.

Давайте рассмотрим некоторые из ключевых новых функций в этом выпуске.

Уровень совместимости 1400 для табличных моделей

Чтобы воспользоваться преимуществами многих новых функций и функций, описанных здесь, необходимо установить или обновить новые или существующие табличные модели до уровня совместимости 1400. Модели с уровнем совместимости 1400 нельзя развертывать в SQL Server 2016 с пакетом обновления 1 (SP1) или более ранней версии либо переводить на более низкий уровень совместимости. Дополнительные сведения см. в статье об уровне совместимости табличных моделей Analysis Services.

В Visual Studio можно выбрать новый уровень совместимости 1400 при создании новых проектов табличной модели.

AS_NewTabular1400Project

Чтобы обновить существующую табличную модель в Visual Studio, в Обозреватель решений щелкните правой кнопкой мыши Model.bim, а затем в разделе Свойства задайте для свойства Уровень совместимостизначение SQL Server 2017 (1400).

AS_Model_Properties

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

Современный интерфейс получения данных

Когда дело доходит до импорта данных из источников данных в табличные модели, SSDT представляет современный интерфейс получения данных для моделей на уровне совместимости 1400. Он основан на аналогичном интерфейсе в Power BI Desktop и Microsoft Excel 2016. Современный интерфейс Get Data предоставляет огромные возможности преобразования данных и гибридного использования данных с помощью построителя запросов Get Data и выражений M.

Современный интерфейс получения данных обеспечивает поддержку широкого спектра источников данных. В дальнейшем обновления будут включать поддержку еще больше.

AS_Get_Data_in_SSDT

Мощный и интуитивно понятный пользовательский интерфейс упрощает выбор данных, а также возможности преобразования и гибридного использования данных.

Расширенное гибридное приложение

Современные возможности получения данных и M mashup не применяются к существующим табличным моделям, обновленным с уровня совместимости 1200 до 1400. Новый интерфейс применяется только к новым моделям, созданным на уровне совместимости 1400.

Указания кодирования

В этом выпуске представлены указания по кодировке— расширенная функция, используемая для оптимизации обработки (обновления данных) больших табличных моделей в памяти. Чтобы лучше понять кодировку, ознакомьтесь с разделом Настройка производительности табличных моделей в SQL Server 2012 Analysis Services, чтобы лучше понять кодировку.

  • Кодирование значений обеспечивает лучшую производительность запросов для столбцов, которые обычно используются только для агрегатов.

  • Хэш-кодирование предпочтительнее для столбцов группирования (часто значений таблицы измерений) и внешних ключей. Строковые столбцы всегда имеют хэш-кодирование.

Числовые столбцы могут использовать любой из этих методов кодирования. Когда службы Analysis Services начинают обработку таблицы, если таблица пуста (с секциями или без нее) или выполняется операция полной обработки таблицы, для каждого числового столбца берутся примеры значений, чтобы определить, следует ли применять кодировку значений или хэшей. По умолчанию кодировка значений выбирается, когда выборка различных значений в столбце достаточно велика. В противном случае хэш-кодирование обычно обеспечивает лучшее сжатие. Службы Analysis Services могут изменить метод кодирования после частичной обработки столбца на основе дополнительных сведений о распределении данных и перезапустить процесс кодирования; однако это увеличивает время обработки и неэффективно. В техническом документе по настройке производительности более подробно рассматривается повторное кодирование и описывается, как обнаружить его с помощью SQL Server Profiler.

Указания кодирования позволяют моделировать метод кодирования с учетом предыдущих знаний о профилировании данных и (или) в ответ на события трассировки повторного кодирования. Так как агрегирование по столбцам с хэш-кодировкой выполняется медленнее, чем по столбцам с кодировкой значений, кодировка значений может быть указана в качестве указания для таких столбцов. Применение предпочтения не гарантируется. Это подсказка, а не настройка. Чтобы указать указание кодирования, задайте свойство EncodingHint для столбца. Возможные значения: Default, Value и Hash. Следующий фрагмент метаданных на основе JSON из файла Model.bim задает кодировку значений для столбца Sales Amount.

{
    "name": "Sales Amount",
    "dataType": "decimal",
    "sourceColumn": "SalesAmount",
    "formatString": "\\$#,0.00;(\\$#,0.00);\\$#,0.00",
    "sourceProviderType": "Currency",
    "encodingHint": "Value"
}

Неоднородные иерархии

В табличных моделях можно моделировать иерархии типа "родители-потомки". Иерархии с разным количеством уровней часто называют неоднородными. По умолчанию неоднородные иерархии отображаются с пустыми полями для уровней ниже последнего дочернего уровня. Вот пример неоднородной иерархии на организационной диаграмме:

AS_Ragged_Hierarchy

В этом выпуске появилось свойство Скрыть члены . Свойству Скрыть члены иерархии можно присвоить значение Скрыть пустые члены.

AS_Hide_Blank_Members

Примечание

Пустые члены в модели представлены пустым значением DAX, а не пустой строкой.

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

AS_Non_Ragged_Hierarchy

Строки детализации

Теперь можно определить настраиваемый набор строк, на основе которого формируется значение меры. Строки детализации похожи на действие детализации по умолчанию в многомерных моделях. Это позволяет конечным пользователям просматривать более подробные данные, чем на агрегированном уровне.

На приведенной ниже сводной таблице представлен объем продаж в Интернете по годам из образца табличной модели Adventure Works. Вы можете щелкнуть правой кнопкой мыши ячейку с агрегированным значением меры, а затем выбрать пункт Показать подробности , чтобы просмотреть строки детализации.

AS_Show_Details

По умолчанию отображаются связанные данные из таблицы продаж в Интернете. Такие ограниченные возможности зачастую бесполезны для пользователя, так как таблица может не содержать столбцы, включающие нужную информацию, например имя клиента и сведения о заказе. С помощью строк детализации можно указать свойство Выражение свойств детализации для мер.

Свойство "Выражение строк детализации" для мер

Свойство Выражение свойств детализации для мер позволяет создателям моделей настраивать столбцы и строки, возвращаемые конечным пользователям.

AS_Detail_Rows_Expression_Property

Функция DAX SELECTCOLUMNS обычно используется в выражении строк детализации. В приведенном ниже примере определяются столбцы, возвращаемые для строк в таблице продаж в Интернете в образце табличной модели 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]
)

Когда свойство определено и модель развернута, настраиваемый набор строк возвращается при выборе пользователем команды Показать подробности. Контекст фильтра выбранной ячейки учитывается автоматически. В этом примере отображаются только строки для значения 2010.

AS_Detail_Rows

Свойство "Выражение строк детализации по умолчанию" для таблиц

Так же как и меры, таблицы имеют свойство для определения выражения строк детализации. Свойство Выражение строк детализации по умолчанию используется по умолчанию для всех мер в таблице. Меры, не имеющие собственного выражения, наследуют выражение из таблицы и показывают набор строк, определенный для таблицы. Это позволяет повторно использовать выражения, а новые меры, добавленные в таблицу позже, автоматически наследуют выражение.

AS_Default_Detail_Rows_Expression

Функция DAX DETAILROWS

В этом выпуске появилась функция DAX DETAILROWS , которая возвращает набор строк, определяемый выражением строк детализации. Она действует аналогично инструкции DRILLTHROUGH в MDX, которая также совместима с выражениями строк детализации, определенными в табличных моделях.

Приведенный ниже запрос DAX возвращает набор строк, определенный выражением строк детализации для меры или ее таблицы. Если выражение не определено, возвращаются данные таблицы продаж в Интернете, так как она содержит меру.

EVALUATE DETAILROWS([Internet Total Sales])

Безопасность на уровне объекта

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

Безопасность на уровне объектов должна быть задана с помощью метаданных на основе JSON, языка скриптов табличных моделей (TMSL) или табличной объектной модели (TOM).

Например, приведенный ниже код позволяет защитить таблицу Product в образце табличной модели Adventure Works путем присвоения свойству MetadataPermission класса TablePermission значения 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);

Динамические административные представления

Динамические административные представления — это запросы в SQL Server Profiler, которые возвращают сведения об операциях локального сервера и работоспособности сервера. Этот выпуск включает улучшения динамических административных представлений (DMV) для табличных моделей на уровнях совместимости 1200 и 1400.

DISCOVER_CALC_DEPENDENCY теперь работает с табличными моделями 1200 и более поздних версий. Табличные модели 1400 и более поздних версий отображают зависимости между разделами M, выражениями M и структурированными источниками данных. Дополнительные сведения см. в блоге служб Analysis Services.

MDSCHEMA_MEASUREGROUP_DIMENSIONS улучшения включены для этого динамического административного представления, который используется различными клиентскими инструментами для отображения размерности мер. Например, функция Обзор в сводных таблицах Excel позволяет пользователю выполнять перекрестную детализацию измерений, связанных с выбранными мерами. В этом выпуске исправлены столбцы кратности, в которых ранее отображались неправильные значения.

Улучшения DAX

Одной из наиболее важных функций DAX является новая функция IN Operator/CONTAINSROW для выражений DAX. Она аналогична оператору TSQL IN , обычно используемому для указания нескольких значений в предложении WHERE .

Ранее многозначные фильтры обычно задавались с помощью логического оператора OR , как в следующем выражении меры:

Filtered Sales:=CALCULATE (
        [Internet Total Sales],
                 'Product'[Color] = "Red"
            || 'Product'[Color] = "Blue"
            || 'Product'[Color] = "Black"
    )

С помощью оператора IN это стало проще:

Filtered Sales:=CALCULATE (
        [Internet Total Sales], 'Product'[Color] IN { "Red", "Blue", "Black" }
    )

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

Оператор IN функционально эквивалентен функции CONTAINSROW .

Filtered Sales:=CALCULATE (
        [Internet Total Sales], CONTAINSROW({ "Red", "Blue", "Black" }, 'Product'[Color])
    )

Оператор IN также можно эффективно использовать с конструкторами таблиц. Например, следующая мера фильтрует по сочетаниям цвета продукта и категории:

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" )
        )
    )

Благодаря новому оператору IN приведенное выше выражение меры эквивалентно следующему:

Filtered Sales:=CALCULATE (
        [Internet Total Sales],
        FILTER( ALL('Product'),
            ('Product'[Color], Product[Product Category Name]) IN
            { ( "Red", "Accessories" ), ( "Blue", "Bikes" ), ( "Black", "Clothing" ) }
        )
    )

Дополнительные улучшения

Помимо всех новых функций, службы Analysis Services, SSDT и SSMS также включают следующие улучшения:

  • Иерархия и повторное использование столбцов отображаются в более полезных местах в списке полей Power BI.
  • Связи дат позволяют легко создавать связи с измерениями даты на основе полей даты.
  • Параметр установки служб Analysis Services по умолчанию теперь используется в табличном режиме.
  • Новые источники данных Get Data (Power Query).
  • Редактор DAX для SSDT.
  • Поддержка существующих источников данных DirectQuery для M-запросов.
  • Улучшения SSMS, такие как просмотр, редактирование и поддержка сценариев для структурированных источников данных.

Устаревшие функции в SSAS 2017

Следующие функции являются устаревшими в этом выпуске:

Режим или категория Компонент
Многомерная Интеллектуальный анализ данных
Многомерная Удаленные связанные группы мер
Таблица Модели на уровне совместимости 1100 и 1103
Таблица Свойства табличной объектной модели — Column.TableDetailPosition, Column.IsDefaultLabel, Column.IsDefaultImage
Инструменты Приложение SQL Server Profiler для перехвата трассировки

В качестве замены можно использовать профилировщик расширенных событий, встроенный в SQL Server Management Studio.
См. раздел Monitor Analysis Services with SQL Server Extended Events.
Инструменты Воспроизведение трассировки с помощью приложения SQL Server Profiler
Замена. Замены нет.
Объекты управления трассировкой и интерфейсы API трассировки Объекты Microsoft.AnalysisServices.Trace (содержат интерфейсы API для объектов трассировки и воспроизведения Analysis Services). Замена состоит из нескольких частей:

— Конфигурация трассировки: Microsoft.SqlServer.Management.XEvent
— Чтение трассировки: Microsoft.SqlServer.XEvent.Linq
— Воспроизведение трассировки: нет

Неподдерживаемые функции в SSAS 2017

В этом выпуске не реализованы следующие функции:

Режим или категория Компонент
Таблица Значение свойства памяти VertiPaqPagingPolicy (2). Включите разбиение по страницам на диск с помощью сопоставленных файлов в памяти.
Многомерная Удаленные секции
Многомерная Удаленные связанные группы мер
Многомерная Многомерная обратная запись
Многомерная Связанные измерения

Критические изменения в SSAS 2017

В этом выпуске нет критических изменений .

Изменения в поведении в SSAS 2017

Изменения в MDSCHEMA_MEASUREGROUP_DIMENSIONS и DISCOVER_CALC_DEPENDENCY, подробно описаны в объявлении Новые возможности SQL Server 2017 CTP 2.1 для служб Analysis Services.

Службы SQL Server 2016 Analysis Services

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

службы Analysis Services SQL Server 2016 с пакетом обновления 1 (SP1)

Скачивание SQL Server 2016 с пакетом обновления 1 (SP1)

Службы Analysis Services в SQL Server 2016 с пакетом обновления 1 (SP1) обеспечивают улучшенную производительность и масштабируемость, благодаря учету особенностей NUMA и оптимизированному выделению памяти на основе технологии Intel Threading Building Blocks (Intel TBB). Эти новые возможности помогают снизить совокупную стоимость владения (TCO) за счет увеличения количества пользователей на меньшем числе более производительных корпоративных серверов.

В частности, службы Analysis Services в SQL Server 2016 с пакетом обновления 1 (SP1) получили улучшения в следующих ключевых областях:

  • Учет особенностей NUMA — подсистема VertiPaq в памяти, лежащая в основе служб Analysis Services, теперь ведет отдельную очередь заданий на каждом узле NUMA, что улучшает поддержку этой архитектуры. Это гарантирует выполнение заданий сканирования сегмента на одном узле, где выделена память для данных этого сегмента. Обратите внимание, что функция учета особенностей NUMA по умолчанию включена только в системах, имеющих не меньше четырех узлов NUMA. В системах с двумя узлами затраты на доступ к удаленно выделенной памяти обычно не оправдывают затраты на управление спецификой NUMA.
  • Выделение памяти — работа служб Analysis Services была ускорена посредством Intel Threading Building Blocks — масштабируемого распределителя, который предоставляет отдельные пулы памяти для каждого ядра. При увеличении числа ядер масштабирование системы может осуществляться почти линейно.
  • Фрагментация кучи — масштабируемый распределитель на базе Intel TBB также помогает устранить проблемы производительности, вызванные фрагментацией кучи, которые возникают с кучей Windows.

Тестирование производительности и масштабируемости показало значительное увеличение пропускной способности для запросов при выполнении служб Analysis Services в SQL Server 2016 с пакетом обновления 1 (SP1) на крупных многоузловых корпоративных серверах.

Несмотря на то, что большинство усовершенствований в этом выпуске относятся к табличным моделям, определенные улучшения были достигнуты и для многомерных моделей, например, оптимизация ROLAP для различных объектов, таких как DB2 и Oracle, поддержка детализации и множественного выбора в Excel 2016 и оптимизация запросов Excel.

Службы Analysis Services SQL Server 2016 г.

Моделирование

Улучшенная производительность моделирования табличных моделей 1200

Для табличных моделей 1200 операции с метаданными в SSDT выполняются гораздо быстрее, чем в табличных моделях 1100 или 1103. Для сравнения: на одном и том же оборудовании создание связи в модели с уровнем совместимости SQL Server 2014 (1103) с 23 таблицами занимает 3 секунды, а создание той же связи в модели с уровнем совместимости 1200 занимает менее секунды.

Добавлены шаблоны проектов для табличных моделей 1200 в SSDT

Начиная с этого выпуска, больше не требуется использовать две версии SSDT для создания реляционных проектов и проектов бизнес-аналитики. ВSQL Server Data Tools для Visual Studio 2015 добавлены шаблоны проектов для решений служб Analysis Services, включая табличные проекты служб Analysis Services , используемые для построения моделей на уровне совместимости 1200. Также включены другие шаблоны проектов служб Analysis Services для многомерных решений и решений интеллектуального анализа данных, но на том же функциональном уровне (1100 или 1103), что и в предыдущих выпусках.

Отображение папок

Теперь отображение папок доступно для табличных моделей 1200. Определенные в SQL Server Data Tools и готовые для просмотра в клиентских приложениях, таких как Excel или Power BI Desktop, папки отображения помогают упорядочить большое число мер в отдельные папки и сформировать визуальную иерархию для упрощения переходов по спискам полей.

Двунаправленные кросс-фильтры

Новым в этом выпуске является стандартный подход по включению двунаправленных кросс-фильтров в табличные модели, исключающий необходимость вручную создавать обходные пути DAX для распространения контекста фильтра по связям между таблицами. Фильтры создаются автоматически только в случае высокой вероятности установки направления. Если между связями таблиц существует неоднозначность в виде нескольких путей запроса, фильтр не будет создан автоматически. Дополнительные сведения см. в разделе Двунаправленные кросс-фильтры для табличных моделей в службах SQL Server 2016 Analysis Services .

Translations

Переведенные метаданные можно хранить в табличной модели уровня 1200. Метаданные в модели содержат поля для Culture, переведенные заголовки и переведенные описания. Чтобы добавить переводы, используйте команду"Переводы моделей>" в SQL Server Data Tools. Дополнительные сведения см. в разделе Переводы в табличных моделях (службы Analysis Services).

Вложенные таблицы

Теперь табличную модель 1100 или 1103, содержащую вложенные таблицы, можно обновить до уровня 1200. Мы рекомендуем использовать SQL Server Data Tools. В SSDT задайте для compatibilityLevel значение 1200, а затем разверните экземпляр SQL Server Analysis Services SQL Server 2017. Дополнительные сведения см. в разделе Compatibility Level for Tabular models in Analysis Services .

Вычисляемые таблицы в SSDT

Вычисляемая таблица — это конструкция только для модели на основе выражения DAX или запроса в SSDT. При развертывании в базе данных вычисляемые таблицы ничем не отличаются от обычных таблиц.

Существует несколько вариантов использования вычисляемых таблиц, включая создание таблиц для представления существующей таблицы в определенной роли. Классическим примером является таблица дат, которая работает в нескольких контекстах (дата заказа, дата отгрузки и так далее). Создание вычисляемой таблицы для конкретной роли теперь позволяет активировать связь таблиц для упрощения выполнения запросов или взаимодействия с данными. Кроме того, вычисляемые таблицы можно использовать для объединения частей существующих таблиц в совершенно новую таблицу, которая присутствует только в модели. Дополнительные сведения см. в статье Создание вычисляемой таблицы .

Исправление формул

При исправлении формул в табличной модели 1200 SSDT автоматически обновляет все меры, ссылающиеся на переименованный столбец или таблицу.

Поддержка диспетчера конфигурации Visual Studio

Для поддержки нескольких сред, таких как среда тестирования и предварительная рабочая среда, Visual Studio позволяет разработчикам создавать несколько конфигураций проектов с помощью диспетчера конфигурации. Это средство уже используется в многомерных моделях, но в табличных моделях оно не применяется. Начиная с этого выпуска, диспетчер конфигурации можно использовать для развертывания на разных серверах.

Управление экземплярами

Администрирование табличных моделей 1200 в среде SSMS

В этом выпуске экземпляр служб Analysis Services в табличном режиме сервера может работать с табличными моделями на любом уровне совместимости (1100, 1103, 1200). В последнем выпуске среда SQL Server Management Studio обновлена и может отображать свойства и обеспечивать администрирование модели базы данных для табличных моделей на уровне совместимости 1200.

Параллельная обработка нескольких секций таблицы в табличных моделях

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

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

SQL Server Analysis Services администраторы теперь могут использовать SQL Server Management Studio для настройки учетных записей компьютеров в составе группы администраторов SQL Server Analysis Services. В диалоговом окне Выбор пользователей или групп укажите значение в поле Расположения для домена компьютеров, а затем добавьте тип объекта Компьютеры . Дополнительные сведения см. в статье Предоставление прав администратора сервера экземпляру служб Analysis Services.

DBCC для служб Analysis Services

Средство проверки согласованности базы данных (DBCC) выполняется на внутреннем уровне для обнаружения потенциальных проблем повреждения данных при загрузке базы данных. Однако его, помимо прочего, можно запустить по требованию при подозрениях на проблемы в данных или модели. DBCC выполняет разные проверки в зависимости от типа модели — табличная или многомерная. Дополнительные сведения см. в статье Средство проверки согласованности баз данных (DBCC) для табличных и многомерных баз данных Служб Analysis Services .

Обновления расширенных событий

В этом выпуске добавлен графический пользовательский интерфейс для SQL Server Management Studio для настройки SQL Server Analysis Services расширенных событий и управления ими. Можно настраивать потоки динамических данных для мониторинга активности сервера в режиме реального времени, сохранять загруженные в память данные сеансов для быстрого анализа или сохранять потоки данных в файл для последующего анализа. Дополнительные сведения см. в разделе Мониторинг служб Analysis Services с помощью расширенных событий SQL Server.

Написание сценариев

PowerShell для табличных моделей

Этот выпуск включает усовершенствования PowerShell для табличных моделей на уровне совместимости 1200. Можно использовать все применимые командлеты, а также командлеты, предназначенные специально для табличного режима: Invoke ProcessASDatabase и Invoke-ProcessTable.

Создание сценариев SSMS для операций базы данных

В последнем выпуске среды Management Studio (SSMS)включена возможность написания сценариев для таких команд базы данных, как Create, Alter, Delete, Backup, Restore, Attach, Detach. Результатом является TMSL в формате JSON. Дополнительные сведения см. в справочнике по языку сценариев табличных моделей (TMSL).

Задача «Выполнение инструкции DDL служб Analysis Services»

Теперь задачаВыполнение инструкции DDL служб Analysis Services , помимо прочего, принимает команды на языке TMSL.

Командлет PowerShell SSAS

Теперь командлет PowerShell SSAS Invoke-ASCmd принимает команды на языке TMSL. Другие командлеты PowerShell SSAS могут быть обновлены в будущем выпуске для использования новых табличных метаданных (исключения будут приведены в заметках о выпуске). Дополнительные сведения см. в разделе Analysis Services PowerShell Reference .

В SSMS поддерживается язык сценариев TMSL.

Последняя версия SSMSпозволяет создавать сценарии автоматизации большинства административных задач для табличных моделей 1200. В настоящее время можно сгенерировать сценарии для следующих задач: обработка на любом уровне, а также для операций CREATE, ALTER, DELETE на уровне базы данных.

С функциональной точки зрения TMSL эквивалентен расширению ASSL XML, предоставляющему определения многомерных объектов. Однако для описания табличных метаданных TMSL использует собственные дескрипторы, такие как model, tableи relationship . Дополнительные сведения о схеме см. в справочнике по языку TMSL .

Созданный сценарий на базе JSON для табличной модели может иметь следующий вид:

{
  "create": {
    "database": {
      "name": "AdventureWorksTabular1200",
      "id": "AdventureWorksTabular1200",
      "compatibilityLevel": 1200,
      "readWriteMode": "readWrite",
      "model": {}
    }
  }
}

Полезные данные — это документ JSON, который может быть минимальным, как в приведенном выше примере, или иметь полный набор определений объектов. В справочнике по языку TMSL описывается синтаксис.

Результатом выполнения команд CREATE, ALTER, и DELETE на уровне базы данных будет сценарий TMSL сценарий в знакомом окне XMLA. Кроме того, в этом выпуске поддерживается написание сценариев и для других команд, например Process. Поддержка скриптов для других действий может быть добавлена в будущем выпуске.

Сценарные команды Описание
create Добавляет базу данных, подключение или секцию. Эквивалент ASSL — CREATE.
createOrReplace Обновляет существующее определение объекта (базы данных, подключения или секции), перезаписывая предыдущую версию. Эквивалент ASSL — ALTER с параметром AllowOverwrite, имеющим значение true, и параметром ObjectDefinition со значением ExpandFull.
удалить Удаляет определение объекта. Эквивалент ASSL — DELETE.
refresh Обрабатывает объект. Эквивалент ASSL — PROCESS.

DAX

Усовершенствованное редактирование формул DAX

Обновления в строке формул помогает создавать формулы с большей легкостью, различая функции, поля и меры с помощью раскраски синтаксиса, она предоставляет интеллектуальные предложения функций и полей и сообщает, неправильно ли части выражения DAX с помощью волнистой линией ошибок. Кроме того, вы можете использовать несколько строк (Alt + ВВОД) и добавлять отступы (TAB). Теперь в строке формул также можно писать комментарии в рамках мер, просто введите "//", и все после этих символов в той же строке будет считаться комментарием.

Переменные DAX

В этом выпуске реализована поддержка переменных в DAX. Теперь переменные могут хранить результат выражения в виде именованной переменной, которую затем можно передать в качестве аргумента в другие выражения измерений. Вычисленные итоговые значения для выражения переменной не изменяются, даже если на переменную существует ссылка в другом выражении. Дополнительные сведения см. в описании функции VAR.

Новые функции DAX

В этом выпуске в DAX добавлено более&50; новых функций, призванных ускорить вычисления и улучшить визуализации в Power BI. Дополнительные сведения см. в разделе Новые функции DAX.

Сохранение неполных мер

Теперь неполные меры DAX можно сохранять непосредственно в проекте табличной модели 1200 и выбирать их повторно для продолжения работы.

Дополнительные улучшения DAX

  • Вычисление непустых значений: уменьшает число сканирований для непустых значений.
  • Слияние мер: несколько мер из одной таблицы можно объединить в единую подсистему хранилища — запрос.
  • Группировка наборов: при запросе мер с различной гранулярностью (Всего/Год/Месяц) отправляется одиночный запрос на самом нижнем запрошенном уровне, а остальные гранулярности определяют, исходя из этого нижнего уровня.
  • Исключение избыточных соединений: единый запрос к подсистеме хранилища возвращает и столбцы, и значения измерений.
  • Строгая оценка IF/SWITCH: ветвь с ложным условием больше не вызывает запросы к подсистеме хранилища. Ранее ветви легко оценивались, но впоследствии результаты такой оценки нигде не учитывались.

разработчик.

Пространство имен Microsoft.AnalysisServices.Tabular для программирования табличных моделей 1200 в AMO

Управляющие объекты службы Analysis Services (AMO) были обновлены и теперь содержат новое табличное пространство имен для управления экземпляром служб Analysis Services SQL Server 2016, находящимся в табличном режиме, а также предоставляют язык определения данных для создания или изменения табличных моделей 1200 программным способом. Сведения об API см. в разделе Microsoft.AnalysisServices.Tabular .

Обновления управляющих объектов служб Analysis Services (AMO)

Объекты AMO служб Analysis Services были перефакторированы для включения второй сборки, Microsoft.AnalysisServices.Core.dll. Новая сборка позволяет отделить общие классы, такие как Server, Database и Role, которые имеют широкое применение в службах Analysis Services независимо от режима сервера. Ранее эти классы были частью исходной сборки Microsoft.AnalysisServices. Их перенос в новую сборку создает условия для будущих расширений AMO с четкой дифференциацией универсальных и контекстно-зависимых API. Новые сборки не затрагивают существующие приложения. Однако если вы по какой-либо причине хотите перестроить приложения с помощью новой сборки AMO, обязательно добавьте ссылку на Microsoft.AnalysisServices.Core. Аналогично сценарии PowerShell для операций загрузки и вызовов в AMO теперь должны загружать Microsoft.AnalysisServices.Core.dll. Обязательно обновите все скрипты.

Редактор JSON для BIM-файлов

Теперь в представлении кода в Visual Studio 2015 доступно отображение BIM-файлов в формате JSON для табличных моделей 1200. Способ отображения BIM-файла — в формате JSON во встроенном редакторе JSON или в виде простого текста — определяется версией Visual Studio.

Чтобы использовать редактор JSON с возможностью разворачивания и сворачивания разделов модели, потребуются SQL Server Data Tools последней версии и Visual Studio 2015 (любая версия, включая бесплатный выпуск Community). Для всех остальных версий SSDT или Visual Studio BIM-файл отображается в формате JSON в виде простого текста. Как минимум пустая модель будет содержать следующий код JSON:

  {  
    "name": "SemanticModel",
    "id": "SemanticModel",
    "compatibilityLevel": 1200,
    "readWriteMode": "readWrite",
    "model": {}
  }  

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

Избегайте прямого редактирования JSON. Это может привести к повреждению модели.

Новые элементы в схеме MS-CSDLBI 2.0

В сложный тип TProperty , определенный в схеме [MS-CSDLBI] 2.0, были добавлены приведенные далее элементы.

Элемент Определение
DefaultValue Свойство, которое указывает значение, используемое при вычислении запроса. Свойство DefaultValue является необязательным, но автоматически выбирается в случае, если невозможно выполнить статистическую обработку значений из элемента.
Статистика Набор статистических данных из базовых данных, связанных со столбцом. Эти статистические данные определяются с помощью сложного типа TPropertyStatistics и предоставляются, только если их создание не требует интенсивных вычислений, как описано в разделе 2.1.13.5 документа Conceptual Schema Definition File Format with Business Intelligence Annotations.

DirectQuery

Новая реализация DirectQuery

В этом выпуске значительно усовершенствован DirectQuery для табличных моделей 1200. Ниже приведена сводная информация о вариантах.

  • DirectQuery создает более простые запросы, которые обеспечивают более высокую производительность.
  • Дополнительный контроль над определением примеров наборов данных, используемых для проектирования и тестирования модели.
  • Теперь безопасность на уровне строк (RLS) поддерживается и для табличных моделей 1200 в режиме DirectQuery. Ранее наличие RLS не позволяло клиентам развертывать табличную модель в режиме DirectQuery.
  • Вычисляемые столбцы теперь поддерживаются и для табличных моделей 1200 в режиме DirectQuery. Ранее наличие вычисляемых столбцов не позволяло клиентам развертывать табличную модель в режиме DirectQuery.
  • Оптимизация производительности, в т. ч. исключение избыточных соединений для VertiPaq и DirectQuery.

Новые источники данных для режима DirectQuery

Источники данных, поддерживаемые для табличных моделей 1200 в режиме DirectQuery, теперь включают Oracle, Teradata и Платформу Microsoft Analytics (прежнее название — Parallel Data Warehouse). Дополнительные сведения см. в разделе Режим DirectQuery.

Устаревшие функции в SSAS 2016

Следующие функции являются устаревшими в этом выпуске:

Режим или категория Компонент
Многомерная Удаленные секции
Многомерная Удаленные связанные группы мер
Многомерная Многомерная обратная запись
Многомерная Связанные измерения
Многомерная Уведомления о таблицах SQL Server для упреждающего кэширования.
В качестве замены можно использовать опрос для упреждающего кэширования.
См. статьи Упреждающее кэширование (измерения) и Упреждающее кэширование (секции).
Многомерная Кубы сеансов. Замены нет.
Многомерная Локальные кубы. Замены нет.
Таблица Уровни совместимости 1100 и 1103 табличной модели не будут поддерживаться в будущем выпуске. Замена заключается в настройке моделей на уровне совместимости 1200 или выше, преобразовав определения моделей в табличные метаданные. См. раздел Compatibility Level for Tabular models in Analysis Services.
Инструменты Приложение SQL Server Profiler для перехвата трассировки

В качестве замены можно использовать профилировщик расширенных событий, встроенный в SQL Server Management Studio.
См. раздел Monitor Analysis Services with SQL Server Extended Events.
Инструменты Воспроизведение трассировки с помощью приложения SQL Server Profiler
Замена. Замены нет.
Объекты управления трассировкой и интерфейсы API трассировки Объекты Microsoft.AnalysisServices.Trace (содержат интерфейсы API для объектов трассировки и воспроизведения Analysis Services). Замена состоит из нескольких частей:

— Конфигурация трассировки: Microsoft.SqlServer.Management.XEvent
— Чтение трассировки: Microsoft.SqlServer.XEvent.Linq
— Воспроизведение трассировки: нет

Неподдерживаемые функции в SSAS 2016

В этом выпуске не реализованы следующие функции:

Компонент Замена или решение
CalculationPassValue (многомерные выражения) Нет. Эта функция устарела в SQL Server 2005.
CalculationCurrentPass (многомерные выражения) Нет. Эта функция устарела в SQL Server 2005.
Подсказка оптимизатора запросов NON_EMPTY_BEHAVIOR Нет. Эта функция устарела в SQL Server 2008.
Сборки COM Нет. Эта функция устарела в SQL Server 2008.
Внутреннее свойство ячейки CELL_EVALUATION_LIST Нет. Эта функция устарела в SQL Server 2005.

Критические изменения в SSAS 2016

Обновление версии .NET 4.0

Клиентские библиотеки объектов AMO, ADOMD.NET и табличной объектной модели (TOM) служб Analysis Services теперь предназначены для среды выполнения .NET 4.0. Это может быть критическим изменением для приложений, ориентированных на платформу .NET 3.5. Приложения, использующие более новые версии этих сборок, теперь должны ориентироваться на платформу .NET 4.0 или более поздней версии.

Обновление версии объектов AMO

Этот выпуск является обновлением версии для управляющих объектов Analysis Services (AMO) и является критическим изменением при определенных обстоятельствах. Существующий код и сценарии, которые вызывают объекты AMO, продолжают работать как прежде, если обновление произведено из предыдущей версии. Однако если вам нужно выполнить перекомпиляция приложения и вы используете экземпляр служб Analysis Services SQL Server 2016, необходимо добавить следующее пространство имен, чтобы сделать код или скрипт функциональным:

using Microsoft.AnalysisServices;  
using Microsoft.AnalysisServices.Core;  

Если в коде делается ссылка на сборку Microsoft.AnalysisServices, необходимо использовать пространство имен Microsoft.AnalysisServices.Core . Объекты, которые ранее содержались только в пространстве имен Microsoft.AnalysisServices и одинаково используются в табличных и многомерных сценариях, в этом выпуске перемещены в основное пространство имен. Например, API, связанные с сервером, перемещены в основное пространство имен.

Несмотря на множество доступных пространств имен, оба вида существуют в одной сборке (Microsoft.AnalysisServices.dll).

Изменения XEvent DISCOVER

Чтобы улучшить поддержку потоковой передачи XEvent DISCOVER в SSMS для служб Analysis Services SQL Server 2016, DISCOVER_XEVENT_TRACE_DEFINITION заменяется следующими трассировками XEvent:

  • DISCOVER_XEVENT_PACKAGES

  • DISCOVER_XEVENT_OBJECT

  • DISCOVER_XEVENT_OBJECT_COLUMNS

  • DISCOVER_XEVENT_SESSION_TARGETS

Изменения в поведении в SSAS 2016

Службы Analysis Services в режиме интеграции с SharePoint

Запуск мастера настройки Power Pivot в виде задачи после установки больше не требуется. Это справедливо для всех поддерживаемых версий SharePoint, которые загружают модели из текущей SQL Server 2016 Analysis Services.

Режим DirectQuery в табличных моделях

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

DirectQuery выступает в качестве режима доступа к данным в последних нескольких выпусках. В SQL Server 2016 Analysis Services реализация была немного изменена, предполагая, что табличная модель находится на уровне совместимости 1200 или выше. Режим DirectQuery имеет меньше ограничений, чем раньше. Кроме того, изменены свойства базы данных.

При использовании DirectQuery для существующей табличной модели ее можно сохранить на текущем уровне совместимости (1100 или 1103) и работать далее в том же режиме и на том же уровне. Кроме того, вы можете выполнить обновление до версии 1200 или выше, чтобы воспользоваться усовершенствованиями DirectQuery.

Обновление модели DirectQuery на месте не выполняется, так как параметры более старых уровней совместимости не имеют точных аналогов в новых уровнях совместимости 1200 и более поздних версий. Если у вас есть табличная модель, которая выполняется в режиме DirectQuery, ее следует открыть в SQL Server Data Tools, отключить DirectQuery, установить для свойства Уровень совместимости значение 1200 или выше, а затем перенастроить свойства DirectQuery. Дополнительные сведения см. в разделе Режим DirectQuery .

Определения

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

Неподдерживаемая функция была нерекомендуемой в более ранней версии. Он может по-прежнему включаться в текущий выпуск, но больше не поддерживается. Неподдерживаемые функции могут быть полностью удалены в указанном или будущем выпуске.

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

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