

# 从 Instagram Ads 实体中读取
<a name="instagram-ads-reading-from-entities"></a>

**先决条件**

您要从中读取内容的 Instagram Ads 对象。您将需要对象名称。下表显示支持的实体。

**源支持的实体**：


| 实体 | 可以筛选 | 支持限制 | 支持排序依据 | 支持 Select \$1 | 支持分区 | 
| --- | --- | --- | --- | --- | --- | 
| 活动 | 支持 | 是 | 否 | 是 | 是 | 
| 广告集 | 支持 | 是 | 否 | 是 | 是 | 
| 广告 | 支持 | 是 | 否 | 是 | 是 | 
| 广告创意 | 否 | 是 | 否 | 是 | 否 | 
| 洞察 – 账户 | 否 | 是 | 否 | 是 | 否 | 
| 广告图片 | 支持 | 是 | 否 | 是 | 否 | 
| 洞察 – 广告 | 支持 | 是 | 否 | 是 | 是 | 
| 洞察 – 广告组 | 支持 | 是 | 否 | 是 | 是 | 
| 洞察 – 活动 | 支持 | 是 | 否 | 是 | 是 | 

**示例：**

```
instagramAds_read = glueContext.create_dynamic_frame.from_options(
    connection_type="instagramads",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "entityName",
        "API_VERSION": "v20.0"
    }
```

## Instagram Ads 实体和字段详细信息
<a name="instagram-ads-reading-entity-and-field-details"></a>

有关实体和字段详细信息的更多信息，请参阅：
+ [活动](https://developers.facebook.com/docs/marketing-api/reference/ad-campaign-group)
+ [广告集](https://developers.facebook.com/docs/marketing-api/reference/ad-campaign)
+ [广告](https://developers.facebook.com/docs/marketing-api/reference/adgroup)
+ [广告创意](https://developers.facebook.com/docs/marketing-api/reference/ad-creative)
+ [广告账户洞察](https://developers.facebook.com/docs/marketing-api/reference/ad-account/insights)
+ [广告图片](https://developers.facebook.com/docs/marketing-api/reference/ad-image)
+ [广告洞察](https://developers.facebook.com/docs/marketing-api/reference/adgroup/insights/)
+ [广告组洞察](https://developers.facebook.com/docs/marketing-api/reference/ad-campaign/insights)
+ [活动洞察](https://developers.facebook.com/docs/marketing-api/reference/ad-campaign-group/insights)

有关更多信息，请参阅 [Marketing API](https://developers.facebook.com/docs/marketing-api/reference/v21.0)。

**注意**  
在连接器的响应中，结构和列表数据类型将转换为字符串数据类型。

## 对查询进行分区
<a name="instagram-ads-reading-partitioning-queries"></a>

如果您想在 Spark 中利用并发，可以提供其他 Spark 选项：`PARTITION_FIELD`、`LOWER_BOUND`、`UPPER_BOUND` 和 `NUM_PARTITIONS`。使用这些参数，原始查询将被拆分为 `NUM_PARTITIONS` 个子查询，这些子查询可以由 Spark 任务同时执行。
+ `PARTITION_FIELD`：用于对查询进行分区的字段的名称。
+ `LOWER_BOUND`：所选分区字段的**包含**下限值。

  对于日期时间字段，我们接受 Spark SQL 查询中使用的 Spark 时间戳格式。

  有效值示例：

  ```
  "2022-01-01T00:00:00.000Z"
  ```
+ `UPPER_BOUND`：所选分区字段的**排除**上限值。

  有效值示例：

  ```
  "2024-01-02T00:00:00.000Z"
  ```
+ `NUM_PARTITIONS`：分区的数量。

示例：

```
instagramADs_read = glueContext.create_dynamic_frame.from_options(
    connection_type="instagramads",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "entityName",
        "API_VERSION": "v20.0",
        "PARTITION_FIELD": "created_time"
        "LOWER_BOUND": "2022-01-01T00:00:00.000Z"
        "UPPER_BOUND": "2024-01-02T00:00:00.000Z"
        "NUM_PARTITIONS": "10"
    }
```