设置 Openflow Connector for Meta Ads

备注

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

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

先决条件

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

  2. 确保您已 设置 Openflow

获取凭据

作为 Meta Ads 管理员,在您的 Meta Ads 账户中执行以下操作:

  1. 创建一个 Meta 应用程序 (https://developers.facebook.com/docs/development/create-an-app/),或确保您可以访问一个。

  2. 在 应用程序控制面板 (https://developers.facebook.com/apps) 中启用 Marketing API (https://developers.facebook.com/docs/marketing-api/get-started)。

  3. 生成一个 长效令牌 (https://developers.facebook.com/docs/facebook-login/guides/access-tokens/get-long-lived/)。

  4. 可选:通过 将应用访问类型 (https://developers.facebook.com/docs/marketing-api/overview/rate-limiting) 从 Standard access 更改为 Advanced access,提高 Ads Management Standard Access 的速率限制。启用 ads_readads_management 权限 (https://developers.facebook.com/docs/permissions/)。

设置 Snowflake 账户

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

  1. 创建新角色或使用现有角色并授予 数据库权限

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

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

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

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

    备注

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

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

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

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

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

  7. 指定一个仓库供连接器使用。从最小的仓库规模开始,然后根据要复制的表数量和传输的数据量来测试规模。相较于扩大仓库规模,采用 多集群仓库 通常能更有效地应对海量表数量的扩展需求。

设置连接器

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

安装连接器

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

    CREATE DATABASE META_ADS_DESTINATION_DB;
    CREATE SCHEMA META_ADS_DESTINATION_DB.META_ADS_DESTINATION_SCHEMA;
    GRANT USAGE ON DATABASE META_ADS_DESTINATION_DB TO ROLE <META_ADS_CONNECTOR_ROLE>;
    GRANT USAGE ON SCHEMA META_ADS_DESTINATION_DB.META_ADS_DESTINATION_SCHEMA TO ROLE <META_ADS_CONNECTOR_ROLE>;
    GRANT CREATE TABLE ON SCHEMA META_ADS_DESTINATION_DB.META_ADS_DESTINATION_SCHEMA TO ROLE <META_ADS_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. 按照 流参数 中所述填充所需的参数值。

流参数

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

Meta Ads 源参数

参数

描述

访问令牌

申请 Meta Ads Insights API 所需的令牌

Meta Ads 目标参数

参数

描述

目标数据库

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

目标架构

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

Snowflake 账户标识符

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

Snowflake 身份验证策略

对 Snowflake 进行身份验证的策略。可能的值:当您在 SPCS 上运行流时为 SNOWFLAKE_SESSION_TOKEN,当您想使用私钥设置访问权限时为 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 仓库

Meta Ads 引入参数

参数

描述

报告名称

用作目标表名称的报告的名称。该名称在目标架构中必须是唯一的。

报告对象 ID

从 Meta Ads 下载的对象的标识符。

列出不同对象 ID 的 API 参考:
  • 广告账户 (https://developers.facebook.com/docs/graph-api/reference/user/adaccounts)

  • 广告集 (https://developers.facebook.com/docs/marketing-api/reference/ad-account/adsets/)

  • 广告 (https://developers.facebook.com/docs/marketing-api/reference/ad-account/ads/)

  • 活动 (https://developers.facebook.com/docs/marketing-api/reference/ad-account/campaigns/)

报告引入策略

提取数据的模式,可以是快照模式或增量模式

Meta Ads 版本

用于下载报告的 Meta Ads API 的版本。允许的值:v22.0

报告级别

显示结果的聚合级别。

可能的值如下:
  • account

  • campaign

  • ad

  • adset

报告字段

以逗号分隔的报告字段列表

报告细分

以逗号分隔的报告细分列表。如需可用细分的完整列表,请点击 此处 (https://developers.facebook.com/docs/marketing-api/insights/breakdowns)。

报告时间增量

基于天数的聚合级别

可能的值如下:
  • 1 – 每天

  • 3 – 每 3 天

  • 7 – 每周

  • monthly – 每月

  • 90 – 每季度

  • all_days – 全天;请勿对结果进行分片处理

报告操作时间

操作时间统计数据

可能的值如下:
  • conversion – 基于转换日期的报告操作

  • impression – 基于曝光日期的报告操作

  • mixed – 转换和曝光之间的混合方法

报告点击归因窗口

“点击”操作的归因窗口

可能的值如下:
  • 1d_click

  • 7d_click

  • 28d_click

报告查看归因窗口

“查看”操作的归因窗口

可能的值如下:
  • 1d_view

  • 7d_view

  • 28d_view

报告安排

安排处理器创建报告的时间

报告开始日期

引入的起始日期。日期格式为 YYYY-MM-DD。

运行流

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

  2. 右键点击导入的进程组并选择 Start。连接器开始数据引入。

如何重置连接器

要将连接器完全重置为初始状态,请执行以下操作:

  1. 确保队列中没有其他 FlowFile。

  2. 停止所有处理器。

  3. 清除初始处理器的状态。

    1. 右键点击处理器 Create Meta Ads Report 并选择 View State

    2. 选择选项 Clear State。这会重置处理器的状态。

  4. 将目标表拖放到 Snowflake 中。

语言: 中文