Клиентские библиотеки служб Analysis Services

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

Клиентские библиотеки требуются клиентским приложениям и средствам для подключения к Analysis Services. Клиентские приложения Майкрософт, такие как Power BI Desktop, Excel, SQL Server Management Studio (SSMS) и расширение проектов Analysis Services для Visual Studio, устанавливают все три клиентские библиотеки и обновляют их вместе с регулярными обновлениями приложений. Пользовательские клиентские приложения также требуют установки клиентских библиотек. Клиентские библиотеки обновляются каждый месяц.

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

Скачать последнюю версию

Установщик Windows

Скачать Версия
MSOLAP (amd64) 16.0.130.20
MSOLAP (x86) 16.0.130.20
AMO 19.79.0.0
ADOMD 19.79.0.0

Пакеты NuGet

Клиентские библиотеки AMO/TOM и ADOMD доступны в виде устанавливаемых пакетов из NuGet.org. Рекомендуется перейти на ссылки NuGet вместо использования установщика Windows.

Начиная с февраля 2021 г. также доступны версии пакетов .NET Core , эквивалентные клиентским пакетам AMO и ADOMD. Однако существует несколько сценариев, не поддерживаемых версиями .NET Core. Дополнительные сведения см. в разделе Рекомендации и ограничения далее в этой статье.

Сборки пакетов NuGet AssemblyVersion следуют семантической организации номера версии — "Главная.Второстепенная.Исправление". Ссылки NuGet загружают ожидаемую версию, даже если в GAC есть другая версия (в результате установки MSI). Номер исправления увеличивается с каждым выпуском. Версии ADOMD и AMO синхронизируются.

Объекты AMO и ADOMD

Пакет Версия
AMO 19.79.1
ADOMD 19.79.1

.Net Core AMO и ADOMD

Пакет Версия
.Net Core AMO 19.79.1
.Net Core ADOMD 19.79.1

Начиная с AMO (AMO/TOM) и ADOMD .Net Core версии 19.48.0.0, значительно улучшена связь на основе HTTP с облачными службами, такими как Power BI и Azure Analysis Services. Рекомендуется выполнить обновление до последней версии, чтобы воспользоваться преимуществами этих улучшений производительности.

Предварительная версия TMDL

Начиная с выпуска AMO 19.72.0 функции TMDL теперь включены в Microsoft.AnalysisServices.Tabular.dll. Если вы использовали пакет NuGet Microsoft.AnalysisServices.Tabular.Tmdl , удалите его из проекта и выполните повторную компиляцию.

В API TMDL были внесены следующие изменения, которые могли повлиять на код:

  • Изменяется имя свойства TmdlFormatException. Например, Путь изменен на Документ.

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

Минимальные обязательные версии

Протокол TLS версии 1.0/1.1 не рекомендуется использовать в Microsoft Entra ID 30 июня 2021 г. Теперь требуется ПРОТОКОЛ TLS 1.2 или более поздней версии. ПРОТОКОЛ TLS 1.2 не поддерживается в более ранних версиях клиентских библиотек служб Analysis Services. Новые версии клиентской библиотеки включают поддержку TLS 1.2 и более поздних версий в дополнение к другим важным улучшениям безопасности.

Чтобы свести к минимуму риск и потенциальные уязвимости системы безопасности, начиная с 30 июня 2021 г. для усиленной безопасности в Azure Analysis Services и Power BI требуются следующие или более поздние версии:

Клиентская библиотека Версия файла Версия
MSOLAP 2018.151.61.21 15.1.61.21
AMO 15.1.61.21 19.12.3.0
ADOMD 15.1.61.21 19.12.3.0

Рекомендации и ограничения

Объекты AMO и ADOMD

Начиная с версии 19.67.0 объекты подключения, такие как Microsoft.AnalysisServices.AdomdClient.AdomdConnection и Microsoft.AnalysisServices.Server, поддерживают новое свойство AccessToken , которое обеспечивает улучшенный способ передачи внешних маркеров OAuth для использования на уровне подключения XMLA. Дополнительные сведения см. в разделе Свойства строки подключения — идентификатор пользователя=...; Password=.

Начиная с версии 19.42.0.4, ADOMD.NET и AMO/TOM используют MSAL (Microsoft.Identity.Client) версии 4.43.0 или более поздней вместо ADAL для проверки подлинности пользователей с помощью Microsoft Entra ID при установке подключения к облачным службам, таким как Power BI и Azure Analysis Services. Если приложение или другой компонент, от которых зависит приложение, использует MSAL, может потребоваться обновить параметры перенаправления привязки приложения при наличии конфликтов между версиями MSAL, загруженными компонентами.

.Net Core AMO и ADOMD

Поддерживаемые сценарии включают подключения к Azure Analysis Services, Power BI Premium и SQL Server Analysis Services. Подключение на основе TCP поддерживается только для компьютеров Windows.

Интерактивный вход с Microsoft Entra ID поддерживается только для компьютеров Windows. Требуется среда выполнения классических приложений .NET Core.

Для зависимости в MSAL требуется версия 4.43.0 или более поздняя.

