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


Клиентские библиотеки служб 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 устанавливают все три клиентские библиотеки и обновляют их вместе с регулярными обновлениями приложений. Для пользовательских клиентских приложений для служб Analysis Services также может потребоваться установить одну или несколько этих клиентских библиотек. Новые версии клиентских библиотек обновляются примерно ежемесячно.

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

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

Установщик Windows

Загружать Версия
MSOLAP (amd64) 16.0.156.17
MSOLAP (x86) 16.0.156.17
AMO 19.84.1.0
ADOMD 19.84.1.0

Примечание. скачивание установщика Windows для объектов управления службами Analysis Services (AMO/TOM) и ADOMD больше не обновляются и не будут доступны после 31 декабря 2024 года. Приложения, использующие эти загрузки установщика Windows, должны переноситься в пакеты NuGet.

Пакеты NuGet

Клиентские библиотеки служб Analysis Services Management Objects (AMO/TOM) и ADOMD доступны как устанавливаемые пакеты из NuGet.org. Настоятельно рекомендуется перенести ссылки На NuGet вместо использования установщика Windows.

Сборки пакетов NuGet assemblyVersion соответствуют семантической версии: MAJOR. НЕСОВЕРШЕННОЛЕТНИЙ. ЗАПЛАТА. Ссылки на NuGet загружают ожидаемую версию, даже если в GAC есть другая версия (в результате установки MSI). Исправление увеличивается для каждого выпуска. Версии AMO и ADOMD хранятся в синхронизации.

Начиная с июля 2024 года пакеты AMO и ADOMD содержат выпуски с несколькими средами выполнения для всех поддерживаемых целевых сред выполнения, как для .NET FX, так и для .NET Core; Предыдущие выпуски пакетов, предназначенных только для одной среды выполнения , .NET FX или .NET Core, доступны для обратной совместимости, но больше не обновляются.

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

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

AMO и ADOMD

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

Примечание.

Новые пакеты с несколькими средами выполнения больше не имеют суффикса .retail.amd64 в идентификаторе пакета и теперь просто называются Microsoft.AnalysisServices и Microsoft.AnalysisServices.AdomdClient.

Старые пакеты .NET Framework и .NET Core по-прежнему доступны в nuget.org для обратной совместимости с старым удостоверением с суффиксом .retail.amd64 для .NET Framework и ". Суффикс NetCore.retail.amd64 для .NET Core.

Минимальные необходимые версии

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

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

Клиент lib Версия файла Версия
MSOLAP 2018.151.61.21 15.1.61.21
АМО 15.1.61.21 19.12.3.0
ADOMD 15.1.61.21 19.12.3.0

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

AMO и ADOMD

Начиная с версии 19.84.6 поддержка .NET FX 4.5 и .NET Core 3.0 в управляемых сборках больше недоступна. Клиентские сборки AS теперь выпускаются с поддержкой .NET FX 4.7.2, а также только для .NET 6.0 и .NET 8.0.

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

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>

Начиная с версии 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 при установке подключения к облачным службам, таким как Power-BI и Azure Analysis Services. Если приложение или другой компонент приложения зависит от использования MSAL, может потребоваться обновить параметры перенаправления привязки приложения, если между версиями MSAL, загруженными компонентами, возникают конфликты.

AMO и ADOMD .Net Core

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

Интерактивное имя входа с идентификатором Microsoft Entra поддерживается только для компьютеров 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.

АМО

Начиная с версии 19.84.6 поддержка TMDL в AMO\TOM рассматривается как в состоянии General-Availability, и в области API не будет критических изменений.

Версия 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 при клонирование или копирование метаданныхObject в другой экземпляр метаданныхObject с помощью табличной объектной модели (TOM), TOM возвращает значение NULL для свойств, которые перекрестно ссылающиеся объекты вне прямого дерева метаданных метаданных дочерних объектов. Необходимо добавить клонированный экземпляр MetadataObject в семантику модели, чтобы разрешить перекрестные ссылки на объекты вне дерева MetadataObject.

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

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.139.27 MSOLAP поддерживает профили субъектов-служб для проверки подлинности, как показано в следующем примере строки подключения. Дополнительные сведения см. в статье Использование профилей субъекта-службы для управления данными клиентов в мультитенантных приложениях.

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>

Начиная с версии 16.0.134.22 MSOLAP поддерживает автоматическое единое Sign-On (SSO) с помощью диспетчера веб-учетных записей (WAM), доступного в Windows 10 и более поздних версиях, а также Windows Server 2019 и более поздних версий. При открытии нового HTTP-подключения MSOLAP получает маркер доступа следующим образом:

  1. Если кэширование маркеров включено, а подходящий маркер доступен в кэше, MSOLAP использует кэшированный маркер.
  2. Если подходящий кэшированный токен недоступен, MSOLAP пытается автоматически получить маркер доступа через WAM.
  3. Если сбой единого входа с помощью WAM, MSOLAP возвращается к интерактивной проверке подлинности и всплывает окно входа.

Пользователи могут обойти поток автоматического единого входа и немедленно запустить интерактивный интерфейс проверки подлинности, предоставив идентификатор пользователя "пустой" в строке подключения (User ID=').

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

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

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

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

Службы Analysis Services используют три клиентские библиотеки. ADOMD.NET и объекты управления службами Analysis Services (AMO) — это клиентские библиотеки. Поставщик 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)

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

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

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

АМО

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>>сведений. Проверьте свойство product version. Примечание. Если имя файла msolap140.dll, оно старше последней версии и должно быть обновлено.

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

АМО

  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>Свойства>сведения.

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

Обновление вручную

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

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

  1. Щелчок:

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

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

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

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

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