分類セットファイル形式

分類セットは、分類データをアップロードするための複数のファイル形式をサポートしています。 各フォーマットには、データのアップロードを成功させるための特定の要件があります。

これらの仕様に従ってファイルが適切にフォーマットされたら、分類セットインターフェイスまたはAPIを介してデータをアップロードできます。 詳細なアップロード手順については、次を参照してください。

分類セットでは、次のファイル形式をサポートしています。

  • JSON:構造化データを含むJavaScript Object Notation ファイル
  • CSV: コンマ区切りの値ファイル
  • TSVまたはTAB: タブ区切りの値ファイル

一般的なファイル要件

すべてのファイル形式は、次の要件に準拠している必要があります。

  • ファイルエンコーディング:バイトオーダーマークなしでUTF-8を使用します。 Latin1 エンコーディングもサポートされています。
  • 文字制限:個々の分類値の上限は255 バイトです。
  • キー要件: キー値を空にしたり、空白のみを含めたりすることはできません。 重複するキーが存在する場合は、最後に発生したものが使用されます。
JSON形式の詳細

JSON ファイル形式は、JSON ライン(JSONL)の規則に従います。 ファイルには、行ごとに1つのJSON オブジェクトを含める必要があります。各オブジェクトは、1つの分類レコードを表します。

note
NOTE
JSON行の規則に従っていても、すべてのアップロードに.json ファイル拡張子を使用してください。 .jsonl拡張機能を使用すると、エラーが発生する可能性があります。

JSON構造

各JSON オブジェクトには、次を含める必要があります。

  • key (必須):分類レコードの一意のID

  • data (更新に必要):分類列名とその値を含むオブジェクト

  • action (オプション):実行するアクション。 次の値がサポートされています。

    • update (アクションが指定されていない場合の既定のアクション)
    • delete-field
    • delete-key
  • enc (オプション): データエンコーディングの仕様。 次の値がサポートされています。

    • utf8またはUTF8 (既定値)
    • latin1 またはLATIN1

すべてのJSON フィールド名(keydataactionenc)では、大文字と小文字が区別されます。

JSON検証ルール

  • key フィールドは必須です。nullまたは空にすることはできません。
  • update アクションの場合、data フィールドは必須です。空にすることはできません。
  • delete-field アクションの場合、data フィールドには削除するフィールドを含める必要があります。
  • delete-key アクションの場合、data フィールドは存在しない必要があります。
  • サポートされるエンコーディング値では、大文字と小文字が区別されず、標準文字列名が含まれます。

JSONの例

JSON ファイル内のJSON レコードの例をいくつか示します。

基本的な更新レコード

code language-json
{"key": "product123", "data": {"Product Name": "Basketball Shoes", "Brand": "Brand A", "Category": "Sports"}}

エンコーディングを指定して更新

code language-json
{"key": "product456", "enc": "utf8", "data": {"Product Name": "Running Shoes", "Brand": "Brand B"}}

特定のフィールドの削除

code language-json
{"key": "product789", "action": "delete-field", "data": {"Brand": null, "Category": null}}

キー全体を削除

code language-json
{"key": "product999", "action": "delete-key"}
CSV形式の詳細

CSV (コンマ区切り値)ファイルでは、分類データフィールドを区切るためにコンマを使用します。

CSV構造

  • ヘッダー行:最初の行には列ヘッダーを含める必要があり、最初の列はキー列である必要があります。 後続の列は、分類セットスキーマの名前と一致する必要があります
  • データ行:後続の各行には分類データが含まれています
  • 区切り記号: フィールドはコンマで区切られます
  • 引用: コンマ、引用符、または改行を含むフィールドは、二重引用符で囲む必要があります

CSV形式ルール

  • コンマを含むフィールドは、二重引用符で囲む必要があります。
  • 二重引用符を含むフィールドは、二重引用符("")をエスケープする必要があります。
  • 空のフィールドは、その分類のnull値を表します。
  • フィールドの前後のスペースは自動的にトリミングされます。
  • 引用符で囲まれたフィールド内の特殊文字(タブ、改行)は保持されます。

CSV削除操作

  • 任意のフィールドで~deletekey~を使用して、キー全体とそのすべての分類データを削除します
  • 特定のフィールドで~empty~を使用して、それらの分類値のみを削除します(他のフィールドはそのままになります)
  • ~empty~を使用する場合、同じファイル内の更新と削除を混在させることができます

CSVの例

CSV ファイル内のCSV レコードの例をいくつか示します。

基本的な分類データ

code language-csv
Key,Product Name,Brand,Category,Price
product123,"Basketball Shoes",Brand A,Sports,89.99
product456,"Running Shoes",Brand B,Sports,79.99
product789,"Winter Jacket",Brand C,Clothing,149.99

キー全体を削除

code language-csv
Key,Product Name,Brand,Category,Price
product999,~deletekey~,,,

特定のフィールドを削除(更新と混在)

