CSVファイルのインポート準備
この記事では、ファイルインポートデータソースを使用してファイルのインポートを成功させるための準備方法について説明します。
インポートするデータの準備
ファイルインポートデータソースでは、以下のタイプのデータセットの使用を推奨します:
- デモグラフィックデータ
- プロスペクトおよびリードデータ
- 過去の購入と返金
- オフラインのインタラクション(サポート、ダイレクトマーケティング、イベント参加など)
ファイルの効率的な処理を保証するために、大きなファイルは10万行ごとの小さなファイルに分割することを強く推奨します。大きなファイルサイズもサポートされていますが、50 MBを超えるファイルサイズはエラーの可能性が高まるため、推奨されません。
インポートされたデータを最大限に活用するために、CSVファイルの各行にデータを顧客に関連付ける一意の訪問IDを持つ列があることを確認してください。詳細については、Tealiumデータソースを使用した訪問識別を参照してください。
ファイル命名規則
SFTPまたはS3を通じてアップロードされた複数のファイルは、ファイル名のアルファベット順に処理されます。
ファイル名のプレフィックス
CSVファイルは次の名前形式を使用する必要があります:{prefix}_{version}.csv。この形式は以下の部分から構成されます:
| 形式 | 説明 |
|---|---|
prefix |
同じCSV列名を共有するファイル群のための一意の識別子。プレフィックスにはアンダースコアを含めることができますが、最後にアンダースコアを含めないでください。例:testまたはtest_file。 |
version |
(オプション) 同じCSV列名を持つ複数のファイルがある場合、この値はプレフィックスを持つファイルの一意の識別子を表します。通常、タイムスタンプ、バージョン番号、またはその両方です。例:test_20251225.csv、test_20251226.csv、test_2025-1227.csv。 |
CSVファイルバージョンを区別するためにバージョン番号を使用することを強く推奨します。
使用するファイル名のプレフィックスは一意でなければなりません。例えば、プレフィックスstore-transactionsとstore-transactions-returnsを使用すると、同じ初期プレフィックスstore-transactionsを共有しているため、予期しない結果が生じる可能性があります。
ファイル名の制限
ファイル名は以下のルールに従わなければなりません:
- ファイル名には、次の文字のみを含めることができます:文字(
a-zまたはA-Z)、数字(0-9)、ハイフン(-)、アンダースコア(_)、ピリオド(.)。 - ファイル名は大文字と小文字を区別します。例えば、
store-transactions_20230319-a.csvとStore-Transactions_20230319-a.csvは異なるファイルですので、混乱を避けるために小文字のファイル名を使用することをお勧めします。
ファイル名の例
複数のファイル
次の例は、2023年3月19日の店内購入をaとbの2つのファイルに分けたものです。
| プレフィックス | バージョン | ファイル名 |
|---|---|---|
storepurchases |
20230319-a |
storepurchases_20230319-a.csv |
storepurchases |
20230319-b |
storepurchases_20230319-b.csv |
複数のバージョン
次の例は、2023年3月14日と3月15日の店内返品の2つのファイルです。
| プレフィックス | バージョン | ファイル名 |
|---|---|---|
storereturns |
20230314 |
storereturns_20230314.csv |
storereturns |
20230315 |
storereturns_20230315.csv |
ファイルデータ形式
ファイルの整理
ファイルを整理する際には、以下のガイドラインに従うことをお勧めします:
- ファイルエンコーディング
UTF-8 (BOMエンコーディングなし)を推奨します。 - フィールドセパレータ
フィールドセパレータはカンマ(,)でなければなりません。 - 列名
- CSVファイルの最初の行にはファイルの列名が含まれている必要があります。その後の各行はイベントまたは訪問レコードを表し、少なくとも1つの訪問識別属性を含む必要があります。
- 列名にはハッシュ(
#)、キャレット(^)、または空白文字を含めることはできません。 - 列名は大文字と小文字を区別し、属性名と正確に一致する必要があります。
- 列の値
列の値は1,000文字を超えてはなりません。この制限を超える文字はトリミングされます。 - 列の順序
列の順序は問題ありませんが、訪問ID列を最初に配置することをお勧めします。 - 余分な/欠落している列
AudienceStream属性として構成されていない余分な列は無視されます。CSVファイルに存在しないマップされた列はスキップされます。 - 訪問IDごとに行をグループ化
各行には訪問ID列があり、ファイルには同じ訪問の複数の行が含まれる場合があります。インポートプロセスを最適化するために、同じ訪問IDを持つ行をグループ化する必要があります。 - 行の終わり
サポートされている行の終わりは、LF(ラインフィード)、CR(キャリッジリターン)、およびCR LF(キャリッジリターン ラインフィード)です。
データタイプの形式
以下のデータタイプを適切にフォーマットすることをお勧めします:
- カンマを含む値をダブルクォートで囲む
値にカンマ(,)が含まれている場合、CSV列の整合性を保つためにダブルクォートで囲む必要があります。すべての値をダブルクォートで囲むことをお勧めします。データ内のダブルクォート文字を示すためにダブルクォート("")を使用します。 - 文字列の配列形式
ファイル属性が文字列の配列にマップされる場合の例として次の形式を使用します:"[""one"",""two"",""three""]" - 数値の配列形式
ファイル属性が数値の配列にマップされる場合の例として次の形式を使用します:"[1.99,20.99]" - ブール値の配列形式
ファイル属性がブール値の配列にマップされる場合の例として次の形式を使用します:"[0, 1]","[0, 1]" - 日付の正規化
- ファイル内の特定のフィールドに対して、日付値は一貫している必要があります。
- 各日付値はその列に指定された形式と一致する必要があります。たとえば、期待される形式が
yyyy-MM-ddの場合、値には4桁の年と2桁の月と日の値が含まれている必要があります。例:2021-02-09。 - 次の日付コンポーネントがサポートされています:年、月、日、時、分、秒、ミリ秒、AM/PM、ISO、RFC、時代。サポートされている日付コンポーネントの詳細については、Java SimpleDateFormat Patternsを参照してください。
- Tealiumでは、日付はミリ秒単位のエポックタイムスタンプとして保存されます。
- 空の値の正規化
いくつかの行はすべての列に値を含んでいない場合があります。これらの列は空のままにして、“null”、“empty”、“blank"などのプレースホルダー値を含めないようにしてください。 - 通貨金額から特殊文字を省略
“OrderTotal"や"ProductPrice"などの通貨金額を表す列には、記号やカンマを含めてはいけません。
| 有効な値 | 無効な値 |
|---|---|
| 39.75 | $39.75 |
| 0 | zero |
| 1399.00 | €1.399,00 |
最終更新日 :: 2025年November月5日