使用 Azure Data Factory 或 Synapse Analytics 從 SAP Business Warehouse 複製資料

適用於:Azure Data Factory Azure Synapse Analytics

提示

試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用

此文章概述如何使用 Azure Data Factory 和 Synapse Analytics 管線中的複製活動,從 SAP Business Warehouse (BW) 複製資料。 本文是根據複製活動概觀一文,該文提供複製活動的一般概觀。

提示

若要了解此服務在 SAP 資料整合案例上的整體支援,請參閱使用 Azure Data Factory 的 SAP 資料整合白皮書,其中提供每個 SAP 連接器的詳細簡介、比較和指引。

支援的功能

此 SAP Business Warehouse 連接器支援下列功能:

支援的功能 IR
複製活動 (來源/-)
查閱活動

① Azure 整合執行階段 ② 自我裝載整合執行階段

如需複製活動所支援作為來源/接收器的資料存放區清單,請參閱支援的資料存放區表格。

具體而言,這個 SAP Business Warehouse 連接器支援:

  • SAP Business Warehouse 7.x 版.
  • 使用 MDX 查詢從 InfoCube 和 QueryCube (包括 BEx 查詢) 複製資料。
  • 使用基本驗證來複製資料。

注意

SAP Business Warehouse 連接器目前不支援 MDX 參數。 如果需要使用 MDX 參數進行篩選,您可以考慮改為使用替代的 SAP Open Hub 連接器

必要條件

若要使用這個 SAP Business Warehouse 連接器,您必須:

  • 設定一個「自我裝載 Integration Runtime」。 如需詳細資料,請參閱自我裝載 Integration Runtime 一文。
  • 在 Integration Runtime 電腦上安裝 SAP NetWeaver 程式庫。 您可以從 SAP 系統管理員那裡取得 SAP Netweaver 程式庫,或直接從 SAP 軟體下載中心取得。 搜尋 SAP 附註 #1025361 以取得最新版本的下載位置。 請確定您選取與 Integration Runtime 安裝項相符的 64 位元 SAP NetWeaver 程式庫。 然後根據 SAP 附註,安裝 SAP NetWeaver RFC SDK 中包含的所有檔案。 SAP NetWeaver 程式庫也隨附於 SAP 用戶端工具安裝。

提示

若要對 SAP BW 的連線問題進行疑難排解,請確定:

  • 所有從 NetWeaver RFC SDK 解壓縮的所有相依性程式庫都位於 %windir%\system32 資料夾中。 其中通常包含 icudt34.dll、icuin34.dll、icuuc34.dll、libicudecnumber.dll、librfc32.dll、libsapucum.dll、sapcrypto.dll、sapcryto_old.dll、sapnwrfc.dll。
  • 用來連線至 SAP 伺服器所需的連接埠會在自我裝載的 IR 機器上啟用,這通常是連接埠 3300 和 3201。

開始使用

若要透過管線執行複製活動,您可以使用下列其中一個工具或 SDK:

使用 UI 建立針對 SAP BW 的連結服務

使用下列步驟,在 Azure 入口網站 UI 中建立針對 SAP BW 的連結服務。

  1. 前往 Azure Data Factory 或 Synapse 工作區的 [管理] 索引標籤,選取 [連結服務],然後按一下 [新增]:

  2. 搜尋 SAP,然後選取 [SAP BW via MDX] \(透過 MDX 的 SAP BW\) 連接器。

    Select the SAP BW via MDX connector.

  3. 設定服務詳細資料,測試連線,然後建立新的連結服務。

    Configure a linked service to SAP BW.

連接器設定詳細資料

下列各節提供屬性的相關詳細資料,這些屬性是用來定義 SAP Business Warehouse 連接器專屬的 Data Factory 實體。

連結服務屬性

以下是針對 SAP Business Warehouse (BW) 已連結服務支援的屬性:

屬性 描述 必要
type 類型屬性必須設定為:SapBw Yes
伺服器 SAP BW 執行個體所在之伺服器的名稱。 Yes
systemNumber SAP BW 系統的系統編號。
允許的值:以字串表示的二位數十進位數字。
Yes
clientId SAP W 系統中用戶端的用戶端識別碼。
允許的值:以字串表示的三位數十進位數字。
Yes
userName 能夠存取 SAP 伺服器的使用者名稱。 Yes
password 使用者的密碼。 將此欄位標記為 SecureString 以便安全儲存,或參考 Azure Key Vault 中儲存的祕密 Yes
connectVia 用於連線到資料存放區的 Integration Runtime。 如必要條件所述,必須要有一個「自我裝載 Integration Runtime」。 Yes

範例:

{
    "name": "SapBwLinkedService",
    "properties": {
        "type": "SapBw",
        "typeProperties": {
            "server": "<server name>",
            "systemNumber": "<system number>",
            "clientId": "<client id>",
            "userName": "<SAP user>",
            "password": {
                "type": "SecureString",
                "value": "<Password for SAP user>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

資料集屬性

如需可用來定義資料集的區段和屬性完整清單,請參閱資料集一文。 本節提供 SAP BW 資料集所支援的屬性清單。

若要從 SAP BW 複製資料,請將資料集的類型屬性設定為 [SapBwCube]。 針對 RelationalTable 類型的 SAP BW 資料集,不支援任何類型特定的屬性。

範例:

{
    "name": "SAPBWDataset",
    "properties": {
        "type": "SapBwCube",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<SAP BW linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

如果您使用 RelationalTable 具型別資料集,雖然仍照現狀支援,但建議您往後使用新的版本。

複製活動屬性

如需可用來定義活動的區段和屬性完整清單,請參閱管線一文。 本節提供 SAP BW 來源所支援的屬性清單。

SAP BW 作為來源

若要從 SAP BW 複製資料,複製活動的 [source] 區段中支援下列屬性:

屬性 描述 必要
type 複製活動來源的 type 屬性必須設為:[SapBwSource] Yes
query 指定 MDX 查詢從 SAP BW 執行個體讀取資料。 Yes

範例:

"activities":[
    {
        "name": "CopyFromSAPBW",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<SAP BW input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "SapBwSource",
                "query": "<MDX query for SAP BW>"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

如果您使用 RelationalSource 具型別來源,雖然仍照現狀支援,但建議您往後使用新的版本。

SAP BW 的資料類型對應

從 SAP BW 複製資料時,會使用下列從 SAP BW 資料類型到服務中內部使用之過渡期資料類型的對應。 請參閱結構描述和資料類型對應,以了解複製活動如何將來源結構描述和資料類型對應至接收器。

SAP BW 資料類型 過渡期服務資料類型
ACCP int
CHAR String
CLNT String
CURR Decimal
CUKY String
DEC Decimal
FLTP Double
INT1 Byte
INT2 Int16
INT4 int
LANG String
LCHR String
LRAW Byte[]
PREC Int16
QUAN Decimal
RAW Byte[]
RAWSTRING Byte[]
字串 String
UNIT String
DATS String
NUMC String
TIMS String

查閱活動屬性

若要了解屬性的詳細資料,請參閱查閱活動

如需複製活動支援作為來源和接收器的資料存放區清單,請參閱支援的資料存放區