Analysis Services 用戶端連結庫

適用於: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

用戶端程式庫是用戶端應用程式和工具連接到 Analysis Services 的必備條件。 適用於 Visual Studio 的 Microsoft 用戶端應用程式,例如 Power BI Desktop、Excel、SQL Server Management Studio (SSMS) 和 Analysis Services 專案延伸模組,都會安裝這三個客戶端連結庫,並更新它們以及一般應用程式更新。 自訂用戶端應用程式也需要安裝用戶端連結庫。 用戶端程式庫會每月進行更新。

重要: 取得最新版本之前,請務必參閱 考慮和限制

下載最新的

Windows Installer

下載 版本
MSOLAP (amd64) 16.0.130.20
MSOLAP (x86) 16.0.130.20
Amo 19.79.0.0
ADOMD 19.79.0.0

NuGet 套件

Analysis Services 管理物件 (AMO/TOM) 和 ADOMD 用戶端連結庫可從 NuGet.org 安裝套件的形式提供。建議您移轉至 NuGet 參考,而不是使用 Windows Installer。

從 2021 年 2 月開始,也可以使用相當於 AMO 和 ADOMD 用戶端套件的 .NET Core 套件版本。 不過,.NET Core 版本不支援幾個案例。 若要深入瞭解,請參閱本文稍後的 考慮和限制

Nuget 套件組件 AssemblyVersion 會遵循語意化版本控制系統:MAJOR.MINOR.PATCH。 NuGet 參考會載入預期的版本,即使 GAC (因 MSI 安裝) 而產生不同的版本也一樣。 PATCH 會針對每個版本遞增。 AMO 和 ADOMD 版本會保持同步。

AMO 和 ADOMD

套件 版本
Amo 19.79.1
ADOMD 19.79.1

AMO 和 ADOMD .Net Core

套件 版本
AMO .Net Core 19.79.1
ADOMD .Net Core 19.79.1

從 AMO (AMO/TOM) 和 ADOMD .Net Core 19.48.0.0 版開始,Power BI 和 Azure Analysis Services 等雲端服務的 HTTP 型通訊會大幅改善。 建議您更新至最新版本,以利用這些效能改善。

TMDL 預覽

從 AMO 19.72.0 版開始,TMDL 功能現在已包含在 Microsoft.AnalysisServices.Tabular.dll 中。 如果您已使用 Microsoft.AnalysisServices.Tabular.Tmdl NuGet 套件,請務必 將其從專案中移除並重新編譯

已對可能會影響程式代碼的 TMDL API 進行下列變更:

  • TmdlFormatException 屬性名稱變更。 例如, Path 已變更為 Document

若要深入瞭解 TMDL,請參閱 表格式模型定義語言概觀

最低必要版本

傳輸層安全性 (TLS) 通訊協定 1.0/1.1 版在 2021 年 6 月 30 日 Microsoft Entra ID 已被取代。 現在需要 TLS 1.2 或更高版本。 舊版 Analysis Services 用戶端連結庫不支援 TLS 1.2。 較新的用戶端連結庫版本除了其他重要的安全性增強功能之外,還支援TLS 1.2和更新版本。

若要將風險和潛在安全性弱點降至最低,從 2021 年 6 月 30 日開始,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 属性,以改進方式傳遞 XMLA 連線層要使用的外部 OAuth 令牌。 若要深入瞭解,請參閱 連接字串屬性 - 用戶標識元=...;Password=

從 19.42.0.4 版開始,ADOMD.NET 和 AMO/TOM 使用 MSAL (Microsoft.Identity.Client) 4.43.0 版或更新版本,而不是 ADAL,在建立與 Power-BI 和 Azure Analysis Services 等雲端式服務的連線時,使用 Microsoft Entra ID 驗證使用者。 如果您的應用程式或其他應用程式相依元件正在使用 MSAL,則如果元件載入的 MSAL 版本之間發生衝突,可能需要更新應用程式的系結重新導向設定。

AMO 和 ADOMD .Net Core

支援的案例包括與 Azure Analysis Services、Power BI Premium 和 SQL Server Analysis Services的連線。 Windows 計算機僅支援 TCP 型連線。

只有 Windows 電腦才支援具有 Microsoft Entra ID 的互動式登錄。 需要 .NET Core Desktop 運行時間。

MSAL 中的相依性需要 4.43.0 版或更高版本。

19.14.0 版的 .Net Core 客戶端連結庫除了支援 .NET 5.0 專案的取用之外,也引進了發行 Self-Contained 發行 () 的預覽支援。 已修正與先前版本中所識別 SQL Server Analysis Services的連線問題。

.Net Core 客戶端連結庫 19.12.7.2 版引進了對 SQL Server Analysis Services 的支援。 只有較低的預覽版本支援 Azure Analysis Services 和 Power BI 語意模型。

AMO

AMO 用戶端連結庫 19.12.3.0 版引進新的列舉 Microsoft.AnalysisServices.DataType。 不過,先前的列舉仍存在 Microsoft.AnalysisServices.Tabular.DataType 。 如果您的程式代碼在程式代碼檔案中將先前的列舉參考為 DataType ,其中包含兩個命名空間 (Microsoft.AnalysisServicesMicrosoft.AnalysisServices.Tabular) ,因為模棱兩可,您可以在編譯時收到錯誤。 若要解決錯誤,請完整限定列舉的參考。

