

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 操作数据集架构要求（自定义）
<a name="action-dataset-requirements"></a>

*操作*是您可能需要向客户建议的交互活动。操作可能包括安装您的移动应用、填写会员资料、加入忠诚度计划或注册促销电子邮件。*操作数据集*存储有关您的操作的数据。有关您可以导入 Amazon Personalize 的操作数据类型的信息，请参阅[操作元数据](actions-datasets.md)。

 您为每个操作提供的数据必须与您的操作数据集架构相匹配。根据您的架构，操作元数据可以包含 empty/null 值。

您必须至少为每个物品提供一个操作 ID（最大长度为 256 个字符）。您的架构必须至少有一个元数据字段，但如果您添加 `null` 类型，则操作的这个值可以为空。您可以根据您的使用案例和数据添加其它字段。您可以选择字段名称和数据类型，除非字段列出为必需或保留，并且数据类型在[架构数据类型](how-it-works-dataset-schema.md#personalize-datatypes)中列出。

 要添加分类字段，请添加类型为 `string` 的字段，并在架构中将该字段的类别属性设置为 `true`。然后，将分类数据包含在批量 CSV 文件和各个操作导入中。分类值最多可以有 1000 个字符。如果操作的分类值超过 1000 个字符，则您的数据集导入作业将失败。

 有关操作数据集的最低要求和最大数据限制的更多信息，请参阅[服务配额](limits.md#limits-table)。

## 操作数据集架构示例（自定义）
<a name="schema-examples-actions"></a>

以下示例展示了如何构建操作架构。`ACTION_ID` 字段为必填项。`MEMBERSHIP_LEVEL` 字段是一个分类字符串字段。`VALUE`、`CREATION_TIMESTAMP` 和 `REPEAT_FREQUENCY` 字段是具有必需类型的保留关键字。您最多可添加 10 列。有关架构要求的信息，请参阅[自定义数据集和架构要求](custom-datasets-and-schemas.md#dataset-requirements)。

```
{
  "type": "record",
  "name": "Actions",
  "namespace": "com.amazonaws.personalize.schema",
  "fields": [
    {
      "name": "ACTION_ID",
      "type": "string"
    },
    {
      "name": "VALUE",
      "type": [
        "null",
        "long"
      ]
    },
    
    {
      "name": "MEMBERSHIP_LEVEL",
      "type": [
        "null",
        "string"
      ],
      "categorical": true
    },
    
    {
      "name": "CREATION_TIMESTAMP",
      "type": "long"
    },
    {
      "name": "REPEAT_FREQUENCY",
      "type": [
        "long",
        "null"
      ]
    }
  ],
  "version": "1.0"
}
```

对于此架构，CSV 文件中的前几行历史数据可能如下所示。

```
ACTION_ID,VALUE,MEMBERSHIP_LEVEL,CREATION_TIMESTAMP,REPEAT_FREQUENCY
1,10,Deluxe|Premium,1510003267,7
2,5,Basic,1580003267,7
3,5,Preview,1590003267,3
4,10,Deluxe|Platinum,1560003267,4
...
...
```