设置 Openflow Connector for LinkedIn Ads

备注

使用该连接器需遵守 连接器条款

本主题介绍设置 Openflow Connector for LinkedIn Ads 的步骤。

先决条件

  1. 确保您已查看 关于 Openflow Connector for LinkedIn Ads

  2. 确保您已 设置 Openflow

获取凭据

  1. 作为 LinkedIn Ads 用户,执行以下任务:

    1. 可选:如果您没有用于投放和管理广告系列的广告账户,请创建一个 (link removed)。

    2. 确保 用户账户 (link removed) 在广告账户中至少有一个 VIEWER 角色。

    3. 使用该用户账户申请 Advertising API 访问权限。有关更多信息,请参阅 Microsoft 快速入门 (https://learn.microsoft.com/en-us/linkedin/marketing/quick-start?view=li-lms-2025-02#step-1-apply-for-api-access)。

    4. 获取 刷新令牌 (https://learn.microsoft.com/en-us/linkedin/shared/authentication/developer-portal-tools?context=linkedin%2Fcontext#generate-a-token-in-the-developer-portal)。使用 3-legged oAuthr_ads_reporting 范围。

    5. 从 LinkedIn 开发者门户获取客户端 ID、客户端密钥。可以在 App Details (link removed) 的 Auth 选项卡中找到这些凭据。

设置 Snowflake 账户

作为 Snowflake 账户管理员,执行以下任务:

  1. 创建新角色或使用现有角色。

  2. 创建一个类型为 SERVICE 的新 Snowflake 服务用户。

  3. 向该 Snowflake 服务用户授予您在前面步骤中创建的角色。

  4. 为第 2 步中创建的 Snowflake SERVICE 用户配置 密钥对身份验证

  5. Snowflake 强烈建议执行此步骤。配置 Openflow 支持的密钥管理器(例如 AWS、Azure 和 Hashicorp),并将公钥和私钥存储在密钥存储库中。

    备注

    如果您出于任何原因不希望使用密钥管理器,则您有责任根据组织的安全策略保护用于密钥对身份验证的公钥和私钥文件。

  6. 配置密钥管理器后,确定如何对其进行身份验证。在 AWS 中,建议您使用与 Openflow 关联的 EC2 实例角色,因为这样就无需保留其他密钥。

  7. 在 Openflow 中,从右上角的汉堡菜单中配置与此密钥管理器关联的参数提供商。导航到 Controller Settings » Parameter Provider,然后提取您的参数值。

  8. 此时,可以使用关联的参数路径引用所有凭据,无需在 Openflow 中保留敏感值。

  9. 如果任何其他 Snowflake 用户需要访问连接器引入的原始文档和表(例如,在 Snowflake 中进行自定义处理),则授予这些用户在步骤 1 中创建的角色。

  10. 在 Snowflake 中为连接器创建数据库和架构,以存储引入的数据。向第一步中创建的角色授予所需的 数据库权限。用实际值替换角色占位符,然后使用以下 sql 命令:

    CREATE DATABASE linkedin_destination_db;
    CREATE SCHEMA linkedin_destination_db.linkedin_destination_schema;
    GRANT USAGE ON DATABASE linkedin_destination_db TO ROLE <linkedin_connector_role>;
    GRANT USAGE ON SCHEMA linkedin_destination_db.linkedin_destination_schema TO ROLE <linkedin_connector_role>;
    GRANT CREATE TABLE ON SCHEMA linkedin_destination_db.linkedin_destination_schema TO ROLE <linkedin_connector_role>;
    
    Copy
  11. 创建供连接器使用的仓库,或者使用现有仓库。从最小的仓库规模开始,然后根据要复制的表数量和传输的数据量来测试规模。相较于扩大仓库规模,采用 多集群仓库 通常能更有效地应对海量表数量的扩展需求。

  12. 确保具有连接器所用角色的用户具备使用仓库所需的权限。否则请向该角色授予所需权限。

    CREATE WAREHOUSE linkedin_connector_warehouse WITH WAREHOUSE_SIZE = 'X-Small';
    GRANT USAGE ON WAREHOUSE linkedin_connector_warehouse TO ROLE <linkedin_connector_role>;
    
    Copy

设置连接器

作为数据工程师,执行以下任务以安装和配置连接器:

安装连接器

  1. 在 Snowflake 中为连接器创建数据库和架构,以存储引入的数据。向第一步中创建的角色授予所需的 数据库权限。用实际值替换角色占位符,然后使用以下 SQL 命令:

    CREATE DATABASE DESTINATION_DB;
    CREATE SCHEMA DESTINATION_DB.DESTINATION_SCHEMA;
    GRANT USAGE ON DATABASE DESTINATION_DB TO ROLE <CONNECTOR_ROLE>;
    GRANT USAGE ON SCHEMA DESTINATION_DB.DESTINATION_SCHEMA TO ROLE <CONNECTOR_ROLE>;
    GRANT CREATE TABLE ON SCHEMA DESTINATION_DB.DESTINATION_SCHEMA TO ROLE <CONNECTOR_ROLE>;
    
    Copy
  1. 导航到 Openflow“Overview”页面。在 Featured connectors 部分中,选择 View more connectors

  2. 在 Openflow 连接器页面上,找到连接器并选择 Add to runtime

  3. Select runtime 对话框中,从 Available runtimes 下拉列表中选择您的运行时。

  4. 选择 Add

    备注

    在安装连接器之前,请确保在 Snowflake 中为连接器创建了数据库和架构,用于存储引入的数据。

  5. 使用您的 Snowflake 账户凭据对部署进行身份验证,并在系统提示时选择 Allow,以允许运行时应用程序访问您的 Snowflake 账户。连接器安装过程需要几分钟才能完成。

  6. 使用您的 Snowflake 账户凭据进行运行时身份验证。

此时将显示 Openflow 画布,其中添加了连接器进程组。

配置连接器

备注

每个进程组负责为单个报告配置提取数据。如需定期使用多个配置,请为每个报告配置创建一个单独的进程组。

  1. 右键点击导入的进程组并选择 Parameters

  2. 按照 流参数 中所述填充所需的参数值。

流参数

本节介绍您可以根据以下参数上下文配置的流参数:

  • Linkedin Ads 源参数:用于与 LinkedIn Ads API 建立连接。

  • Linkedin Ads 目标参数:用于与 Snowflake 建立连接。

  • Linkedin Ads 引入参数:包含来自其他两个参数上下文的所有参数,以及特定于给定进程组的其他参数。

    此参数上下文包含特定于引入的详细信息,因此您必须为每个新报告和进程组创建新的参数上下文。

Linkedin Ads 源参数

参数

描述

客户端 ID

在 LinkedIn 上注册的应用程序的客户端 ID

客户端密钥

与客户端 ID 相关的客户端密钥

刷新令牌

在应用程序注册过程完成后,用户会获得刷新令牌。他们将其与客户端 ID 和客户端密钥一起使用,以获取访问令牌。

令牌端点

在应用程序注册过程中,用户获取的令牌端点

Linkedin Ads 目标参数

参数

描述

目标数据库

用于永久保存数据的数据库。它必须已经存在于 Snowflake 中

目标架构

用于永久保存数据的架构。它必须已经存在于 Snowflake 中

Snowflake 账户标识符

Snowflake 账户名称格式为 [organization-name]-[account-name],数据永久保存在其中

Snowflake 身份验证策略

对 Snowflake 进行身份验证的策略。可能的值:SNOWFLAKE_SESSION_TOKEN – 当我们在 SPCS 上运行流时;KEY_PAIR – 当我们想使用私钥设置访问权限时

Snowflake 私钥

用于身份验证的 RSA 私钥。RSA 密钥必须按照 PKCS8 标准进行格式化,并具有标准的 PEM 头尾标记。请注意,必须定义 Snowflake 私钥文件或 Snowflake 私钥

Snowflake 私钥文件

该文件包含用于对 Snowflake 进行身份验证的 RSA 私钥,该私钥根据 PKCS8 标准进行格式化,并具有标准的 PEM 头尾标记。头标记行以 -----BEGIN PRIVATE 开头。选中 Reference asset 复选框,上传私钥文件。

Snowflake 私钥密码

与 Snowflake 私钥文件关联的密码

Snowflake 角色

查询执行期间使用的 Snowflake 角色

Snowflake 用户名

用于连接到 Snowflake 实例的用户名

Snowflake 仓库

用于运行查询的 Snowflake 仓库

Linkedin Ads 引入参数

下表列出了并非继承自其他参数上下文的参数:

参数

描述

报告名称

报告的唯一名称。它采用大写形式,并用作目标表名称。

开始日期

结果的时间粒度。可能的值如下:

  • ALL:在报告的整个时间范围内,结果组织到单一结果之中。

  • DAILY:结果按天分组。

  • MONTHLY:结果按月分组。

  • YEARLY:结果按年分组。

转换窗口

选择 DAILY 时间粒度后,在增量加载期间刷新数据的时间范围。例如,如果 转换时段 (link removed) 等于 30 天,则在 INCREMENTAL 加载期间,引入从上次成功引入的日期减去 30 天的那一天开始。

仅在选择 DAILY 时间粒度时必须指定。对于其他可能的时间粒度,例如 ALLMONTHLYYEARLY,使用 SNAPSHOT 引入策略。始终下载从开始日期到现在的数据,因此不需要使用转换时段。

转换时段可以是从 1 到 365 的任意数字。

衡量标准

以逗号分隔的指标列表。指标区分大小写。有关更多信息,请参阅 报告 (https://learn.microsoft.com/en-us/linkedin/marketing/integrations/ads-reporting/ads-reporting?view=li-lms-2025-03&tabs=http#metrics-available)。

pivotValuesdateRange 指标为强制性指标,连接器会自动包含它们。

最多可以指定 20 个指标,包括强制性指标。

透视

以逗号分隔的透视列表。可用透视如下:

  • Analytics Finder (https://learn.microsoft.com/en-us/linkedin/marketing/integrations/ads-reporting/ads-reporting?view=li-lms-2025-03&tabs=http#analytics-finder)

  • Statistics Finder (https://learn.microsoft.com/en-us/linkedin/marketing/integrations/ads-reporting/ads-reporting?view=li-lms-2025-03&tabs=http#statistics-finder)

指定零个或一个透视时,连接器使用 Analytics Finder;选择两个或三个透视时,连接器会切换到 Statistics Finder。您最多可以使用三个透视。

共享

以逗号分隔的共享 IDs。此参数可用于按共享 ID 筛选结果。

广告系列

以逗号分隔的广告系列 IDs 列表。此参数可用于按广告系列 ID 筛选结果。

广告系列组

以逗号分隔的广告系列组 IDs 列表。此参数可用于按广告系列组 ID 筛选结果。

账户

以逗号分隔的账户 IDs 列表。此参数可用于按账户 ID 筛选结果。

公司

以逗号分隔的公司 IDs 列表。此参数可用于按公司 ID 筛选结果。

目标数据库

可在其中创建目标表的目标数据库。它必须由用户创建。

目标架构

可在其中创建目标表的目标架构。它必须由用户创建。

备注

您必须指定至少一个筛选条件,即共享、广告系列、广告系列组、账户或公司。

运行流

  1. 右键点击“飞机”图标并选择 Enable all Controller Services

  2. 右键点击导入的进程组并选择 Start

    连接器开始数据引入。

语言: 中文