Azure Analysis Services 中支援的資料來源

Azure Analysis Services 和 SQL Server Analysis Services 都會顯示 Visual Studio 中具有 Analysis Services 專案的 [取得資料] 或 [資料表匯入精靈] 中顯示的資料來源和連接器。 不過,Azure Analysis Services 不支援顯示的所有資料來源和連接器。 您可以連線的資料來源類型取決於許多因素,例如模型相容性層級、可用的資料連線器、驗證類型,以及內部部署資料閘道支援。 下表說明 Azure Analysis Services 支援的資料來源。

Azure 資料來源

資料來源 記憶體中 DirectQuery 備註
Azure SQL Database Yes 2,3
Azure Synapse Analytics (SQL DW) Yes Yes 2
Azure Blob 儲存體 No 1
Azure 資料表儲存體 No 1
Azure Cosmos DB No 1
Azure Data Lake Store Gen1 No 1
Azure Data Lake Store Gen2 No 1,5
Azure HDInsight HDFS No 1
Azure HDInsight Spark No 1,4

注意:

1 - 表格式 1400 和更高型號。
2 - 當指定為 表格式 1200 和更高模型中的提供者 資料來源時,記憶體內部和 DirectQuery 模型都需要 Microsoft OLE DB Driver for SQL Server MSOLEDBSQL (建議)或 .NET Framework Data Provider for SQL Server。
3 - 支援Azure SQL 受控執行個體。 由於SQL 受管理執行個體在具有私人 IP 位址的 Azure VNet 內執行,因此必須在實例上啟用公用端點。 如果未啟用, 則需要內部部署資料閘道
4 - 目前不支援使用 Spark 連接器的 Azure Databricks。
5 - 目前不支援 ADLS Gen2 連接器,不過,Azure Blob 儲存體連接器可以搭配 ADLS Gen2 資料來源使用。

其他資料來源

從 Azure Analysis Services 伺服器連線至內部部署資料來源需要 內部部署閘道 。 使用閘道時,需要 64 位提供者。

資料來源 記憶體中 DirectQuery 備註
Access 資料庫 No
Active Directory 6
Analysis Services No
分析平台系統 No
CSV 檔案 No
Dynamics 365 No 6 12
Excel 活頁簿 No
Exchange 6
資料夾 6
IBM Informix No
JSON 檔 6
來自二進位的行 6
MySQL 資料庫 No 13
OData 摘要 6
ODBC 查詢 No
OLE DB No
Oracle Yes Yes 9
PostgreSQL 資料庫 6
Salesforce 物件 6
Salesforce 報表 6
SAP HANA No
SAP Business Warehouse 6
SharePoint 清單 No 6 11
SQL Server Yes Yes 7 8
SQL Server 資料倉儲 Yes Yes 7 8
Sybase 資料庫 No
Teradata Yes Yes 10
TXT 檔案 No
XML 資料表 6

注意:
6 - 表格式 1400 和更高型號。
7 - 當指定為 表格式 1200 和更高模型中的提供者 資料來源時,請指定 Microsoft OLE DB Driver for SQL Server MSOLEDBSQL (建議)、SQL Server Native Client 11.0 或 .NET Framework Data Provider for SQL Server。
8 - 如果將 MSOLEDBSQL 指定為數據提供者,您可能需要在與內部部署資料閘道相同的電腦上下載並安裝 Microsoft OLE DB Driver for SQL Server
9 - 針對表格式 1200 模型,或做為 表格式 1400+ 模型中的提供者 資料來源,請指定 Oracle Data Provider for .NET。 如果指定為結構化資料來源,請務必 啟用 Oracle 受控提供者
10 - 針對表格式 1200 模型,或做為 表格式 1400+ 模型中的提供者 資料來源,請指定 Teradata Data Provider for .NET。
11 - 不支援內部部署 SharePoint 中的檔案。
12 - Azure Analysis Services 不支援直接連線至 Dynamics 365 Dataverse TDS 端點 。 從 Azure Analysis Services 連線到此資料來源時,您必須使用內部部署資料閘道,並手動重新整理權杖。
13 - Azure Analysis Services 不支援直接連線到 MySQL 資料庫。 從 Azure Analysis Services 連線到此資料來源時,您必須使用內部部署資料閘道,並手動重新整理權杖。

瞭解提供者