code language-csv
Key,Product Name,Brand,Category,Price
product123,"Updated Product Name",Brand A,Sports,89.99
product456,,~empty~,~empty~,79.99
TSVおよびTAB形式の詳細

TSV (タブ区切り値)およびTAB ファイルは、分類データフィールドを区切るためにタブ文字を使用します。

TSVとTABの構造

  • ヘッダー行:最初の行には列ヘッダーを含める必要があり、最初の列はキー列である必要があります。 後続の列は、分類セットスキーマの名前と一致する必要があります。
  • データ行:後続の各行には分類データが含まれます。
  • 区切り記号: フィールドはタブ文字(\t)で区切られます。
  • 引用:通常、引用符は必要ありませんが、一部の実装では引用符で囲まれたフィールドをサポートしています。

TSVとTABの書式設定ルール

  • フィールドは、1つのタブ文字で区切られます。
  • 空のフィールド(連続したタブ)はnull値を表します。
  • 通常、特別な見積もりは必要ありません。
  • 先頭と末尾のスペースは保持されます。
  • フィールド内の改行文字は避ける必要があります。

TSVおよびTABの削除操作

  • 任意のフィールドで~deletekey~を使用して、キー全体とそのすべての分類データを削除します。
  • 特定のフィールドで~empty~を使用して、それらの分類値のみを削除します(他のフィールドはそのままになります)。
  • ~empty~を使用する場合、同じファイル内の更新と削除を混在させることができます。

TSVとTABの例

TSVまたはTAB ファイル内のTSVまたはTAB区切りレコードの例。

基本的な分類データ

code language-tsv
Key    Product Name    Brand    Category    Price
product123    Basketball Shoes    Brand A    Sports    89.99
product456    Running Shoes    Brand B    Sports    79.99
product789    Winter Jacket    Brand C    Clothing    149.99

キー全体を削除

code language-tsv
Key    Product Name    Brand    Category    Price
product999    ~deletekey~

特定のフィールドを削除(更新と混在)

code language-tsv
Key    Product Name    Brand    Category    Price
product123    Updated Product Name    Brand A    Sports    89.99
product456        ~empty~    ~empty~    79.99

エラー処理

ファイルをアップロードする際の一般的な問題と解決策:

一般的なファイル形式エラー

  • 無効なファイル形式:ファイル拡張子がコンテンツ形式(.json.csv.tsv、または.tab)と一致することを確認します。
  • 不明なヘッダー:列名は、分類セットスキーマと一致する必要があります(すべての形式に適用されます)。

JSON固有のエラー

  • キーは必須フィールドです:すべてのJSON レコードに空でない"key" フィールドが必要です(小文字、大文字と小文字を区別)。
  • データはaction=update​を使用する場合に必須フィールドです。JSON更新アクションには"data" フィールドを含める必要があります。
  • データはaction=delete-field​を使用する場合に必須フィールドです。JSON delete-field アクションでは、"data" フィールドで削除するフィールドを指定する必要があります。
  • action=delete-key を使用する場合、 データは存在してはなりません。JSON delete-key アクションに"data" フィールドを含めることはできません。
  • サポートされていないエンコーディング: "enc" フィールド (utf8UTF8latin1LATIN1)でサポートされているエンコーディング値のみを使用します。
  • 無効なJSON構文: JSON ファイルがJSONL規則に従って正しくフォーマットされていることを確認してください。 また、一般的なJSON形式、引用符の欠落、コンマ、角括弧などを確認します。

CSVおよびTSV固有のエラー

  • 最初の列はキーである必要があります: CSVまたはTSV ファイルに、最初にキー列を含む適切なヘッダー行があることを確認します。
  • 最低2つのヘッダー項目が必要です: CSVまたはTSV ファイルには、少なくともKey列と1つの分類列が必要です。
  • 最初のヘッダー列は「キー」と呼ぶ必要があります:最初の列ヘッダーは正確にKey (大文字と小文字を区別する)である必要があります。K
  • 空白ヘッダーは使用できません:すべてのCSV/TSV列ヘッダーには名前が必要です。
  • 列数がヘッダーと一致しませんでした:各CSV データ行またはTSV データ行には、ヘッダー行と同じ数のフィールドが必要です。
  • "形式が正しくないドキュメント: CSVの引用、TSV ファイル内の適切なタブの分離などを確認してください。

サイズ制限エラー

  • キーが最大サイズ​を超えています:個々のキーは255 バイトを超えることはできません。
  • 列値が最大サイズ​を超えています。個々の分類値は255 バイトを超えることはできません。

ベストプラクティス

  • ファイルサイズ: 50 MBは、ブラウザーおよびAPI アップロードの最大ファイルサイズです。
  • バッチ処理:大きなデータセットの場合は、小さなファイルに分割することを検討してください。
  • データ検証:大きなデータセットをアップロードする前に、小さなサンプルファイルでテストします。
  • バックアップ:ソースデータファイルのコピーを保持します。
  • 増分更新: JSON形式を使用して、個々のレコードの更新と削除を正確に制御します。
recommendation-more-help
analytics-help-components