В версии 19.14.0 клиентских библиотек .Net Core появилась предварительная версия поддержки публикации Self-Contained (как в опубликованном каталоге, так и в режиме с одним файлом), а также поддержка использования проектами .NET 5.0. Исправлено несколько проблем, связанных с подключением к SQL Server Analysis Services, которые были определены в предыдущем выпуске.

В версии 19.12.7.2 клиентских библиотек .Net Core появилась поддержка SQL Server Analysis Services. Более ранние версии поддерживаются только Azure Analysis Services и семантических моделей Power BI.

AMO

В версии 19.12.3.0 клиентской библиотеки AMO появилось новое перечисление Microsoft.AnalysisServices.DataType. Однако предыдущее перечисление Microsoft.AnalysisServices.Tabular.DataType по-прежнему существует. Если код ссылается на предыдущее перечисление как DataType в файле кода с операторами в обоих пространствах имен (Microsoft.AnalysisServices, Microsoft.AnalysisServices.Tabular), из-за неоднозначности при компиляции может возникнуть ошибка. Чтобы устранить эту ошибку, полностью укажите ссылку на перечисление.

В версии 19.61.1.4 клиентской библиотеки AMO реализовано изменение поведения отката транзакций в Microsoft.AnalysisServices.Server. В более ранних версиях вызов Server.RollbackTransaction() отправляет обработчику запрос на откат транзакции, а затем пытается выполнить откат локальных изменений. В отличие от более ранних версий, в 19.61.1.4 и более поздних версиях, если локальные изменения невозможно безопасно откатить, табличные базы данных включаются в блок транзакций любые дополнительные изменения, пока они не будут полностью синхронизированы и устаревшие изменения транзакции, которые были откатированы, будут удалены. Исключение InvalidOperationException возникает при изменении соответствующей табличной базы данных. Если код вызывает Server.RollbackTransaction(), рекомендуется выполнить этот вызов с полной синхронизацией [Database.Refresh(true)] для любой табличной базы данных, измененной в рамках транзакции.

Начиная с версии 19.77.0 при клонировании или копировании объекта MetadataObject в другой экземпляр объекта MetadataObject с помощью табличной объектной модели (TOM) toM возвращает значение NULL для свойств, которые перекрестно ссылаться на объекты за пределами прямого дерева дочерних объектов MetadataObject. Необходимо добавить клонированный экземпляр MetadataObject в семантику, чтобы разрешить перекрестные ссылки на объекты за пределами дерева MetadataObject.

Например, при клонировании таблицы с секцией, которая ссылается на именованное выражение в EntityPartitionSource, свойство ExpressionSource объекта EntityPartitionSource возвращает значение NULL до тех пор, пока клонированная таблица не будет добавлена в семантику, как показано в фрагменте кода ниже, чтобы можно было разрешить клонированную ссылку ExpressionSource. Клон необходимо добавить в модель, так как именованное выражение с перекрестной ссылкой является членом коллекции Expressions модели, а не частью дерева дочерних объектов таблицы.

Table tableClone = model.Tables[0].Clone();
anotherModel.Tables.Add(tableClone);

ADOMD

Начиная с ADOMD (как платформа .NET Framework, так и .NET Core) версии 19.61.1.4, сжатие полностью доступно на транспортном уровне XMLA. В предыдущих выпусках после версии 19.55.3.1 реализована частичная поддержка сжатия. Получены отчеты о проблемах с этими выпусками. Эти проблемы были устранены в выпуске 16.61.1.4. Не забудьте выполнить обновление до версии 19.61.1.4 или более поздней, если возникают проблемы, связанные со сжатием.

MSOLAP

Начиная с версии 16.0.43.20, MSOLAP использует MSAL (Microsoft.Identity.Client) версии 4.43.0 или более поздней вместо ADAL для проверки подлинности пользователей с Microsoft Entra ID при установке подключения к облачным службам, таким как Power-BI и Azure Analysis Services. Если приложение или другой компонент, от которых зависит приложение, использует MSAL, может потребоваться обновить параметры перенаправления привязки приложения при наличии конфликтов между версиями MSAL, загруженными компонентами.

В версии 16.0.4.17 OLEDB (MSOLAP) обнаружена регрессия, связанная с подключениями к облачным системам с использованием Microsoft Entra ID. Он был исправлен в версии 16.0.20.201. Из-за характера проблемы установленную версию 16.0.4.17, а также любую другую версию до 16.0.201, невозможно исправить путем добавления поставщика, даже если программа установки выполняется в режиме восстановления. Рекомендуется полностью удалить версию 16.0.4.17 [или другую проблемную версию], а затем установить версию 16.0.201 или более позднюю.

В более ранней версии MSOLAP был обновлен для подключения к облачным службам Analysis Services с помощью управляемой библиотеки проверки подлинности Майкрософт (MSAL). Начиная с версии 16.0.87.16 программа установки MSOLAP больше не устанавливает исходный собственный компонент библиотеки проверки подлинности Azure Active Directory (ADAL).

Основные сведения о клиентских библиотеках

