

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# カスタムデータセットとスキーマ
<a name="custom-datasets-and-schemas"></a>

カスタムデータセットグループを作成する場合、独自のスキーマを最初から作成します。カスタムデータセットグループのデータセットとスキーマでは、必須フィールドは少ないですが、高い柔軟性があります。以下のトピックでは、カスタムデータセットグループのデータセットのスキーマとデータ要件について説明します。各データセットのセクションでは、データセットタイプに必要なデータが一覧表示され、スキーマの JSON の例が提供されます。

Amazon Personalize が使用できるデータの種類については、「[Amazon Personalize が使用できるデータの種類](datasets.md)」を参照してください。フォーマット要件や使用可能なフィールドデータ型など、Amazon Personalize スキーマの一般的な要件については、「[Amazon Personalize スキーマのスキーマ JSON ファイルの作成](how-it-works-dataset-schema.md)」を参照してください。これらの要件はすべての Amazon Personalize スキーマに適用されます。

**Topics**
+ [カスタムデータセットとスキーマの要件](#dataset-requirements)
+ [アイテムインタラクションデータセットスキーマの要件 (カスタム)](interactions-dataset-requirements.md)
+ [Users データセットスキーマの要件 (カスタム)](user-dataset-requirements.md)
+ [Items データセットスキーマの要件 (カスタム)](item-dataset-requirements.md)
+ [Actions データセットスキーマの要件 (カスタム)](action-dataset-requirements.md)
+ [Action インタラクションデータセットのスキーマ要件 (カスタム)](action-interactions-dataset-requirements.md)

## カスタムデータセットとスキーマの要件
<a name="dataset-requirements"></a>

カスタムデータセットグループのデータセットを作成する場合、各データセットタイプには、次の必須フィールドと、必須データタイプの予約済みキーワードがあります。


| データセットタイプ | 必須フィールド | 予約済みキーワード | 
| --- | --- | --- | 
| アイテムインタラクション ([スキーマの例](interactions-dataset-requirements.md#schema-examples-interactions)) |  USER\$1ID (`string`) ITEM\$1ID (`string`) TIMESTAMP (`long`)  |  EVENT\$1TYPE (`string`) EVENT\$1VALUE (`float`、`null`) IMPRESSION (`string`、`null`) RECOMMENDATION\$1ID (`string`、`null`) EVENT\$1ATTRIBUTION\$1SOURCE (`string`、`null`)  | 
| ユーザー ([スキーマの例](user-dataset-requirements.md#schema-examples-users)) |  USER\$1ID (`string`) 1 つのメタデータフィールド (カテゴリ別 `string` または数値)  |  | 
| アイテム ([スキーマの例](item-dataset-requirements.md#schema-examples-items)) |  ITEM\$1ID (`string`) 1 つのメタデータフィールド (カテゴリまたはテキスト `string` フィールドまたは数値フィールド)  |  CREATION\$1TIMESTAMP (`long`)  | 
| Actions ([スキーマの例](action-dataset-requirements.md#schema-examples-actions)) |  ACTION\$1ID (`string`) 1 つのメタデータフィールド (カテゴリ別 `string` または数値)  |  CREATION\$1TIMESTAMP (`long`) VALUE (`long`、`null`) TYPE (`string`、`null`) EXPIRATION\$1TIMESTAMP (`long`、`null`) REPEAT\$1FREQUENCY (`long`、`null`)  | 
| Action interactions ([スキーマの例](action-interactions-dataset-requirements.md#schema-examples-action-interactions)) |  USER\$1ID (`string`) ACTION\$1ID (`string`) EVENT\$1TYPE (`string`) TIMESTAMP (`long`)  |  IMPRESSION (`string`、`null`) RECOMMENDATION\$1ID (`string`、`null`)  | 

### メタデータフィールド
<a name="metadata-fields"></a>

メタデータには、必須ではない、または予約済みのキーワードを使用しない文字列または非文字列のフィールドが含まれます。メタデータスキーマには、次の制限があります。
+ ユーザー、アイテム、アクションのスキーマには、少なくとも 1 つのメタデータフィールドが必要です。
+ Users スキーマには最大 25 のメタデータフィールドを追加でき、Items スキーマには最大 100 のメタデータフィールドを追加でき、Actions スキーマには最大 10 のメタデータフィールドを追加できます。
+ タイプ `string` の独自のメタデータフィールドを追加する場合は、`categorical` 属性または `textual` 属性を含める必要があります (アイテムスキーマのみがテキスト属性のフィールドをサポートします)。それ以外の場合、Amazon Personalize は、モデルのトレーニング時にフィールドを使用しません。

### 予約済みキーワード
<a name="reserved-keywords"></a>

予約済みのキーワードはオプションの非メタデータフィールドです。これらのフィールドは、使用時に必須のデータ型としてフィールドを定義する必要があり、キーワードをデータに含める値として使用することができないため、予約済みとみなされます。予約済みカテゴリ文字列フィールドは `categorical` が `true` に設定されている必要がありますが、予約済み文字列フィールドはカテゴリに設定できません。予約済みキーワードは次のとおりです。
+ EVENT\$1TYPE: *クリック*と*ダウンロード*の両方など、1 つ以上のイベントタイプを持つアイテムインタラクションデータセットについては、`EVENT_TYPE` フィールドを使用します。EVENT\$1TYPE フィールドを `string` として定義する必要があり、カテゴリとして設定することはできません。
+ EVENT\$1VALUE: ユーザーが視聴した動画の割合など、イベントの値データを含むアイテムインタラクションデータセットについては、タイプ `float` とオプションで `null` を持つ `EVENT_VALUE` フィールドを使用します。
+  CREATION\$1TIMESTAMP: 各アイテムの作成日のタイムスタンプを持つ Items または Actions データセットについては、タイプ `long` の `CREATION_TIMESTAMP` フィールドを使用します。Amazon Personalize は、`CREATION_TIMESTAMP` データを使用してアイテムが存在するようになってからの期間を計算し、それに応じてレコメンデーションを調整します。「[作成のタイムスタンプデータ](items-datasets.md#creation-timestamp-data)」を参照してください。
+  IMPRESSION: 明示的なインプレッションデータを持つアイテムインタラクションデータセットについては、タイプ `String` およびオプションでタイプ `null` の `IMPRESSION` フィールドを使用します。インプレッションは、ユーザーが特定のアイテムを操作した (例えば、クリックや視聴した) ときに表示されたアイテムのリストです。詳細については、「[インプレッションデータ](interactions-datasets.md#interactions-impressions-data)」を参照してください。
+  RECOMMENDATION\$1ID: 以前のレコメンデーションを暗黙的なインプレッションデータとして使用するアイテムインタラクションデータセットについては、タイプ `String` およびオプションでタイプ `null` の `RECOMMENDATION_ID` フィールドを使用します。

  レコメンデーションを生成するときに暗黙的なインプレッションを使用するために、Amazon Personalize の `RECOMMENDATION_ID` フィールドを追加する必要はありません。それなしで [PutEvents](API_UBS_PutEvents.md) 操作で `recommendationId` を渡すことができます。詳細については、「[インプレッションデータ](interactions-datasets.md#interactions-impressions-data)」を参照してください。
+ VALUE: Actions データセットで、アクションの一部または全部に値がある場合には、スキーマに `VALUE` フィールドを追加します。そのタイプについては、`long` とオプションでタイプ `null` を使用します。アクションとそれらの値の詳細については、「[[Value data] (値のデータ)](actions-datasets.md#action-value-data)」を参照してください。
+ ACTION\$1EXPIRATION\$1TIMESTAMP: Actions データセットで、アクションの一部または全部に有効期限のタイムスタンプがある場合は、スキーマに `ACTION_EXPIRATION_TIMESTAMP` フィールドを追加します。そのタイプについては、`long` とオプションでタイプ `null` を使用します。有効期限タイムスタンプの詳細については、「[アクション有効期限のタイムスタンプデータ](actions-datasets.md#action-expiration-timestamp-data)」を参照してください。
+ REPEAT\$1FREQUENCY: Actions データセットで、アクションの一部または全部に頻度データがある場合には、スキーマに `REPEAT_FREQUENCY` フィールドを追加します。そのタイプについては、`long` とオプションでタイプ `null` を使用します。繰り返し頻度データの詳細については、「[繰り返し頻度データ](actions-datasets.md#action-repeat-frequency)」を参照してください。

# アイテムインタラクションデータセットスキーマの要件 (カスタム)
<a name="interactions-dataset-requirements"></a>

*アイテムインタラクションデータセット*は、ユーザーとアイテム間のインタラクションからの履歴データとリアルタイムデータをカタログに保存します。Amazon Personalize が使用できるインタラクションデータの種類については、「[アイテムインタラクションデータ](interactions-datasets.md)」を参照してください。

 各インタラクションに提供するデータは、スキーマと一致する必要があります。スキーマによっては、インタラクションメタデータに空/null 値を含めることができます。少なくとも、各インタラクションについて以下を入力する必要があります。
+ ユーザー ID
+ アイテム ID
+ タイムスタンプ (Unix エポック時間形式)

ユースケースとデータに応じて、さらにフィールドを追加することができます。フィールドが必須または予約済みとして記載されておらず、データ型が [スキーマのデータ型](how-it-works-dataset-schema.md#personalize-datatypes) に記載されている限り、フィールド名とデータ型は自由に設定できます。

 アイテムインタラクションデータセットに追加できるオプションのメタデータフィールドの最大合計数は、データ内の*個別の*イベントタイプの合計数と合わせて 10 です。このカウントに含まれるメタデータフィールドは、スキーマに追加するカスタムメタデータフィールドとともに、EVENT\$1TYPE、EVENT\$1VALUE フィールドです。IMPRESSION などの予約済みフィールドを除くメタデータフィールドの最大数は 5 です。カテゴリ値には、最大 1000 文字を使用できます。1000 を超えるカテゴリ値とのインタラクションがある場合、データセットのインポートジョブは失敗します。

アイテムインタラクションデータセットの最小要件と最大データ制限の詳細については、「[サービスクォータ](limits.md#limits-table)」を参照してください。

## インタラクションスキーマの例 (カスタム)
<a name="schema-examples-interactions"></a>

次の例は、アイテムインタラクションデータセットのスキーマを示しています。`USER_ID`、`ITEM_ID`、`TIMESTAMP` の各フィールドは必須です。`EVENT_TYPE`、`EVENT_VALUE`、`IMPRESSION` フィールドは Amazon Personalize によって認識されるオプションの予約済みキーワードです。EVENT\$1TYPE は文字列型でなければならず、カテゴリ型にすることはできません。`LOCATION` および `DEVICE` はオプションのコンテキストメタデータフィールドです。スキーマ要件については、「[カスタムデータセットとスキーマの要件](custom-datasets-and-schemas.md#dataset-requirements)」を参照してください。

```
{

  "type": "record",
  "name": "Interactions",
  "namespace": "com.amazonaws.personalize.schema",
  "fields": [
      {
          "name": "USER_ID",
          "type": "string"
      },
      {
          "name": "ITEM_ID",
          "type": "string"
      },
      {
          "name": "EVENT_TYPE",
          "type": "string"
      },
      {
          "name": "EVENT_VALUE",
          "type": [
             "float",
             "null"
          ]
      },
      {
          "name": "LOCATION",
          "type": "string",
          "categorical": true
      },
      {
          "name": "DEVICE",
          "type": [
              "string",
              "null"
          ],
          "categorical": true
      },
      {
          "name": "TIMESTAMP",
          "type": "long"
      },
      {
          "name": "IMPRESSION",
          "type": "string"
      }
  ],
  "version": "1.0"
}
```

このスキーマでは、CSV ファイルの履歴データの最初の数行は次のようになる場合があります。EVENT\$1VALUE の一部の値が null であることに注意してください。

```
USER_ID,ITEM_ID,EVENT_TYPE,EVENT_VALUE,LOCATION,DEVICE,TIMESTAMP,IMPRESSION
35,73,click,,Ohio,Tablet,1586731606,73|70|17|95|96|92|55|45|16|97|56|54|33|94|36|10|5|43|19|13|51|90|65|59|38
54,35,watch,0.75,Indiana,Cellphone,1586735164,35|82|78|57|20|63|1|90|76|75|49|71|26|24|25|6|37|85|40|98|32|13|11|54|48
9,33,click,,Oregon,Cellphone,1586735158,68|33|62|6|15|57|45|24|78|89|90|40|26|91|66|31|47|17|99|29|27|41|77|75|14
23,10,watch,0.25,California,Tablet,1586735697,92|89|36|10|39|77|4|27|79|18|83|16|28|68|78|40|50|3|99|7|87|49|12|57|53
27,11,watch,0.55,Indiana,Tablet,1586735763,11|7|39|95|71|1|6|40|41|28|99|53|68|76|0|65|69|36|22|42|34|67|24|20|66
...
...
```

# Users データセットスキーマの要件 (カスタム)
<a name="user-dataset-requirements"></a>

 *Users データセット*には、ユーザーに関するメタデータが保存されます。これには、各アイテムの年齢、性別、ロイヤルティメンバーシップなどの情報が含まれる場合があります。Amazon Personalize がインポートできるデータの種類については、「[ユーザーメタデータ](users-datasets.md)」を参照してください。

 各ユーザーに提供するデータは、スキーマと一致する必要があります。少なくとも、各ユーザーについてユーザー ID を指定する必要があります (最大長 256 文字)。スキーマによっては、ユーザーメタデータに空/null 値を含めることができます。ユーザースキーマには少なくとも 1 つのメタデータフィールドが必要ですが、`null` タイプを追加すると、ユーザーのこの値は null になる可能性があります。ユースケースとデータに応じて、さらにフィールドを追加することができます。フィールドが必須または予約済みとして記載されておらず、データ型が [スキーマのデータ型](how-it-works-dataset-schema.md#personalize-datatypes) に記載されている限り、フィールド名とデータ型は自由に設定できます。

 カテゴリデータを使用するには、タイプ `string` のフィールドを追加し、スキーマでフィールドのカテゴリ属性を `true` に設定します。その後、カテゴリデータをバルク CSV ファイルと個別レコードインポートに含めます。複数のカテゴリを持つユーザーについては、バーティカルバー「\$1」を使用して各値を区切ります。例えば、SUBSCRIPTION\$1MODEL フィールドについて、ユーザーのデータは student\$1monthly\$1discount である場合があります。

カテゴリ値には、最大 1,000 文字を使用できます。1,000 文字を超えるカテゴリ値を持つユーザーがいる場合、データセットのインポートジョブは失敗します。

Users データセットの最小要件と最大データ制限の詳細については、「[サービスクォータ](limits.md#limits-table)」を参照してください。

## ユーザースキーマの例 (カスタム)
<a name="schema-examples-users"></a>

次の例は、ユーザースキーマを構築する方法を示しています。`USER_ID` フィールドは必須であり、`AGE` および `GENDER` フィールドはメタデータです。少なくとも 1 つのメタデータフィールドが必要であり、最大 25 のメタデータフィールドを追加できます。スキーマ要件については、「[カスタムデータセットとスキーマの要件](custom-datasets-and-schemas.md#dataset-requirements)」を参照してください。

```
{
  "type": "record",
  "name": "Users",
  "namespace": "com.amazonaws.personalize.schema",
  "fields": [
      {
          "name": "USER_ID",
          "type": "string"
      },
      {
          "name": "AGE",
          "type": "int"
      },
      {
          "name": "GENDER",
          "type": "string",
          "categorical": true
      }
  ],
  "version": "1.0"
}
```

このスキーマでは、CSV ファイルの履歴データの最初の数行は次のようになる場合があります。

```
USER_ID,AGE,GENDER
5,34,Male
6,56,Female
8,65,Male
...
...
```

# Items データセットスキーマの要件 (カスタム)
<a name="item-dataset-requirements"></a>

 *Items データセット*には、カタログのアイテムに関するメタデータが保存されます。これには、各アイテムについての料金、ジャンル、利用可否などの情報が含まれる場合があります。Amazon Personalize がインポートできるデータの種類については、「[アイテムメタデータ](items-datasets.md)」を参照してください。

 各アイテム用に入力するデータは、Items データセットのスキーマと一致している必要があります。少なくとも、各アイテムについてアイテム ID を指定する必要があります (最大長 256 文字)。スキーマによっては、アイテムメタデータに空/null 値を含めることができます。スキーマには少なくとも 1 つのメタデータフィールドが必要ですが、`null` タイプを追加すると、アイテムのこの値は null になる可能性があります。ユースケースとデータに応じて、さらにフィールドを追加することができます。フィールドが必須または予約済みとして記載されておらず、データ型が [スキーマのデータ型](how-it-works-dataset-schema.md#personalize-datatypes) に記載されている限り、フィールド名とデータ型は自由に設定できます。

 カテゴリデータを使用するには、タイプ `string` のフィールドを追加し、スキーマでフィールドのカテゴリ属性を `true` に設定します。その後、カテゴリデータをバルク CSV ファイルと個別アイテムインポートに含めます。カテゴリ値には、最大 1,000 文字を使用できます。1,000 文字を超えるカテゴリ値を持つアイテムがある場合、データセットのインポートジョブは失敗します。

 複数のカテゴリを持つアイテムについては、バーティカルバー「\$1」を使用して各値を区切ります。例えば、GENRES フィールドについて、アイテムのデータは `Action|Crime|Biopic` である場合があります。複数のレベルのカテゴリデータがあり、一部のアイテムで階層内の各レベルに複数のカテゴリがあるアイテムがある場合は、各レベルにフィールドを追加し、フィールド名の後にレベルインジケータ GENRE\$1L2、GENRE\$1L2、GENRE\$1L2、GENRE\$1L3 を追加します。これにより、アイテムが複数のマルチレベルカテゴリに属している場合でも、サブカテゴリに基づいてレコメンデーションをフィルタリングできます (フィルタの作成と使用については、「[レコメンデーションとユーザーセグメントのフィルタリング](filter.md)」を参照してください)。例えば、動画にはカテゴリレベルごとに次のデータが含まれている場合があります。
+ GENRES: アクション\$1アドベンチャー
+ GENRE\$1L2: 犯罪\$1西部劇
+ GENRE\$1L3: バイオピック

*この例では、動画はアクション > 犯罪 > バイオピックの階層、および*アドベンチャー > ウエスタン > バイオピックの階層です。L3 まで使用することをお勧めしますが、必要に応じてもっと多くのレベルを使用できます。

モデルトレーニング中に、Amazon Personalize は最大 750,000 アイテムを考慮します。750,000 を超えるアイテムをインポートする場合、Amazon Personalize は、新しいアイテム (インタラクションなしで最近追加したアイテム) と最近のインタラクションデータを含む既存のアイテムを含めることに重点を置いて、トレーニングに含めるアイテムを決定します。

 Items データセットの最小要件と最大データ制限の詳細については、「[サービスクォータ](limits.md#limits-table)」を参照してください。

## Items データセットのスキーマの例 (カスタム)
<a name="schema-examples-items"></a>

次の例は、アイテムスキーマを構築する方法を示します。`ITEM_ID` フィールドは必須です。`GENRE` フィールドはカテゴリメタデータであり、`DESCRIPTION` フィールドはテキストメタデータです。少なくとも 1 つのメタデータフィールドが必要です。最大 100 個のメタデータフィールドを追加できます。`CREATION_TIMESTAMP` フィールドは予約済みのキーワードです。スキーマ要件については、「[カスタムデータセットとスキーマの要件](custom-datasets-and-schemas.md#dataset-requirements)」を参照してください。

```
{
  "type": "record",
  "name": "Items",
  "namespace": "com.amazonaws.personalize.schema",
  "fields": [
    {
      "name": "ITEM_ID",
      "type": "string"
    },
    {
      "name": "GENRES",
      "type": [
        "null",
        "string"
      ],
      "categorical": true
    },
    {
      "name": "CREATION_TIMESTAMP",
      "type": "long"
    },
    {
      "name": "DESCRIPTION",
      "type": [
        "null",
        "string"
      ],
      "textual": true
    }
  ],
  "version": "1.0"
}
```

このスキーマでは、CSV ファイルの履歴データの最初の数行は次のようになる場合があります。

```
ITEM_ID,GENRES,CREATION_TIMESTAMP,DESCRIPTION
1,Adventure|Animation|Children|Comedy|Fantasy,1570003267,"This is an animated movie that features action, comedy, and fantasy. Audience is children. This movie was released in 2004."
2,Adventure|Children|Fantasy,1571730101,"This is an adventure movie with elements of fantasy. Audience is children. This movie was release in 2010."
3,Comedy|Romance,1560515629,"This is a romantic comedy. The movie was released in 1999. Audience is young women."
4,Comedy|Drama|Romance,1581670067,"This movie includes elements of both comedy and drama as well as romance. This movie was released in 2020."
...
...
```

# Actions データセットスキーマの要件 (カスタム)
<a name="action-dataset-requirements"></a>

アクション**は、顧客に推奨できるエンゲージメントアクティビティです。アクションには、モバイルアプリのインストール、会員プロフィールの記入、ロイヤルティプログラムへの加入、プロモーションメールへの登録などがあります。*Actions データセット*には、アクションに関するデータが保存されます。Amazon Personalize にインポートできるアクションデータの種類については、「[アクションメタデータ](actions-datasets.md)」を参照してください。

 各アクションについて入力するデータは、Actions データセットのスキーマと一致している必要があります。スキーマによっては、アクションメタデータに空/null 値を含めることができます。

少なくとも、各アイテムについてアクション ID を指定する必要があります (最大長 256 文字)。スキーマには少なくとも 1 つのメタデータフィールドが必要ですが、`null` タイプを追加すると、アクションのこの値は null になる可能性があります。ユースケースとデータに応じて、さらにフィールドを追加できます。フィールドが必須または予約済みとして記載されておらず、データ型が [スキーマのデータ型](how-it-works-dataset-schema.md#personalize-datatypes) に記載されている限り、フィールド名とデータ型は自由に設定できます。

 カテゴリフィールドを追加するには、タイプ `string` のフィールドを追加し、スキーマでフィールドのカテゴリ属性を `true` に設定します。その後、カテゴリ別データをバルク CSV ファイルと個別のアクションインポートに含めます。カテゴリ値には、最大 1,000 文字を使用できます。1,000 文字を超えるカテゴリ値を持つアクションがある場合、データセットのインポートジョブは失敗します。

 Actions データセットの最小要件と最大データ制限の詳細については、「[サービスクォータ](limits.md#limits-table)」を参照してください。

## Actions データセットのスキーマの例 (カスタム)
<a name="schema-examples-actions"></a>

次の例は、Actions スキーマを構築する方法を示しています。`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
...
...
```

# Action インタラクションデータセットのスキーマ要件 (カスタム)
<a name="action-interactions-dataset-requirements"></a>

*Action インタラクションデータセット*は、*Actions データセット*内のユーザーとアクション間のインタラクションからの履歴データとリアルタイムデータを保存します。Amazon Personalize が使用できるデータの種類についての詳細は、「[アクションインタラクションデータ](action-interactions-datasets.md)」を参照してください。

 各インタラクションに提供するデータは、スキーマと一致する必要があります。スキーマによっては、インタラクションメタデータに空/null 値を含めることができます。少なくとも、スキーマには以下のものを含める必要があります。
+ USER\$1ID
+ ACTION\$1ID
+ TIMESTAMP
+ EVENT\$1TYPE

ユースケースとデータに応じて、さらにフィールドを追加できます。フィールドが必須または予約済みとして記載されておらず、データ型が [スキーマのデータ型](how-it-works-dataset-schema.md#personalize-datatypes) に記載されている限り、フィールド名とデータ型は自由に設定できます。

Action インタラクションデータセットの最小要件と最大データ制限の詳細については、「[サービスクォータ](limits.md#limits-table)」を参照してください。

## Action インタラクションデータセットのスキーマ例 (カスタム)
<a name="schema-examples-action-interactions"></a>

次の例は、必須フィールドのみを含む Action インタラクションデータセットのスキーマを示しています。一般的なスキーマの形式要件については、「[スキーマ形式の要件](how-it-works-dataset-schema.md#general-schema-requirements)」を参照してください。

```
{

  "type": "record",
  "name": "ActionInteractions",
  "namespace": "com.amazonaws.personalize.schema",
  "fields": [
      {
          "name": "USER_ID",
          "type": "string"
      },
      {
          "name": "ACTION_ID",
          "type": "string"
      },
      {
          "name": "EVENT_TYPE",
          "type": "string"
      },
      {
          "name": "TIMESTAMP",
          "type": "long"
      }
  ],
  "version": "1.0"
}
```

このスキーマでは、CSV ファイルの履歴データの最初の数行は次のようになる場合があります。

```
USER_ID,ACTION_ID,EVENT_TYPE,TIMESTAMP
35,73,Viewed,1586731606
54,35,Not taken,1586731609
9,33,Viewed,1586735158
23,10,Taken,1586735697
27,11,Taken,1586735763
...
...
```