从 Salesforce Marketing Cloud 实体中读取
先决条件
您要从中读取内容的 Salesforce Marketing Cloud 对象。您将需要 Activity 或 Campaigns 等对象名称。下表显示支持的实体。
源支持的实体:
| 实体 | 接口 | 可以筛选 | 支持限制 | 支持排序依据 | 支持 SELECT * | 支持分区 |
|---|---|---|---|---|---|---|
| 事件通知回调 | REST | 否 | 否 | 否 | 是 | 否 |
| 种子列表 | REST | 否 | 是 | 否 | 是 | 否 |
| 设置 | REST | 支持 | 是 | 否 | 是 | 否 |
| 域验证 | REST | 支持 | 是 | 是 | 是 | 否 |
| 对象嵌套标签 | REST | 是 | 否 | 否 | 是 | 否 |
| 联系人 | REST | 否 | 是 | 否 | 是 | 否 |
| 事件通知订阅 | REST | 否 | 否 | 否 | 是 | 否 |
| 消息收发 | REST | 否 | 是 | 否 | 是 | 否 |
| 活动 | SOAP | 否 | 否 | 否 | 是 | 是 |
| 退回事件 | SOAP | 否 | 否 | 否 | 是 | 是 |
| 单击事件 | SOAP | 否 | 否 | 否 | 是 | 是 |
| 内容区域 | SOAP | 否 | 否 | 否 | 是 | 是 |
| 数据扩展 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 电子邮件 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 转发的电子邮件事件 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 转发电子邮件选择加入事件 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 链接 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 链接发送 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 列表 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 列出订阅用户 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 未发送的事件 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 公开事件 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 发送 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 已发送事件 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 订阅者 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 调查事件 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 取消订阅事件 | SOAP | 否 | 是 | 否 | 是 | 是 |
| 审计事件 | REST | 否 | 是 | 是 | 是 | 否 |
| 市场活动 | REST | 否 | 是 | 是 | 是 | 否 |
| 交互 | REST | 否 | 是 | 是 | 是 | 否 |
| 内容素材 | REST | 否 | 是 | 是 | 是 | 否 |
REST 的示例:
salesforcemarketingcloud_read = glueContext.create_dynamic_frame.from_options( connection_type="salesforcemarketingcloud", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "Campaigns", "API_VERSION": "v1", "INSTANCE_URL": "https://**********************.rest.marketingcloudapis.com" } )
SOAP 的示例:
salesforcemarketingcloud_read = glueContext.create_dynamic_frame.from_options( connection_type="salesforcemarketingcloud", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "Activity", "API_VERSION": "v1", "INSTANCE_URL": "https://**********************.soap.marketingcloudapis.com" } )
Salesforce Marketing Cloud 实体和字段详细信息:
下表描述 Salesforce Marketing Cloud 实体。REST 实体具有静态元数据,而 SOAP 实体具有动态元数据。
具有静态元数据的 REST 实体:
| 实体 | 字段 | 数据类型 | 支持的运算符 |
|---|---|---|---|
| 事件通知回调 | callbackId | 字符串 | |
| callbackName | 字符串 | ||
| url | 字符串 | ||
| maxBatchSize | 整数 | ||
| 状态 | 字符串 | ||
| statusReason | 字符串 | ||
| 种子列表 | id | 字符串 | |
| 名称 | 字符串 | ||
| description | 字符串 | ||
| activeSeedCount | 整数 | ||
| 设置 | customerKey | 字符串 | |
| 名称 | 字符串 | ||
| description | 字符串 | ||
| locationType | 字符串 | '=' | |
| awsFileTransferLocation | 结构体 | ||
| 域验证 | enterpriseId | 整数 | |
| 状态 | 字符串 | '=' | |
| domainType | 字符串 | '=' | |
| memberId | 整数 | ||
| emailSendTime | 日期时间 | ||
| 域 | 字符串 | ||
| isSendable | 布尔值 | ||
| 对象嵌套标签 | id | 整数 | |
| modifiedDate | 日期时间 | ||
| tags | 列表 | ||
| 名称 | 字符串 | ||
| description | 字符串 | ||
| parentId | 整数 | ||
| 联系人 | values | 列表 | |
| 事件通知订阅 | subscriptionName | 字符串 | |
| callbackId | 字符串 | ||
| callbackName | 字符串 | ||
| eventCategoryTypes | 列表 | ||
| filters | 列表 | ||
| url | 字符串 | ||
| maxBatchSize | 整数 | ||
| subscriptionId | 字符串 | ||
| 状态 | 字符串 | ||
| statusReason | 字符串 | ||
| 消息收发 | deliveryTime | 日期时间 | |
| id | 字符串 | ||
| messageId | 字符串 | ||
| 状态 | 字符串 | ||
| 到 | 结构体 | ||
| 交互 | 状态 | 字符串 | '=' |
| id | 字符串 | ||
| 键 | 字符串 | ||
| 名称 | 字符串 | ||
| lastPublishedDate | 日期时间 | ||
| description | 字符串 | ||
| version | 整数 | ||
| workflowApiVersion | 整数 | ||
| createdDate | 日期时间 | ||
| modifiedDate | 日期时间 | ||
| goals | 结构体 | ||
| stats | 结构体 | ||
| entryMode | 字符串 | ||
| defaults | 结构体 | ||
| executionMode | 结构体 | ||
| definitionId | 字符串 | ||
| 内容素材 | id | 整数 | |
| customerKey | String | ||
| objectId | 字符串 | ||
| contentType | 字符串 | ||
| assetType | 结构体 | ||
| 名称 | 字符串 | ||
| description | 字符串 | ||
| owner | 结构体 | ||
| createdDate | 日期时间 | ||
| createdBy | 结构体 | ||
| modifiedDate | 日期时间 | ||
| modifiedBy | 结构体 | ||
| thumbnail | 结构体 | ||
| category | 结构体 | ||
| meta | 结构体 | ||
| 视图 | 结构体 | ||
| availableViews | 结构体 | ||
| 数据 | 结构体 | ||
| legacyData | 结构体 | ||
| modelVersion | 整数 | ||
| 版本 | 整数 | ||
| Locked(已锁定) | 布尔值 | ||
| FileProperties | 结构体 | ||
| 标签 | 列表 | ||
| 内容 | 字符串 | ||
| 设计 | 字符串 | ||
| SuperContent | 字符串 | ||
| CustomFields | 结构体 | ||
| 数据块 | 结构体 | ||
| MinBlocks | 整数 | ||
| MaxBlocks | 整数 | ||
| 渠道 | 结构体 | ||
| AllowedBlocks | 列表 | ||
| 槽值 | 结构体 | ||
| BusinessUnitAvailability | 结构体 | ||
| sharingProperties | 结构体 | ||
| sharingProperties.sharedWith | 结构体 | ||
| sharingProperties.sharingType | 字符串 | ||
| 模板 | 结构体 | ||
| 文件 | 字符串 | ||
| GenerateFrom | 字符串 | ||
| 审计事件 | id | 整数 | |
| createdDate | 日期时间 | ||
| memberId | 整数 | ||
| enterpriseId | 整数 | ||
| employee | 结构体 | ||
| objectType | 结构体 | ||
| operation | 结构体 | ||
| object | 结构体 | ||
| transactionId | 字符串 | ||
| 市场活动 | id | 整数 | |
| createdDate | 日期时间 | ||
| modifiedDate | 日期时间 | ||
| 名称 | 字符串 | ||
| description | 字符串 | ||
| campaignCode | 字符串 | ||
| color | 字符串 | ||
| favorite | 布尔值 |
具有动态元数据的 SOAP 实体:
| 实体 | 数据类型 | 支持的运算符 |
|---|---|---|
| 活动 | 字符串 | LIKE,!=,= |
| 结构体 | ||
| 整数 | !=,=,>=,<=,<,> | |
| 双精度 | !=,=,>=,<=,<,> | |
| 布尔值 | !=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 退回事件 | 整数 | !=,=,>=,<=,<,> |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 字符串 | LIKE,!=,= | |
| 结构体 | ||
| 单击事件 | 整数 | !=,=,>=,<=,<,> |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 字符串 | LIKE,!=,= | |
| 结构体 | ||
| 内容区域 | 结构体 | |
| 字符串 | LIKE,!=,= | |
| 整数 | !=,=,>=,<=,<,> | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 布尔值 | !=,= | |
| 数据扩展 | 日期时间 | >=,<=,<,>,=,BETWEEN |
| 字符串 | LIKE,!=,= | |
| 电子邮件 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 布尔值 | !=,= | |
| 结构体 | ||
| 转发的电子邮件事件 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 转发的电子邮件选项 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 链接 | 整数 | !=,=,>=,<=,<,> |
| 链接发送 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 双精度 | !=,=,>=,<=,<,> | |
| 列表 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 列出订阅用户 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 未发送的事件 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 公开事件 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 发送 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 布尔值 | !=,= | |
| 结构体 | ||
| 已发送事件 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 订阅者 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 调查事件 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 结构体 | ||
| 取消订阅事件 | 整数 | !=,=,>=,<=,<,> |
| 字符串 | LIKE,!=,= | |
| 日期时间 | >=,<=,<,>,=,BETWEEN | |
| 布尔值 | !=,= | |
| 结构体 |
对查询进行分区
在 Salesforce Marketing Cloud 中,整数和日期时间数据类型字段支持基于字段的分区。
如果您想在 Spark 中利用并发,可以提供其他 Spark 选项:PARTITION_FIELD、LOWER_BOUND、UPPER_BOUND 和 NUM_PARTITIONS。使用这些参数,原始查询将被拆分为 NUM_PARTITIONS 个子查询,这些子查询可以由 Spark 任务同时执行。
PARTITION_FIELD:用于对查询进行分区的字段的名称。LOWER_BOUND:所选分区字段的包含下限值。对于时间戳字段,我们接受 Spark SQL 查询中使用的 Spark 时间戳格式。
有效值示例:
“2024-05-07T02:03:00.00Z"UPPER_BOUND:所选分区字段的排除上限值。NUM_PARTITIONS:分区的数量。
示例:
salesforcemarketingcloud_read = glueContext.create_dynamic_frame.from_options( connection_type="salesforcemarketingcloud", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "ListSubscriber", "API_VERSION": "v1", "PARTITION_FIELD": "CreatedDate", "LOWER_BOUND": "2023-09-07T02:03:00.000Z", "UPPER_BOUND": "2024-05-07T02:03:00.000Z", "NUM_PARTITIONS": "10" } )