Службы Analysis Services используют три клиентские библиотеки. ADOMD.NET и объекты AMO (объекты управления Analysis Services) — это управляемые клиентские библиотеки. Поставщик OLE DB служб Analysis Services (MSOLAP DLL) — это собственная клиентская библиотека. Как правило, все три библиотеки устанавливаются одновременно.

Клиентские приложения Майкрософт, в частности Power BI Desktop и Excel, устанавливают все три клиентские библиотеки и обновляют их незамедлительно при выходе новых версий. В зависимости от версии или частоты обновлений некоторые клиентские библиотеки могут не быть последними версиями, необходимыми для Azure Analysis Services и Power BI. Это же касается и пользовательских приложений или других интерфейсов, таких как AsCmd, TOM, ADOMD.NET. Для этих приложений клиентские библиотеки требуется устанавливать вручную или программным способом. Клиентские библиотеки, устанавливаемые вручную, включены в пакеты дополнительных компонентов SQL Server в качестве распространяемых пакетов. Однако они зависят от версии SQL Server, поэтому версия в пакетах может быть не последней. Убедитесь, что вы всегда устанавливаете последнюю версию, доступную для скачивания из этой статьи.

Типы клиентских библиотек

Поставщик OLE DB службы Analysis Services (MSOLAP)

Поставщик Analysis Services OLE DB (MSOLAP) представляет собой собственную клиентскую библиотеку для подключения к базе данных служб Analysis Services. Он косвенно используется в ADOMD.NET и объектах AMO, делегируя запросы соединений поставщику данных. Также вы можете вызывать поставщик OLE DB напрямую из кода приложения.

Поставщик Analysis Services OLE DB устанавливается автоматически большинством средств и клиентских приложений, которые используются для доступа к базам данных служб Analysis Services. Его следует установить на всех компьютерах, с которых выполняется доступ к данным Analysis Services.

Поставщики OLE DB часто указываются в строках подключения. Служба Analysis Services строка подключения использует другую номенклатуру для ссылки на поставщик OLE DB: MSOLAP.<.dll версии>.

AMO

AMO — это управляемая клиентская библиотека, которая используется для администрирования сервера и определения данных. Она устанавливается и используется средствами и клиентскими приложениями. Например, SQL Server Management Studio (SSMS) использует AMO для подключения к службам Analysis Services. Подключение с помощью объектов AMO предельно просто. Достаточно лишь указать "data source=\<servername>". Когда подключение будет установлено, этот API можно использовать для работы с коллекциями баз данных и основными объектами. Как Visual Studio, так и SSMS используют AMO для подключения к экземпляру служб Analysis Services.

ADOMD

ADOMD.NET — это управляемая клиентская библиотека, используемая для запросов к данным Analysis Services. Она устанавливается и используется средствами и клиентскими приложениями.

Во всех трех библиотеках используются похожие свойства строк подключения к базе данных. Почти любая строка подключения, определяемая для ADOMD.NET с помощью Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectionString, также работает для AMO и поставщика OLE DB служб Analysis Services (MSOLAP). Дополнительные сведения см. в разделе Свойства строки подключения.

Проверка установленных версий

OLEDDB (MSOLAP)

  1. Перейдите к C:\Program Files\Microsoft Analysis Services\AS OLEDB\. Если здесь несколько папок, выберите папку с самым большим номером.

  2. Щелкните правой кнопкой мыши msolap.dll>сведения о свойствах>. Проверьте свойство Версия продукта . Примечание. Если имя файла msolap140.dll, оно старше последней версии и должно быть обновлено.

    Диалоговое окно сведений о клиентской библиотеке MSOLAP

AMO

  1. Перейдите к C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices\. Если здесь несколько папок, выберите папку с самым большим номером.

  2. Щелкните правой кнопкой мыши Сведенияосвойствах>Microsoft.AnalysisServices>.

    Диалоговое окно сведений о клиентской библиотеке AMO

ADOMD

  1. Перейдите к C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices.AdomdClient\. Если здесь несколько папок, выберите папку с самым большим номером.

  2. Щелкните правой кнопкой мыши Microsoft.AnalysisServices.AdomdClient Properties Details (Сведения о свойствах Microsoft.AnalysisServices.AdomdClient>).>

    Диалоговое окно сведений о клиентской библиотеке ADOMD

Ручное обновление

Клиентские библиотеки обычно устанавливаются и обновляются автоматически вместе с инструментами и клиентскими приложениями, которые их используют. Однако в некоторых случаях клиентские библиотеки не могут обновляться автоматически, и каждый из них необходимо обновлять вручную. Чтобы обновить вручную, скачайте и запустите пакет установщика Windows (.msi) для каждой клиентской библиотеки.

Скачивание и обновление

  1. Нажмите:

  2. В разделе Загрузки щелкните пакет установщика Windows, чтобы запустить программу установки.

  3. В разделе Настройка нажмите кнопку Далее.

  4. Прочитайте лицензионное соглашение. Если вы согласны, выберите Я принимаю условия лицензионного соглашения и нажмите кнопку Далее.

  5. Щелкните Установить.

  6. По завершении нажмите кнопку Готово.