AMO 用戶端連結庫 19.61.1.4 版引進 Microsoft.AnalysisServices.Server 的交易回復行為變更。 在舊版中, 呼叫 Server.RollbackTransaction () 傳送要求給引擎以回復交易,然後嘗試回復本機變更。 不同於舊版,在 19.61.1.4 和更新版本中,如果無法安全地復原本機變更,則交易中包含的表格式資料庫會封鎖任何其他變更,直到可以完全同步處理,且已回復之交易的過時變更都會移除。 當對相關的表格式資料庫進行變更時,就會引發 InvalidOperationException 。 如果您的程式代碼呼叫 Server.RollbackTransaction () ,建議您針對任何修改為交易一部分的表格式資料庫,遵循該呼叫與完整同步處理 [Database.Refresh (true) ]。

從 19.77.0 版開始,使用表格式物件模型 (TOM) ,將 MetadataObject 複製或複製至 MetadataObject 的另一個實例時,TOM 會針對在 MetadataObject 直接樹狀結構外交叉參考物件的屬性傳回 null。 您必須將複製的 MetadataObject 實例新增至語意模型,才能解析 MetadataObject 樹狀結構外部物件的交叉參考。

例如,複製具有參考 EntityPartitionSource 中具名表示式之數據分割的數據表時,EntityPartitionSource 的 ExpressionSource 屬性會傳回 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.43.20 版開始,MSOLAP 會使用 MSAL (Microsoft.Identity.Client) 4.43.0 版或更新版本,而不是 ADAL,在建立 Power-BI 和 Azure Analysis Services 等雲端式服務的聯機時,使用 Microsoft Entra ID 驗證使用者。 如果您的應用程式或其他應用程式或應用程式相依的另一個元件正在使用 MSAL,如果元件載入的 MSAL 版本之間發生衝突,可能需要更新應用程式的系結重新導向設定

在 16.0.4.17 版的 OLEDB (MSOLAP Microsoft Entra ID) 中發現與雲端式系統連線相關的回歸。 它已在 16.0.20.201 版本中修正。 由於問題的本質,即使安裝程式是以修復模式執行,已安裝的 16.0.4.17 版本,以及 16.0.20.201 之前的任何其他版本,仍無法修正此問題。 建議您完全卸載 16.0.4.17 [或其他有問題的] 版本,然後安裝 16.0.20.201 或更新版本。

在舊版中,MSOLAP 已更新為使用受控 Microsoft 驗證連結庫聯機到雲端式 Analysis Services (MSAL) 。 從 16.0.87.16 版開始,MSOLAP 安裝程式不再安裝原始原生 Azure Active Directory 驗證連結庫 (ADAL) 元件。

了解用戶端程式庫

Analysis Services 會利用三個客戶端連結庫。 ADOMD.NET 和「Analysis Services 管理物件」(AMO) 是受控用戶端程式庫。 而 Analysis Services OLE DB 提供者 (MSOLAP DLL) 是原生用戶端連結庫。 通常會同時安裝這所有三個程式庫。

Microsoft 用戶端應用程式 (像是 Power BI Desktop 和 Excel) 會安裝這三個用戶端程式庫,並在新版本可用時加以更新。 根據更新的版本或頻率,某些用戶端連結庫可能不是 Azure Analysis Services 和 Power BI 所需的最新版本。 同樣適用於自訂應用程式或其他介面,例如 AsCmd、TOM、ADOMD.NET。 這些應用程式需要手動或以程式設計方式安裝程式庫。 手動安裝的用戶端程式庫會以可散發的套件形式包含在 SQL Server 功能套件中。 不過,這些會用戶端程式庫與 SQL Server 版本繫結,而可能不是最新版本。 請確定您一律會從本文安裝最新的可下載專案。

用戶端程式庫類型

Analysis Services OLE DB 提供者 (MSOLAP)

Analysis Services OLE DB Provider (MSOLAP) 是 Analysis Services 資料庫連線的原生用戶端程式庫。 ADOMD.NET 和 AMO 會間接使用,將連線要求委派給資料提供者。 您也可以直接從應用程式程式碼呼叫 OLE DB Provider。

大部分用來存取 Analysis Services 資料庫的工具和用戶端應用程式會自動安裝 Analysis Services OLE DB Provider。 它必須安裝在用來存取 Analysis Services 資料的電腦上。

通常會在連接字串中指定 OLE DB Provider。 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 資料的受控資料用戶端程式庫。 工具和用戶端應用程式會加以安裝並使用。

連線到資料庫時,所有三個程式庫的連接字串屬性都會類似。 您幾乎使用 Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectionString 為 ADOMD.NET 定義的任何 連接字串 也適用於 AMO 和 Analysis Services OLE DB 提供者 (MSOLAP) 。 若要深入瞭解,請參閱 連接字串屬性

查看已安裝的版本

OLEDDB (MSOLAP)

  1. 前往 C:\Program Files\Microsoft Analysis Services\AS OLEDB\。 如果您有多個資料夾,請選擇較高的數字。

  2. 以滑鼠右鍵按兩下 [屬性>詳細數據]msolap.dll>。 檢查 Product 版本 屬性。 注意:如果檔名是 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>屬性詳細數據>]。

    ADOMD 用戶端連結庫詳細數據對話方塊

手動更新

用戶端連結庫通常會隨著使用這些連結庫的工具和用戶端應用程式自動安裝及更新。 不過,在某些情況下,客戶端連結庫可能不會自動更新,而且每個連結庫都必須手動更新。 若要手動更新,請下載並執行每個用戶端連結庫的 Windows Installer (.msi) 套件。

下載並更新

  1. 按一下:

  2. [下載] 中,按兩下 Windows Installer 套件以執行安裝程式。

  3. 在 [設定] 中,按 [下一步]。

  4. 閱讀授權合約。 如果您同意,請選取 [我接受許可協定中的條款],然後按 [ 下一步]。

  5. 按兩下 [ 安裝]。

  6. 完成時,按兩下 [ 完成]。