Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: SQL Server Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
В этой статье приведены новые функции, улучшения, устаревшие и нерекомендуемые функции, а также поведение и критические изменения в последних версиях служб SQL Server Analysis Services (SSAS).
SQL Server 2025 Analysis Services
Улучшения производительности
Модели с группами вычислений и строками форматирования в Excel
Мы улучшили производительность запросов многомерных выражений в моделях с помощью групп вычислений и строк форматирования, чтобы уменьшить использование памяти и повысить скорость реагирования. Последние изменения значительно повышают производительность и надежность операций в Анализе в Excel на моделях, которые включают одно или оба из следующих:
Строки динамического формата для измерений
Вычисляемые элементы со строками форматирования
Дополнительные сведения см. в строках динамического формата
Параллельное выполнение запросов для DirectQuery
Улучшенная параллелизм в режиме DirectQuery позволяет ускорить время отклика для сложных запросов. Основная идея заключается в том, чтобы повысить производительность запросов путем параллелизации нескольких запросов к источнику данных для одного запроса DAX. Эта параллелизация запросов снижает влияние задержек источника данных и задержки сети на производительность запросов. Дополнительные сведения см. в этом блоге.
Горизонтальное слияние
SSAS 2025 включает последнюю версию Horizontal Fusion, оптимизации производительности запросов, которая снижает количество запросов SQL, генерируемых DAX, повышая эффективность DirectQuery. Дополнительные сведения см. в разделе "Объявление о горизонтальном слиянии".
Функции и возможности DAX
Визуальные вычисления
Сегодня способ написания DAX меняется с введением визуальных вычислений. Визуальные вычисления — это вычисления DAX, определенные и выполняемые непосредственно на визуальном элементе. Визуальное вычисление может ссылаться на любые данные в пределах визуального элемента, включая столбцы, метрики или другие визуальные вычисления. Этот подход устраняет сложность семантической модели и упрощает процесс написания DAX. Визуальные вычисления можно использовать для выполнения общих бизнес-вычислений, таких как суммы выполнения или скользящие средние значения. Дополнительные сведения о включении и использовании визуальных вычислений см. в обзоре визуальных вычислений.
Поведение фильтра значений
Мы представляем новый параметр для управления поведением фильтра значений. Включив параметр "Независимые фильтры значений", пользователи могут запретить автоматическое объединение нескольких фильтров в одной таблице в один объединенный фильтр. Это изменение обеспечивает большую гибкость, что позволяет более точно и независимо фильтровать для удовлетворения конкретных потребностей моделирования и повышения точности и управления запросами данных. Чтобы задать это свойство для SSAS, можно использовать табличную объектную модель или TMSL на основе свойства ValueFilterBehavior . Дополнительные сведения см. в статье о поведении фильтра значений.
Выражения выбора для групп вычислений
Выражения выбора позволяют точно настроить управление поведением вычислений при выполнении определенных условий. Выражения выбора вводят дополнительную логику для обработки случаев, когда выбрано несколько элементов вычисления или если в группе вычислений нет определенного выбора. Дополнительные сведения см. в разделе "Группы вычислений".
Улучшения функций DAX
SSAS 2025 включает поддержку нескольких новых функций DAX и улучшений, включая:
LINEST и LINESTX: эти две функции выполняют линейную регрессию с помощью метода "Наименьшие квадраты", чтобы вычислить прямую линию, которая лучше всего соответствует заданным данным и возвращает таблицу, описывающую данную строку. Эти функции особенно полезны при прогнозировании неизвестных значений (Y) при указании известных значений (X). Дополнительные сведения см. в следующем разделе: функция LINEST DAX и функция LINESTX DAX.
Функции INFO: Существующие динамические административные представления TMSCHEMA теперь доступны в качестве нового семейства функций DAX, что позволяет запрашивать метаданные о семантических моделях непосредственно в DAX, предлагая интеграцию с другими функциями DAX для расширенной диагностики и анализа. Дополнительные сведения см. в статье "Сведения о функциях DAX".
APPROXIMATEDISTINCTCOUNT: эта функция в настоящее время доступна для режима DirectQuery и возвращает предполагаемое количество уникальных значений в столбце путем вызова соответствующей операции агрегирования в источнике данных, оптимизированной для производительности запросов. Дополнительные сведения см. в функции Approximatedistinctcount DAX, в которой перечислены поддерживаемые источники данных.
Функции окна. Эта функция извлекает срез результатов с помощью абсолютного или относительного расположения. Функция WINDOW упрощает выполнение вычислений, таких как добавление общей суммы, скользящей средней или аналогичных вычислений, которые зависят от выбора диапазона значений. Он также поставляется с двумя вспомогательными функциями, называемыми ORDERBY и PARTITIONBY. Дополнительные сведения см. в разделе "Окно DAX".
MINX/MAXX: Мы добавили необязательный параметр variant в функции MINX и MAXX DAX. Традиционно эти функции игнорируют текстовые и логические значения, если существуют варианты или смешанные типы данных, такие как текст и числовые значения. Теперь с новым необязательным параметром варианта, установленным значение TRUE, функции рассматривают текстовые значения. Дополнительные сведения см. в функции MINX DAX и функции MAXX DAX.
Дополнительные функции
Обновления клиентской библиотеки
Клиентам рекомендуется обновить до последних библиотек служб Analysis Services, чтобы получить преимущества от повышения производительности, надежности и функциональности, таких как поддержка двоичного XML-кода, сериализация TMDL и многое другое. В частности, мы переключили обмен данными на основе XML с обычного текста на двоичный XML и включили сжатие для клиентских библиотек .NET. Дополнительные сведения см. в блоге по улучшению производительности взаимодействия средств на основе XMLa . Вы также можете найти последние версии клиентских библиотек на странице скачивания клиентских библиотек Служб Analysis Services.
Улучшения обработки символов Юникода
SSAS теперь поддерживает обновленные стандарты Юникода, обеспечивая поддержку суррогатных пар Юникода для стандартов символов, таких как стандарт китайского правительства GB18030 в DAX.
Метрики выполнения для диагностики
Теперь метрики выполнения предоставляются с помощью трассировок XEvents и Profiler, что позволяет клиентам более эффективно анализировать производительность запросов.
Устаревшие функции и критические изменения в SSAS 2025
Excel PowerPivot для SharePoint устарел
Мы удалили режим Excel PowerPivot для SharePoint из установщика. Эта функция устарела в предыдущих выпусках и больше не поддерживается.
Обновление сборки клиента SQL
Теперь служба SSAS 2025 использует более новую клиентную библиотеку SQL. Клиентам может потребоваться обновить определения модели, чтобы отразить новое имя поставщика (Microsoft.Data.SqlClient).
SQL Server 2022 Analysis Services
Накопительное обновление 1 (CU1)
Обновление шифрования
Это обновление включает усовершенствование алгоритма шифрования операций записи схемы. Это улучшение может потребовать обновления табличных и многомерных баз данных моделей, чтобы обеспечить надлежащее шифрование. Дополнительные сведения см. в разделе "Обновление шифрования".
Общедоступная версия (GA)
Горизонтальное слияние
В этой версии описывается горизонтальное слияние, оптимизация плана выполнения запросов, направленная на сокращение количества запросов источника данных, необходимых для создания и возврата результатов. Несколько небольших запросов источника данных объединяются в более крупный запрос источника данных. Меньше запросов к источнику данных означает меньше круговых путей и меньше дорогостоящих проверок по большим источникам данных, что приводит к значительному повышению производительности DAX и снижению спроса на обработку в источнике данных. Запросы DAX выполняются быстрее с помощью горизонтального слияния, особенно в режиме DirectQuery. Кроме того, масштабируемость также увеличивается.
Планы параллельного выполнения для DirectQuery
Это улучшение позволяет обработчику служб Analysis Services анализировать запросы DAX к источнику данных DirectQuery и определять независимые операции подсистемы хранения. Затем подсистема может выполнять эти операции с источником данных параллельно. Параллельно выполняя операции, подсистема служб Analysis Services может повысить производительность запросов, используя преимущества масштабируемости больших источников данных, которые могут обеспечить. Чтобы убедиться, что обработка запросов не перезагружает источник данных, используйте параметр свойства MaxParallelism , чтобы указать фиксированное количество потоков, которые можно использовать для параллельных операций.
Поддержка семантических моделей Power BI DirectQuery
Эта версия содержит поддержку моделей Power BI с подключениями DirectQuery к моделям SQL Server 2022 Analysis Services. Разработчики моделей данных и авторы отчетов, начиная с мая 2022 года, могут объединять другие импортированные данные и данные из прямого запроса из моделей Power BI, Azure Analysis Services и SSAS 2022.
Дополнительные сведения см. в статье Использование DirectQuery для семантических моделей и служб Analysis Services | Документация по Power BI.
Производительность запросов MDX
Впервые представленный в Power BI и теперь в SSAS 2022, MDX Fusion включает оптимизацию ядра формул (FE) с уменьшением количества запросов подсистемы хранения данных (SE) на каждый запрос MDX. Клиентские приложения, использующие многомерные выражения (MDX) для запроса данных модели или набора данных, таких как Microsoft Excel, будут работать с улучшенной производительностью запросов. Общие шаблоны запросов многомерных выражений теперь требуют меньше запросов SE, тогда как ранее требовалось много таких запросов для поддержки различной степени детализации. Меньше запросов SE означает меньше затрат на сканирование больших моделей, что приводит к значительному повышению производительности, особенно при подключении к табличным моделям в режиме прямого запроса.
Дополнительные сведения см. в статье Об улучшении производительности запросов многомерных выражений в Power BI | Блог Microsoft Power BI.
Управление ресурсами
Эта версия включает улучшенную точность свойства памяти сервера QueryMemoryLimit и свойства строки подключения DbpropMsmdRequestMemoryLimit.
Впервые появилось в SSAS 2019, свойство памяти сервера QueryMemoryLimit применяется только к пулам памяти, где во время обработки запросов создаются промежуточные результаты запроса DAX. Теперь в SSAS 2022 он также применяется к запросам MDX (многомерные выражения), что позволяет эффективно охватить все запросы. Вы можете лучше контролировать дорогостоящие запросы, которые приводят к значительным затратам на обработку данных. Если запрос попадает в указанное ограничение, подсистема отменяет запрос и возвращает ошибку вызывающей стороне, что снижает влияние на других одновременных пользователей.
Клиентские приложения могут дополнительно сократить объем памяти, разрешенный для каждого запроса, указав свойство строки подключения 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
В этой версии нет изменений в поведении .
SQL Server 2019 Analysis Services
SQL Server 2019 Analysis Services CU 5
Накопительные обновления для служб SQL Server Analysis Services включены в накопительные обновления SQL Server. Дополнительные сведения и скачивание последнего накопительного обновления см. в статье SQL Server 2019 с последним накопительным обновлением. Страницы накопительного обновления базы знаний суммируют известные проблемы, улучшения и исправления для всех функций SQL Server, включая SSAS. Дополнительные сведения об основных обновлениях компонентов для SSAS описаны здесь.
SuperDAX для многомерных моделей (SuperDAXMD)
Благодаря CU5 клиенты на основе 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 для многомерных моделей.
Общедоступная версия служб Analysis Services в SQL Server 2019
Уровень совместимости табличной модели
В этом выпуске представлен уровень совместимости 1500 для табличных моделей.
Чередование запросов
Чередование запросов — это табличный режим системной конфигурации, который может уменьшить время отклика запросов пользователей в сценариях с высоким уровнем параллелизма. Чередование запросов с уклоном в сторону коротких позволяет одновременно выполняемым запросам совместно использовать ресурсы ЦП. Дополнительные сведения см. в статье о чередовании запросов.
Группы вычисления в табличных моделях
Группы вычисления могут значительно сократить количество избыточных мер за счет группировки общих выражений мер в соответствии с вычисляемыми элементами. Группы вычислений отображаются в клиентах отчетов в виде таблицы с одним столбцом. Каждое значение в столбце представляет многократно используемые вычисления или элемент вычисления, которые можно применить к любому из мер. Группа вычислений может иметь любое количество элементов вычисления. Каждый элемент вычисления определяется выражением DAX. Дополнительные сведения см. в разделе "Группы вычислений".
Параметр управления для обновлений кэша Power BI
Параметр свойства ClientCacheRefreshPolicy теперь поддерживается в SSAS 2019 и более поздних версиях. Этот параметр свойства уже доступен для Служб Azure Analysis Services. Служба Power BI кэширует данные плитки панели мониторинга и данные отчета для начальной загрузки отчета Live Connect, что приводит к чрезмерному количеству запросов кэша, отправляемых в подсистему, и в крайних случаях перегрузка сервера. Свойство ClientCacheRefreshPolicy позволяет переопределить это поведение на уровне сервера. Дополнительные сведения см. в разделе Общие свойства.
Интерактивное подключение
Эта функция позволяет подключать табличную модель в режиме онлайн. Такое подключение можно использовать для синхронизации реплик только для чтения в локальных средах масштабирования запросов. Чтобы выполнить операцию онлайн-присоединения, используйте параметр AllowOverwrite команды XMLA Attach.
Для этой операции может потребоваться двойная память модели , чтобы сохранить старую версию в сети при загрузке новой версии.
Типичным шаблоном использования может быть следующее:
DB1 (версия 1) уже подключена на сервере только для чтения B.
DB1 (версия 2) обрабатывается на сервере записи A.
DB1 (версия 2) отсоединяется и помещается в папку, доступную серверу B (через общую папку или с помощью robocopy и т. д.).
Команда Attach с AllowOverwrite=True выполняется на сервере B с новым расположением DB1 (версия 2).
Без этой функции администраторам сначала требуется отсоединить базу данных, а затем присоединить новую версию базы данных. Это приводит к простою, когда база данных недоступна для пользователей, и запросы к ней завершаются ошибкой.
При указании этого нового флага версия 1 базы данных удаляется атомарно без простоя в той же транзакции. Однако это происходит за счет одновременной загрузки обеих баз данных в память.
Связи "многие ко многим" в табличных моделях
Улучшение позволяет устанавливать отношения типа "многие ко многим" между таблицами, где оба столбца являются неуникальными. Связь может быть определена между измерением и таблицей фактов с степенью детализации выше ключевого столбца измерения. Это позволяет не нормализовать таблицы измерений и улучшить взаимодействие с пользователем, так как результирующая модель имеет меньшее количество таблиц с логически сгруппированных столбцов.
Для связей "многие ко многим" требуются модели на уровне совместимости 1500 и выше. Связи "многие ко многим" можно создавать с помощью Visual Studio 2019 с проектами Служб Analysis Services с обновлением 2.9.2 и более поздними версиями, API табличной объектной модели (TOM), языка сценариев табличных моделей (TMSL) и инструмента с открытым исходным кодом Tabular Editor.
Параметры памяти для управления ресурсами
Следующие параметры свойств обеспечивают улучшенную систему управления ресурсами:
- Memory\QueryMemoryLimit — это свойство памяти можно использовать для ограничения пулей памяти, созданных запросами DAX, отправленными в модель.
- DbpropMsmdRequestMemoryLimit — это свойство XMLA можно использовать для переопределения значения свойства сервера Memory\QueryMemoryLimit для подключения.
- OLAP\Query\RowsetSerializationLimit . Это свойство сервера ограничивает количество строк, возвращаемых в наборе строк, что позволяет защитить ресурсы сервера от широкого использования экспорта данных. Это свойство применяется как к запросам DAX, так и к MDX запросам.
Эти свойства можно задать с помощью последней версии 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. В жизненном цикле продуктов Служб анализа данных эти режимы зрелы. В этом выпуске нет новых функций для любого из этих режимов. Однако включены исправления ошибок и улучшения производительности.
Описанные здесь функции включены в службы SQL Server 2017 Analysis Services. Но чтобы воспользоваться ими, необходимо также использовать последние версии 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 при создании проектов табличной модели.
Чтобы обновить существующую табличную модель в Visual Studio, в обозревателе решений щелкните правой кнопкой мыши Model.bim, а затем в свойствах задайте для свойства уровня совместимости значение SQL Server 2017 (1400).
Важно помнить, что после обновления существующей модели до 1400 вы не сможете перейти на более раннюю версию. Не забудьте сохранить резервную копию базы данных модели 1200.
Современный интерфейс получения данных
При импорте данных из источников данных в табличные модели SSDT представляет современный интерфейс получения данных для моделей на уровне совместимости 1400. Эта новая функция основана на аналогичных функциях в Power BI Desktop и Microsoft Excel 2016. Современный интерфейс «Get Data» предоставляет обширные возможности по преобразованию и объединению данных с помощью построителя запросов и выражений M.
Современный интерфейс получения данных обеспечивает поддержку широкого спектра источников данных. В будущем обновления будут включать поддержку еще большего количества возможностей.
Мощный и интуитивно понятный пользовательский интерфейс упрощает выбор данных и использование возможностей их преобразования и объединения.
Современные возможности получения данных и 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"
}
Неоднородные иерархии
В табличных моделях можно моделировать иерархии родительско-дочерних элементов. Иерархии с разными числами уровней часто называются неровными иерархиями. По умолчанию рваные иерархии отображаются с пустыми значениями для уровней ниже нижнего дочернего элемента. Ниже приведен пример разорванной иерархии в организационной диаграмме.
В этом выпуске представлено свойство Hide Members . Свойство Hide Members можно задать для иерархии значение "Скрыть пустые элементы".
Замечание
Пустые элементы в модели представлены пустым значением DAX, а не пустой строкой.
Если задано значение "Скрыть пустые члены", а модель развернута, проще читать версию иерархии в таких клиентах отчетов, как Excel.
Строки с деталями
Теперь можно определить настраиваемый набор строк, который способствует значению показателя. Строки сведений аналогичны функции детализации, используемой по умолчанию в многомерных моделях. Это позволяет конечным пользователям более подробно просматривать сведения, чем агрегированный уровень.
В следующей сводной таблице показаны итоговые продажи в Интернете по годам из примера табличной модели Adventure Works. Щелкните правой кнопкой мыши ячейку с агрегированным значением из меры и нажмите кнопку "Показать сведения ", чтобы просмотреть строки сведений.
По умолчанию отображаются связанные данные в таблице "Продажи в Интернете". Это ограниченное поведение часто не имеет значения для пользователя, так как таблица может не содержать необходимых столбцов для отображения полезных сведений, таких как имя клиента и сведения о заказе. С помощью строк сведений вы можете указать свойство выражения "Подробные строки" для мер.
Свойство "Подробное выражение строк" для мер
Свойство "Выражение подробных строк" для мер позволяет авторам модели настраивать столбцы и строки, возвращаемые конечным пользователем.
Функция 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:
Свойство выражения "Подробные строки" по умолчанию для таблиц
Помимо мер, таблицы также имеют свойство для определения выражения детализированных строк. Свойство "Подробные строки по умолчанию" выступает в качестве базового значения для всех мер в таблице. Меры, которые не имеют собственного выражения, наследуют выражение из таблицы и отображают набор строк, определенный для таблицы. Это позволяет повторно использовать выражения, а новые меры, добавленные в таблицу позже, автоматически наследуют выражение.
Функция DETAILROWS DAX
В этом выпуске включена новая DETAILROWS
функция DAX, которая возвращает множество строк, определяемое выражением детализации строк. Он работает аналогично инструкции 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);
Динамические управленческие представления (DMVs)
Динамические административные представления — это запросы в SQL Server Profiler, которые возвращают сведения о локальных операциях сервера и работоспособности сервера. Этот релиз включает улучшения динамических представлений управления (DMV) для табличных моделей на уровнях совместимости 1200 и 1400.
DISCOVER_CALC_DEPENDENCY Теперь работает с табличными моделями 1200 и более поздних версий. Табличные модели 1400 и выше отображают зависимости между секциями M, выражениями M и структурированными источниками данных. Дополнительные сведения см. в блоге служб Analysis Services.
MDSCHEMA_MEASUREGROUP_DIMENSIONS Улучшения внесены для этого динамического управляемого представления, которое используется различными клиентскими средствами, чтобы показывать измерение размерности. Например, функция "Изучение" в сводных таблицах Excel позволяет пользователю выполнять перекрестную детализацию по измерениям, связанным с выбранными мерами. Эта версия исправляет столбцы кратности, которые ранее показывали неверные значения.
Улучшения DAX
Одной из важнейших новых функциональных возможностей DAX является новый оператор IN / функция 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
оператор ссылается на таблицу с одним столбцом с 3 строками; по одному для каждого из указанных цветов. Обратите внимание, что синтаксис конструктора таблиц использует фигурные скобки.
Оператор 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. См. Мониторинг служб Analysis Services с помощью расширенных событий SQL Server. |
Инструменты | Профилировщик сервера для повторного воспроизведения трассировки Замена. Замена отсутствует. |
Объекты управления трассировки и 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 для баз данных табличной модели.
Службы SQL Server 2016 Analysis Services с пакетом обновления 1 (SP1)
Скачивание SQL Server 2016 с пакетом обновления 1 (SP1)
Службы анализа SQL Server 2016 с пакетом обновления 1 (SP1) обеспечивают улучшенную производительность и масштабируемость благодаря осознанию неоднородного доступа к памяти (NUMA) и оптимизированному выделению памяти на основе потоковых блоков Intel (Intel TBB). Эта новая функция помогает снизить общую стоимость владения (TCO), поддерживая больше пользователей на меньшем, более мощных корпоративных серверах.
В частности, Службы анализа SQL Server 2016 SP1 включают улучшения в следующих ключевых областях:
- Учет NUMA — для улучшения поддержки NUMA встроенная в память подсистема (VertiPaq) внутри службы Analysis Services теперь поддерживает отдельную очередь заданий на каждом узле NUMA. Это гарантирует выполнение заданий сканирования сегментов на том же узле, где память выделена для данных сегмента. Обратите внимание, что осведомленность NUMA включена только по умолчанию в системах с по крайней мере четырьмя узлами NUMA. В системах с двумя узлами затраты на доступ к удаленной выделенной памяти обычно не оправдывают издержки на управление спецификой NUMA.
- Выделение памяти — службы Analysis Services были ускорены с помощью Intel Threading Building Blocks, масштабируемого аллокатора, предоставляющего отдельные пулы памяти для каждого ядра. По мере увеличения числа ядер система может масштабироваться почти линейно.
- Фрагментация кучи — масштабируемый аллокатор на основе Intel TBB также помогает снизить проблемы с производительностью из-за фрагментации кучи, как это происходит в куче Windows.
Тестирование производительности и масштабируемости показали значительный рост пропускной способности запросов при выполнении служб 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 Analysis Services 2016.
Переводы
Теперь можно хранить преобразованные метаданные в табличной модели 1200. Метаданные в модели включают поля для культуры, переведённых подписей и переведённых описаний. Чтобы добавить переводы, используйте команду"Перевод моделей>" в SQL Server Data Tools. См. раздел "Переводы в табличных моделях" (службы Analysis Services) для получения дополнительной информации.
Вставленные таблицы
Теперь можно обновить табличную модель 1100 или 1103 до 1200, если модель содержит вставленные таблицы. Рекомендуется использовать sql Server Data Tools. В SSDT установите значение CompatibilityLevel равным 1200, а затем разверните его в экземпляре SQL Server 2017 служб SQL Server Analysis Services. Дополнительные сведения см. в разделе "Уровень совместимости" для табличных моделей в службах Analysis Services .
Вычисляемые таблицы в SSDT
Вычисляемая таблица — это структура, относящаяся только к модели, основанная на выражении DAX или запросе в SSDT. При развертывании в базе данных вычисляемая таблица неотличима от обычных таблиц.
Существует несколько способов использования вычисляемых таблиц, включая создание новых таблиц для представления существующей таблицы в определенной роли. Классический пример — это таблица date, которая работает в нескольких контекстах (дата заказа, дата доставки и т. д.). Создав вычисляемую таблицу для указанной роли, теперь можно активировать связь таблицы для упрощения запросов или взаимодействия с данными с помощью вычисляемой таблицы. Другое использование вычисляемых таблиц заключается в том, чтобы объединить части существующих таблиц в совершенно новую таблицу, которая существует только в модели. См. статью "Создание вычисляемой таблицы", чтобы узнать больше.
Исправление формул
При корректировке формул в табличной модели 1200 SSDT автоматически обновляет меры, которые ссылаются на переименованные столбцы или таблицы.
Поддержка диспетчера конфигураций Visual Studio
Для поддержки нескольких сред, таких как тестовые и предварительные среды, Visual Studio позволяет разработчикам создавать несколько конфигураций проектов с помощью диспетчера конфигураций. Многомерные модели уже используют это, но табличные модели этого не делают. В этом выпуске вы теперь можете использовать диспетчер конфигураций для развертывания на различных серверах.
Управление экземплярами
Управление табличными моделями "Tabular 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
В последней версии SQL Server Management Studio (SSMS) скрипт теперь включен для команд базы данных, включая создание, изменение, удаление, резервное копирование, восстановление, присоединение, отключение. Выходные данные — это язык скриптов табличной модели (TMSL) в ФОРМАТЕ JSON. Дополнительные сведения см. в справочнике по языку сценариев табличных моделей (TMSL ).
Выполнение задачи DDL службам Analysis Services
Задача выполнения DDL в службах Analysis Services теперь также принимает команды скриптового языка табличных моделей (TMSL).
Командлет PowerShell SSAS
Командлет PowerShell SSAS Invoke-ASCmd теперь принимает команды языка сценариев табличных моделей (TMSL). Другие командлеты PowerShell SSAS могут быть обновлены в будущем выпуске, чтобы использовать новые табличные метаданные (исключения будут указаны в примечаниях к выпуску). См. справочник по PowerShell для служб Analysis Services для получения более подробной информации.
Язык скриптов табличных моделей (TMSL), поддерживаемый в SSMS
С помощью последней версии SSMS теперь можно создавать скрипты для автоматизации большинства административных задач для табличных моделей 1200. В настоящее время можно выполнить скрипты: процесс на любом уровне, а также CREATE, ALTER, DELETE на уровне базы данных.
Функционально TMSL эквивалентен расширению XMLA ASSL, которое предоставляет определения многомерных объектов, за исключением того, что TMSL использует собственные дескрипторы, такие как модель, таблица и связь для описания табличных метаданных. Дополнительные сведения о схеме см. в справочнике по языку сценариев табличных моделей (TMSL ).
Созданный скрипт на основе JSON для табличной модели может выглядеть следующим образом:
{
"create": {
"database": {
"name": "AdventureWorksTabular1200",
"id": "AdventureWorksTabular1200",
"compatibilityLevel": 1200,
"readWriteMode": "readWrite",
"model": {}
}
}
}
Полезная нагрузка — это документ JSON, который может быть минимальным, как в приведённом выше примере, или представлен полным набором определений объектов. Справочник по языку сценариев табличной модели (TMSL) описывает синтаксис.
На уровне базы данных команды CREATE, ALTER и DELETE будут выводить скрипт TMSL в знакомом окне XMLA. Другие команды, такие как Process, могут быть также прописаны в скриптах в этом выпуске. Поддержка скрипта для многих других действий может быть добавлена в будущий выпуск.
Команды, доступные для сценариев | Описание |
---|---|
создать | Добавляет базу данных, подключение или секцию. Эквивалент ASSL — CREATE. |
createOrReplace | Обновляет существующее определение объекта (база данных, подключение или секцию), перезаписав предыдущую версию. Эквивалент ASSL — это ALTER с параметром AllowOverwrite, установленным в true, и ObjectDefinition, установленным в ExpandFull. |
удалить | Удаляет определение объекта. Эквивалент ASSL — DELETE. |
освежать | Обрабатывает объект. Эквивалент ASSL — PROCESS. |
ДАКС
Улучшенное редактирование формул DAX
Обновления панели формул облегчают создание формул благодаря различению функций, полей и меры с помощью цветового выделения синтаксиса, предлагая интеллектуальные подсказки по функциям и полям и уведомляя, если части вашего выражения DAX содержат ошибки, с помощью волнистых линий ошибок. Он также позволяет использовать несколько строк (ALT+ВВОД) и отступ (TAB). Теперь строка формул также позволяет писать комментарии в ваших формулах, просто введите "//" и всё после этих символов на той же строке будет считаться комментарием.
Переменные DAX
Этот выпуск теперь включает поддержку переменных в DAX. Теперь переменные могут хранить результат выражения в виде именованной переменной, которая затем может быть передана в качестве аргумента другим выражениям мер. После вычисления результирующих значений для выражения переменной эти значения не изменяются, даже если переменная ссылается в другом выражении. Дополнительные сведения см. в разделе "Функция VAR".
Новые функции DAX
В этом выпуске DAX представляет более пятидесяти новых функций для поддержки более быстрых вычислений и расширенных визуализаций в Power BI. Дополнительные сведения см. в статье "Новые функции DAX".
Сохранение неполных мер
Теперь вы можете сохранить неполные меры DAX непосредственно в табличном проекте модели 1200 и вернуться к ним, когда будете готовы продолжить.
Дополнительные улучшения DAX
- Непустые вычисления уменьшают количество сканирований, необходимых для определения непустых значений.
- Measure Fusion — несколько мер из одной таблицы будут объединены в единый запрос для механизма хранилища.
- Группирование наборов. Когда запрос запрашивает меры с несколькими детализациями (итого/год/месяц), один запрос отправляется на самом низком уровне, а остальная часть детализации является производным от самого низкого уровня.
- Исключение избыточного соединения — один запрос к хранилищу возвращает как столбцы измерений, так и значения мер.
- Строгая оценка IF/SWITCH — ветвь с ложным условием больше не приведет к запросам в хранилище данных. Ранее ветви были с нетерпением оценены, но результаты отброшены позже.
разработчик.
Пространство имен Microsoft.AnalysisServices.Tabular для программируемости в формате Tabular 1200 в AMO
Объекты управления службами Analysis Services (AMO) обновляются, чтобы включить новое табличное пространство имен для управления экземпляром табличного режима служб SQL Server 2016 Analysis Services, а также предоставить язык определения данных для создания или изменения табличных моделей 1200 программным способом. Перейдите на страницу Microsoft.AnalysisServices.Tabular , чтобы ознакомиться с API.
Обновления объектов управления службами Analysis Services (AMO)
Объекты управления службами Analysis Services (AMO) были реорганизованы для включения второй сборки, Microsoft.AnalysisServices.Core.dll. Новая сборка отделяет общие классы, такие как сервер, база данных и роль, имеющие широкое приложение в службах Analysis Services независимо от режима сервера. Ранее эти классы были частью исходной сборки Microsoft.AnalysisServices. Перемещение их в новую сборку открывает путь для будущих расширений в AMO с четким разделением между универсальными и контекстными API. Существующие приложения не затрагиваются новыми сборками. Однако если вы решили перестроить приложения с помощью новой сборки AMO по какой-либо причине, обязательно добавьте ссылку на Microsoft.AnalysisServices.Core. Аналогично, скрипты PowerShell, которые загружают и обращаются к AMO, теперь должны загружать Microsoft.AnalysisServices.Core.dll. Обязательно обновите все скрипты.
Редактор JSON для файлов BIM
Представление кода в Visual Studio 2015 теперь отображает файл BIM в формате JSON для табличных моделей 1200. Версия Visual Studio определяет, отображается ли файл BIM в формате JSON с помощью встроенного редактора JSON или простого текста.
Чтобы использовать редактор 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 является необязательным, но оно автоматически выбирается, если значения из элемента не могут быть агрегированы. |
Статистика | Набор статистики из базовых данных, связанных с столбцом. Эти статистические данные определяются сложным типом TPropertyStatistics и предоставляются только в том случае, если они не требуют значительных вычислительных ресурсов для создания, как описано в разделе 2.1.13.5 документа в файле определения концептуальной схемы с аннотациями бизнес-аналитики. |
Прямой запрос
Новая реализация DirectQuery
Этот выпуск включает значительные улучшения в DirectQuery для табличных моделей 1200. Ниже приведена сводка.
- DirectQuery теперь создает более простые запросы, обеспечивающие более высокую производительность.
- Дополнительный контроль над определением примеров наборов данных, используемых для проектирования и тестирования моделей.
- Теперь безопасность на уровне строк (RLS) поддерживается для табличных моделей 1200 в режиме DirectQuery. Ранее наличие RLS не позволило развернуть табличную модель в режиме DirectQuery.
- Вычисляемые столбцы теперь поддерживаются для табличных моделей 1200 в режиме DirectQuery. Ранее наличие вычисляемых столбцов не позволило развернуть табличную модель в режиме DirectQuery.
- Оптимизация производительности включает исключение избыточных соединений для VertiPaq и DirectQuery.
Новые источники данных для режима DirectQuery
Источники данных, поддерживаемые табличными моделями 1200 в режиме DirectQuery, теперь включают Oracle, Teradata и платформу Microsoft Analytics (ранее называемую параллельным хранилищем данных). Дополнительные сведения см. в режиме DirectQuery.
Устаревшие функции в SSAS 2016
В этом выпуске устарели следующие функции:
Режим или категория | Функция |
---|---|
Многомерная | Удаленные разделы |
Многомерная | Удаленные группы связанных мер |
Многомерная | Обратная запись в измерениях |
Многомерная | Связанные измерения |
Многомерная | Уведомления о таблицах SQL Server для упреждающего кэширования. Замена — использовать опрос для упреждающего кэширования. См. Упреждающее кэширование (размеры) и Упреждающее кэширование (разделы). |
Многомерная | Кубы сеансов. Замена отсутствует. |
Многомерная | Локальные куби. Замена отсутствует. |
Табличный | Уровни совместимости табличной модели 1100 и 1103 не будут поддерживаться в будущей версии. Замена — установить модели на уровне совместимости 1200 или выше, преобразовав определения модели в табличные метаданные. См. сведения о уровне совместимости табличных моделей в службах Analysis Services. |
Инструменты | Приложение SQL Server Profiler для перехвата трассировки Замена — использовать профилировщик расширенных событий, внедренный в SQL Server Management Studio. См. Мониторинг служб Analysis Services с помощью расширенных событий SQL Server. |
Инструменты | Профилировщик сервера для повторного воспроизведения трассировки Замена. Замена отсутствует. |
Объекты управления трассировки и API трассировки | Объекты Microsoft.AnalysisServices.Trace (содержат API для объектов трассировки и воспроизведения служб Analysis Services). Замена состоит из нескольких частей: — Конфигурация трассировки: Microsoft.SqlServer.Management.XEvent — Чтение трассировки: Microsoft.SqlServer.XEvent.Linq — Воспроизведение трассировки: нет |
Устаревшие функции в SSAS 2016
В этом выпуске прекращены следующие функции:
Функция | Замена или обходное решение |
---|---|
CalculationPassValue (MDX) | Нет. Эта функция не рекомендуется использовать в SQL Server 2005. |
CalculationCurrentPass (MDX - многомерные выражения) | Нет. Эта функция не рекомендуется использовать в SQL Server 2005. |
указание оптимизатора запросов NON_EMPTY_BEHAVIOR | Нет. Эта функция не рекомендуется использовать в SQL Server 2008. |
Сборки COM | Нет. Эта функция не рекомендуется использовать в SQL Server 2008. |
CELL_EVALUATION_LIST встроенное свойство ячейки | Нет. Эта функция не рекомендуется использовать в SQL Server 2005. |
Критические изменения в SSAS 2016
Обновление версии .NET 4.0
Клиентские библиотеки служб управления службами Analysis Services (AMO), ADOMD.NET и клиентские библиотеки табличной объектной модели (TOM) теперь предназначены для среды выполнения .NET 4.0. Это может быть критическое изменение для приложений, предназначенных для .NET 3.5. Приложения, использующие более новые версии этих сборок, теперь должны быть предназначены для .NET 4.0 или более поздней версии.
Обновление версии AMO
Этот выпуск представляет собой обновление версии для объектов управления службами Analysis Services (AMO) и может стать кардинальным изменением в определенных обстоятельствах. Существующий код и скрипты, которые вызываются в AMO, будут продолжать выполняться как раньше, если вы обновляете предыдущую версию. Однако, если необходимо перекомпилировать приложение и вы используете экземпляр служб SQL Server 2016 Analysis Services, необходимо добавить следующее пространство имен, чтобы сделать код или скрипт рабочим:
using Microsoft.AnalysisServices;
using Microsoft.AnalysisServices.Core;
Пространство имен Microsoft.AnalysisServices.Core теперь обязательно необходимо при ссылке на сборку Microsoft.AnalysisServices в вашем коде. Объекты, которые ранее находились только в пространстве имен Microsoft.AnalysisServices , перемещаются в пространство имен Core в этом выпуске, если объект используется одинаково в табличных и многомерных сценариях. Например, API,связанные с сервером, перемещаются в пространство имен Core.
Хотя теперь существует несколько пространств имен, оба существуют в одной сборке (Microsoft.AnalysisServices.dll).
Изменения в XEvent DISCOVER
Чтобы лучше поддерживать потоковую передачу XEvent DISCOVER в SSMS для служб SQL Server 2016 Analysis Services, DISCOVER_XEVENT_TRACE_DEFINITION
заменяется следующими трассировками XEvent:
DISCOVER_XEVENT_PACKAGES
ОТКРЫТЬ_СОБЫТИЕ_ОБЪЕКТ
DISCOVER_XEVENT_OBJECT_COLUMNS (Обнаружение столбцов объекта события XEvent)
DISCOVER_XEVENT_SESSION_TARGETS
Изменения поведения в SSAS 2016
Analysis Services, работающие в режиме SharePoint
Запуск мастера настройки PowerPivot больше не требуется в качестве задачи после установки. Это верно для всех поддерживаемых версий SharePoint, которые загружают модели из текущих служб SQL Server 2016 Analysis Services.
Режим DirectQuery для табличных моделей
DirectQuery — это режим доступа к данным для табличных моделей, где выполнение запроса выполняется в серверной реляционной базе данных, извлекая результирующий набор в режиме реального времени. Он часто используется для очень больших наборов данных, которые не могут помещаться в память или когда данные являются переменными, и вы хотите, чтобы последние данные возвращались в запросах к табличной модели.
DirectQuery существовал в качестве режима доступа к данным на протяжении последних нескольких выпусков. В SQL Server 2016 Analysis Services реализация была немного изменена, если табличная модель находится на уровне совместимости 1200 или выше. DirectQuery имеет меньше ограничений, чем раньше. Он также имеет различные свойства базы данных.
Если вы используете DirectQuery в существующей табличной модели, модель можно сохранить на текущем уровне совместимости 1100 или 1103 и продолжать использовать DirectQuery в качестве его реализации для этих уровней. Кроме того, вы можете обновить до 1200 или более поздней версии, чтобы воспользоваться усовершенствованиями, сделанными в DirectQuery.
Отсутствует возможность обновления модели DirectQuery на месте, так как параметры из старых уровней совместимости точно не соответствуют уровням совместимости 1200 и выше. Если у вас есть существующую табличную модель, которая выполняется в режиме DirectQuery, необходимо открыть модель в SQL Server Data Tools, отключить DirectQuery, задать для свойства уровня совместимости значение 1200 или более поздней версии, а затем перенастроить свойства DirectQuery. Дополнительные сведения см. в режиме DirectQuery .
Определения
Нерекомендуемая функция будет прекращена из продукта в будущем выпуске, но по-прежнему поддерживается и включена в текущий выпуск для обеспечения обратной совместимости. Рекомендуется прекратить использование устаревших функций в новых и существующих проектах для обеспечения совместимости с будущими выпусками. Документация не обновляется для устаревших функций.
Прекращённая функция была объявлена устаревшей в предыдущем релизе. Он может продолжать включаться в текущий выпуск, но больше не поддерживается. Неподдерживаемые функции могут быть полностью удалены в указанном или будущем выпуске.
Критическое изменение приводит к тому, что функция, модель данных, код приложения или скрипт больше не будут функционировать после обновления до текущего выпуска.
Изменение поведения влияет на то, как та же функция работает в текущем выпуске по сравнению с предыдущим выпуском. Описываются только значительные изменения поведения. Изменения в пользовательском интерфейсе не включаются. Изменения значений по умолчанию, ручная конфигурация, необходимая для завершения обновления или восстановления функций, или новая реализация существующей функции — это все примеры изменения поведения.