在 Visual Studio 中建立表格式 1400 和更新版本的模型專案時,根據預設,使用 Get Data 連接到資料來源時,您不會指定資料提供者。 表格式 1400 和更新版本的模型會使用 Power Query 連接器來管理資料來源與 Analysis Services 之間的連線、資料查詢和偽裝。 這些有時稱為 該連線屬性設定中的結構化 資料來源連線。 不過,您可以在 Visual Studio 中為模型專案啟用舊版資料來源。 啟用時,您可以使用 [資料表匯入精靈] 連線到表格式 1200 和舊版模型 所支援的特定資料來源,或 提供者 資料來源。 當指定為提供者資料來源時,您可以指定特定資料提供者和其他進階連接屬性。 例如,您可以連線到 SQL Server 資料倉儲實例,甚至是 Azure SQL 資料庫作為舊版資料來源。 然後,您可以選取 OLE DB Driver for SQL Server MSOLEDBSQL 資料提供者。 在此情況下,選取 OLE DB 資料提供者可能會提供改善 Power Query 連接器的效能。

在 Visual Studio 中使用 [資料表匯入精靈] 時,任何資料來源的連線都需要資料提供者。 已為您選取預設資料提供者。 如有需要,您可以變更資料提供者。 您選擇的提供者類型可能會取決於效能、模型是否使用記憶體內部儲存體或 DirectQuery,以及您部署模型所在的 Analysis Services 平臺。

在表格式 1400 和更高模型專案中指定提供者資料來源

若要啟用提供者資料來源,請在 Visual Studio 中,按一下 [工具 > 選項 > Analysis Services 表格式 > 資料匯 入],選取 [ 啟用舊版資料來源]。

Screenshot of Enable legacy data sources.

啟用舊版資料來源後,在 [表格式模型總管] 中 ,以滑鼠右鍵按一下 > [從資料來源匯入的資料來源] (舊版)。

Screenshot of Legacy data sources in Tabular Model Explorer.

就像使用表格式 1200 模型專案一樣,請使用 資料表匯入精靈 連線到資料來源。 在 [連線] 頁面上,按一下 [ 進階 ]。 在 [設定進階屬性 ] 中 指定資料提供者和其他連接設定。

Screenshot of Legacy data sources Advanced properties.

模擬

在某些情況下,可能需要指定不同的模擬帳戶。 您可以在 Visual Studio 或 SQL Server Management Studio (SSMS) 中指定模擬帳戶。

針對內部部署資料來源:

  • 如果使用 SQL 驗證,模擬應該是服務帳戶。
  • 如果使用 Windows 驗證,請設定 Windows 使用者/密碼。 針對 SQL Server,只有記憶體內部資料模型才支援具有特定模擬帳戶的Windows 驗證。

針對雲端資料來源:

  • 如果使用 SQL 驗證,模擬應該是服務帳戶。

OAuth 認證

針對使用 記憶體 內部模式的 1400 和更高相容性層級的表格式模型,Azure SQL 資料庫、Azure Synapse、Dynamics 365 和 SharePoint 清單支援 OAuth 認證。 若要產生有效的權杖,請使用 Power Query 設定認證。 Azure Analysis Services 會管理 OAuth 資料來源的權杖重新整理,以避免長時間執行的重新整理作業逾時。

注意

透過閘道存取的資料來源不支援受控權杖重新整理。 例如,透過閘道存取一或多個混搭查詢資料來源,且/或 ASPaaS\AlwaysUseGateway 屬性設定為 true

OAuth 認證不支援直接查詢模式。

啟用 Oracle 受控提供者

在某些情況下,Oracle 資料來源的 DAX 查詢可能會傳回非預期的結果。 這可能是因為用於資料來源連線的提供者所造成。

如瞭解提供者 一節所述 ,表格式模型會以結構化 資料來源或 提供者 資料來源的形式 連接到資料來源。 對於指定為提供者資料來源之 Oracle 資料來源的模型,請確定指定的提供者是 Oracle Data Provider for .NET (Oracle.DataAccess.Client)。

如果 Oracle 資料來源指定為結構化資料來源,請啟用 MDataEngine\UseManagedOracleProvider 伺服器屬性。 設定此屬性可確保您的模型會使用建議的 Oracle Data Provider for .NET 受控提供者連線到 Oracle 資料來源。

若要啟用 Oracle 受控提供者:

  1. 在 SQL Server Management Studio 中,連線到您的伺服器。

  2. 使用下列腳本建立 XMLA 查詢。 以完整伺服器名稱取代 ServerName ,然後執行查詢。

    <Alter AllowCreate="true" ObjectExpansion="ObjectProperties" xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
        <Object />
        <ObjectDefinition>
            <Server xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" 
    xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" 
    xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" 
    xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500">
                <ID>ServerName</ID>
                <Name>ServerName</Name>
                <ServerProperties>
                    <ServerProperty>
                        <Name>MDataEngine\UseManagedOracleProvider</Name>
                        <Value>1</Value>
                    </ServerProperty>
                </ServerProperties>
            </Server>
        </ObjectDefinition>
    </Alter>
    
  3. 重新啟動伺服器。

下一步