使用 Azure 数据工厂或 Synapse Analytics 从 SAP Business Warehouse 复制数据

适用于:Azure 数据工厂 Azure Synapse Analytics

本文概述如何在 Azure 数据工厂和 Synapse Analytics 管道中使用复制活动从 SAP Business Warehouse (BW) 复制数据。 它是基于概述复制活动总体的复制活动概述一文。

提示

若要了解该服务对 SAP 数据集成方案的总体支持,请参阅使用 Azure 数据工厂进行 SAP 数据集成白皮书,其中包含有关每个 SAP 连接器的详细介绍、比较和指导。

支持的功能

此 SAP Business Warehouse 连接器支持以下功能:

支持的功能 IR
复制活动(源/-)
Lookup 活动

① Azure 集成运行时 ② 自承载集成运行时

有关复制活动支持作为源/接收器的数据存储列表,请参阅支持的数据存储表。

具体而言,此 SAP Business Warehouse 连接器支持:

  • SAP Business Warehouse 版本 7.x 。
  • 使用 MDX 查询从 InfoCubes 和 QueryCubes (包括 BEx 查询)复制数据。
  • 使用基本身份验证复制数据。

注意

SAP Business Warehouse 连接器当前不支持使用 MDX 的参数。 如果需要使用 MDX 参数进行筛选,可以考虑改为使用备用 SAP Open Hub 连接器

先决条件

若要使用此 SAP Business Warehouse 连接器,需要:

  • 设置自承载集成运行时。 有关详细信息,请参阅自承载集成运行时一文。
  • 在集成运行时计算机上安装 SAP NetWeaver 库 。 可以从 SAP 管理员处或直接从 SAP 软件下载中心获取 SAP Netweaver 库。 搜索“SAP Note #1025361” 获取最新版本的下载位置。 请确保选取与集成运行时安装匹配的 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、sapnwrfc.dll。
  • 用于连接 SAP 服务器的所需端口在自承载 IR 计算机上启用,通常是端口 3300 和 3201。

入门

若要使用管道执行复制活动,可以使用以下工具或 SDK 之一:

使用 UI 创建到 SAP BW 的链接服务

使用以下步骤在 Azure 门户 UI 中创建一个到 SAP BW 的链接服务。

  1. 浏览到 Azure 数据工厂或 Synapse 工作区中的“管理”选项卡,并选择“链接服务”,然后单击“新建”:

  2. 搜索“SAP”并选择“通过 MDX 的 SAP BW”连接器。

    选择“通过 MDX 的 SAP BW”连接器。

  3. 配置服务详细信息、测试连接并创建新的链接服务。

    配置到 SAP BW 的链接服务。

连接器配置详细信息

对于特定于 SAP Business Warehouse 连接器的数据工厂实体,以下部分提供了有关用于定义这些实体的属性的详细信息。

链接服务属性

SAP Business Warehouse (BW) 链接服务支持以下属性:

属性 描述 必需
type type 属性必须设置为:SapBw
server SAP BW 实例所驻留的服务器的名称。
systemNumber SAP BW 系统的系统编号。
允许值:用字符串表示的两位十进制数。
clientId SAP W 系统中的客户端的客户端 ID。
允许值:用字符串表示的三位十进制数。
userName 有权访问 SAP 服务器的用户名。
password 用户密码。 将此字段标记为 SecureString 以安全地存储它,或引用存储在 Azure Key Vault 中的机密
connectVia 用于连接到数据存储的集成运行时。 如先决条件中所述,需要自承载集成运行时。

示例:

{
    "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 复制数据,请将数据集的 type 属性设置为“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 复制活动 source 的 type 属性必须设置为:SapBwSource
查询 指定要从 SAP BW 实例读取数据的 MDX 查询。

示例:

"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 小数
CUKY String
DEC 小数
FLTP Double
INT1 Byte
INT2 Int16
INT4 int
LANG String
LCHR String
LRAW Byte[]
PREC Int16
QUAN 小数
RAW Byte[]
RAWSTRING Byte[]
STRING String
UNIT String
DATS String
NUMC String
TIMS String

查找活动属性

若要了解有关属性的详细信息,请查看 Lookup 活动

有关复制活动支持作为源和接收器的数据存储的列表,请参阅支持的数据存储