コネクタ同期パイプライン
SaaS Data Exportに基づいて構築された Adobe Commerce Optimizer Connector は、SaaS Data Export個のインデクサーによって収集されたデータをAdobe Commerce Optimizer個のCatalog Data Ingestion APIで必要な形式にマッピングし、認証、一括送信、およびスコープベースの同期制御を処理します。 以下の節では、その同期の仕組みについて説明します。
関連トピック:
-
統合のビジネス価値、主な機能、アーキテクチャについては、Commerce Optimizer Connector 概要 トピックを参照してください。
-
モジュールパッケージ名、フィード API エンドポイント、設定キーパスについては、 コネクタリファレンス を参照してください
同期の仕組み
次の図は、Adobe CommerceからCommerce OptimizerまでAdobe I/O Gatewayまでのデータ同期を示しています。
Adobe Commerceでカタログデータが変更されると、同期はこれらのステージを移動します。
- Entity Change Detection — (1分ごと) cron ジョブ (
indexer_reindex_all_invalid)は、Adobe Commerce個のエンティティの変更を検出し、フィード項目を組み立てるSaaS Data Exportをトリガーします。 - 変換 — Commerce Optimizer Connectorは、組み立てられたフィードをピックアップし、Adobe Commerce個のエンティティとスコープをCommerce Optimizer APIで必要な形式にマッピングし、送信のためのペイロードを準備します。
- 送信 – 変換されたデータはHTTP POST (
/v1/catalog/<feed name>)を介してAdobe I/O GatewayからCommerce Optimizerまで送信され、受信フィードを検証して保持します。 - 結果を永続化 — API応答ステータスを フィード テーブル に永続化します。
- 失敗の再試行 (5分ごと) – 別のcron ジョブ (
*_resend_failed_items)が失敗したフィード項目を検出し、同じパイプラインを通じて再送信します。
スケジュール済みcron ジョブ
次のcron ジョブは、固定スケジュールでパイプラインを自動化します。
indexindexer_update_all_viewsindexindexer_reindex_all_invalidresync_failed_feeds_data_exporter*_resend_failed_itemscommerce_data_exportcleanup_deleted_feed_itemsSaaS Data Export拡張機能は、フィードの収集とステータスの追跡を処理します。 コネクタレイヤーは、エンティティとスコープをCommerce Optimizer APIで必要な形式にマッピングし、POST /v1/catalog/<feed name>を介して送信します。
要件定義
- Commerce cronが実行中である必要があります。
- フィードのインデクサーはUpdate by Schedule モードを使用する必要があります。 部分同期を参照してください。
スコープベースの同期制御
CommerceOptimizerScopeMapper モジュールは、web サイトごとの書き出し設定およびストア ビューごとの書き出し設定を読み取り、フィードの収集および送信中にそれらを適用します。
- 有効なスコープは、通常の差分スケジュールでデータを書き出します。
- 無効なスコープはパイプラインから除外されます。
以前に同期されたエンティティは、次回のcron実行時にCommerce Optimizerから削除されます。
同期の問題が1つのカタログ ソースまたは価格表のみに影響する場合は、 データが同期されていませんを参照してください。
同期スコープのカスタマイズについて詳しくは、Commerce スコープの書き出し設定のカスタマイズ を参照してください。
タイミングとモニタリング
Commerce AdminのData Feed Sync Status ページからフィードごとのステータスを監視します。 データ同期が機能していることを確認してください。
フィードの送信とエラー処理
FeedSubmitter プロセスはCatalog Data Ingestion API件の呼び出しを処理します。
- 更新項目を削除項目(異なるAPI エンドポイント)から分離します。
- エンドポイントの更新と削除を個別に呼び出します。
- 項目ごとのステータス結果を単一の応答にマージします。
HTTP ステータスコード結合
更新呼び出しと削除呼び出しが異なるステータスコードを返す場合、FeedSubmitterは次のように結果を組み合わせます。
errors フィールドにリストされている項目は、管理者に表示され、注意が必要です。 バッチ内の他の項目が再試行されます。resync_failed_feeds_data_exporter グループのフィード固有の*_feed_resend_failed_items cron ジョブによって再試行されました。