

# 从 Slack 实体中读取
<a name="slack-reading-from-entities"></a>

 **先决条件** 
+  您要从中读取内容的 Slack 对象。

 **支持的实体** 


| 实体 | 可以筛选 | 支持限制 | 支持排序依据 | 支持 Select \* | 支持分区 | 
| --- | --- | --- | --- | --- | --- | 
| 对话 | 支持 | 是 | 否 | 是 | 是 | 

 **示例** 

```
slack_read = glueContext.create_dynamic_frame.from_options(
    connection_type="slack",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "conversations/C058W38R5J8"
    }
)
```

 **Slack 实体和字段详细信息** 


| 实体 | 字段 | 数据类型 | 支持的运算符 | 
| --- | --- | --- | --- | 
| 对话 | attachments | 列表 | NA | 
| 对话 | bot\_id | 字符串 | NA | 
| 对话 | blocks | 列表 | NA | 
| 对话 | client\_msg\_id | 字符串 | NA | 
| 对话 | is\_starred | 布尔值 | NA | 
| 对话 | last read | 字符串 | NA | 
| 对话 | latest\_reply | 字符串 | NA | 
| 对话 | reactions | 列表 | NA | 
| 对话 | replies | 列表 | NA | 
| 对话 | reply\_count | 整数 | NA | 
| 对话 | reply\_users | 列表 | NA | 
| 对话 | reply\_users\_count | 整数 | NA | 
| 对话 | subscribed | 布尔值 | NA | 
| 对话 | subtype | 字符串 | NA | 
| 对话 | 文本 | 字符串 | NA | 
| 对话 | team | 字符串 | NA | 
| 对话 | thread\_ts | 字符串 | NA | 
| 对话 | ts | 字符串 | EQUAL\_TO, BETWEEN, LESS\_THAN, LESS\_THAN\_OR\_EQUAL\_TO, GREATER\_THAN, GREATER\_THAN\_OR\_EQUAL\_TO | 
| 对话 | type | 字符串 | NA | 
| 对话 | 用户 | 字符串 | NA | 
| 对话 | inviter | 字符串 | NA | 
| 对话 | root | 结构体 | NA | 
| 对话 | is\_locked | 布尔值 | NA | 
| 对话 | 文件 | 列表 | NA | 
| 对话 | 房间 | 结构体 | NA | 
| 对话 | 上传 | 布尔值 | NA | 
| 对话 | display\_as\_bot | 布尔值 | NA | 
| 对话 | 渠道 | 字符串 | NA | 
| 对话 | no\_notifications | 布尔值 | NA | 
| 对话 | permalink | 字符串 | NA | 
| 对话 | pinned\_to | 列表 | NA | 
| 对话 | pinned\_info | 结构体 | NA | 
| 对话 | edited | 结构体 | NA | 
| 对话 | app\_id | 字符串 | NA | 
| 对话 | bot\_profile | 结构体 | NA | 
| 对话 | metadata | 结构体 | NA | 

 **对查询进行分区** 

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

   对于日期，我们接受 Spark SQL 查询中使用的 Spark 日期格式。有效值示例：`"2024-07-01T00:00:00.000Z"`。
+  `UPPER_BOUND`：所选分区字段的排除上限值。
+  `NUM_PARTITIONS`：分区的数量。

 基于实体的分区字段支持详细信息如下表中所示。


| 实体名称 | 分区字段 | 数据类型 | 
| --- | --- | --- | 
| 对话 | ts | 字符串 | 

 **示例** 

```
slack_read = glueContext.create_dynamic_frame.from_options(
    connection_type="slack",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "conversations/C058W38R5J8",
        "PARTITION_FIELD": "ts"
        "LOWER_BOUND": "2022-12-01T00:00:00.000Z"
        "UPPER_BOUND": "2024-09-23T15:00:00.000Z"
        "NUM_PARTITIONS": "2"
    }
)
```