汎用フィードの SFTP サーバーでは、環境ごとに 1 つの SFTP サーバーに複数のフィードタイプをアップロードできます。このガイドでは、汎用 SFTP サーバーの使用方法について説明し、使用する予定の各フィードの適切なガイドへのリンクを提供します。
(ドキュメントのフィードのエクスポート(エンドツーエンド)またはフィード(スターター)のセクションを参照してください)。汎用 SFTP サーバーは、2 つの別々のアップロードがあることを前提としています。
- 記述子ファイル: アップロードするフィードの種類を記述します。
- フィード ファイル: 実際のフィードの内容
記述子フィールドの構造化
記述子ファイルは、アップロードするフィードのタイプをシステムに通知するためにアップロードされます。これにより、フィードを正しく検証して処理できます。記述子ファイルは、フィード コンテンツの前にアップロードする必要があります。また、次の命名規則に準拠する必要があります。
- 記述子ファイルには
.filesetdesc.jsonファイル拡張子を使用する必要があります。 - 各記述子ファイル名は一意である必要があり、アップロード間で再利用することはできません。ファイル名に生成タイムスタンプとフィード名を含めることをおすすめします。
- 例: offers_1524606581.filesetdesc.json
- 各記述子ファイルには、関連するフィード名の最新のフィードに含まれるすべてのデータファイルをリストする必要があります。
message FilesetDescriptor { // The timestamp at which this feed was generated, in Unix time format // (seconds since the epoch). (required) int64 generation_timestamp = 1; // Identifies the name of this feed. (required) string name = 2; // Paths (relative to the dropbox root) specifying data files included in this // feed. (required) repeated string data_file = 3; }
name フィールドに指定できる値は次のとおりです。
- reservewithgoogle.entity
- google.offer
2 つのシャードを含む商品フィードの JSON 記述子ファイルの例を次に示します。
{
"generation_timestamp": 1524606581,
"name": "google.offer",
"data_file": [
"offers_1524606581_1.json",
"offers_1524606581_2.json"
]
}フィード コンテンツの構造化
記述子ファイルをアップロードしたら、記述子ファイルで指定されたフィード構成ファイルに対応するフィード データタイプのすべてのフィードファイルをアップロードします。ファイル名とパスの場所(SFTP サーバー内の相対パス)は、data_file フィールドに含まれているものと完全に一致している必要があります。ファイルが欠落している場合、名前が正しくない場合、または別の場所にアップロードされている場合、フィード全体が処理されません。
これらのフィード データファイルの内容は、記述子ファイルで指定されたフィードの関連仕様に準拠している必要があります。
各フィード ファイルのファイル名は一意である必要があり、アップロード間で再利用することはできません。ファイル名に生成タイムスタンプとシャード番号(通し番号 ID)を含めることをおすすめします。
- 例: offers_1524606581_1.json
フィード ファイルのサイズとアップロード頻度
- (圧縮後の)フィード ファイルのサイズは 200 MB 未満に抑えます。
- 解凍後の各データファイルのサイズは 2 GB 未満にする必要があります。
- ほとんどの統合では、単一のシャードのみを使用する必要があります。シャードの数はできるだけ少なくする必要があります。1 個のフィードにつき使用できるシャードは最大 1,000 個です。
- 1 つのシャードで送信された個々のレコードを、今後のフィードの同じシャード番号で送信する必要はありません。
- パフォーマンスを向上させるには、シャード間でデータを均等に分割し、すべてのシャード ファイルを同じくらいのサイズにします。
- 必要に応じて、gzip を使用してフィードを圧縮します。ただし、その場合には個々のフィード シャードごとに行ってください。
トラブルシューティングとデバッグ
ファイル(記述子ファイルとフィード ファイル)をアップロードしたら、パートナー ポータルの取り込みビューア(ドキュメント)に移動し([取り込み] > [履歴] に移動)、フィードの取り込みの進行状況を確認します。
[フィード名] 列で、記述子ファイルに入力した name を探してフィードを見つけます。
フィードが取り込まれると(ステータスが Success または Fail になると)、その行をクリックしてエラーと警告の詳細を確認できます。