SaaS データ書き出しとデータの同期
カタログサービス、ライブサーチ、製品レコメンデーションなどのデータ書き出しを必要とするAdobe Commerce サービスをインストールすると、データ収集と同期プロセスを管理するために、SaaS データ書き出しモジュールのコレクションがインストールされます。
SaaS データ書き出しは、データを最新の状態に保つために、継続的にAdobe CommerceインスタンスからCommerce Services プラットフォームに商品データを移動します。 たとえば、商品レコメンデーションを利用するには、正しい名前、価格、在庫状況を反映したレコメンデーションを正確に返すために、最新のカタログ情報が必要です。 同期プロセスの監視について詳しくは、同期プロセスの表示と管理を参照してください。
次の図は、SaaS データ書き出しフローを示しています。
Adobe Commerce
Adobe Commerceでカタログデータが変更されると、同期はこれらのステージを移動します。
- エンティティの変更の検出 - MagentoのMview システムは、購読されたデータベース テーブル (例:
catalog_product_entity)の行の変更を検出し、変更ログ テーブルにエントリを書き込みます。 - フィードのインデックス作成 - フィードのインデクサーは、変更ログを読み取り、ソーステーブルからエンティティ データを読み込み、フィード アイテムをアセンブリします。
- データの収集と変換 - フィード スキーマ
et_schema.xmlに登録されているプロバイダーは、フィールド データを収集します。 - ハッシュ重複排除 - フィード項目ごとにコンテンツハッシュが計算されます。 前回の書き出しからハッシュが変更されていない項目はスキップされるので、変更されたデータのみが送信されます。
- HTTP送信 - フィード項目は、認証されたHTTP POST バッチとしてAdobe SaaS フィード取得サービスに送信されます。
- ステータスの永続性 - API応答のステータスが、各項目の フィードテーブル に書き戻されます。
- 失敗の再試行 – 書き出しに失敗したアイテムは、スケジュールされたcron ジョブによって自動的に再試行されます。
同期モード
SaaS データの書き出しには、エンティティフィードを処理するための2つのモードがあります。
-
即時エクスポート モード – このモードでは、データが収集され、1回のイテレーションですぐにCommerce サービスに送信されます。 このモードは、Commerce サービスへのエンティティ更新の配信を高速化し、フィードテーブルのストレージサイズを削減します。
-
従来の書き出しモード – このモードでは、データは単一のプロセスで収集されます。 次に、cron ジョブが、収集したデータを接続されたコマースサービスに送信します。 データ書き出しログのエントリでは、従来のモードを使用するフィードには
(legacy)というラベルが付けられます。
同期タイプ
SaaS データの書き出しは、3つの同期タイプのフル同期、部分同期、失敗した項目の同期を再試行することをサポートしています。
完全同期
Adobe Commerce インスタンスをCommerce サービスに接続した後、完全同期を実行して、Adobe Commerceから接続されたサービスにエンティティ フィード データを送信します。
部分同期 partial-sync
部分的な同期により、SaaS データの書き出しは、Commerceアプリケーションから、製品名の変更や価格の更新などの更新情報を、接続されたコマースサービスに自動的に送信します。
部分的な同期を機能させるには、Commerce アプリケーションで次の設定が必要です。
- タスクのスケジュール設定は、cron ジョブを介して有効になります
- すべてのSaaS データ書き出しインデクサーは
Update by Scheduleモードで設定されます。
失敗した項目の同期を再試行 retry-failed-items-sync
再試行に失敗した項目の同期では、同期プロセス中のエラー(アプリケーションエラー、ネットワークの中断、SaaS サービスエラーなど)が原因で同期に失敗した項目を再送信するために、別のプロセスを使用します。 resync_failed_feeds_data_exporter グループの*_resend_failed_items cron ジョブは、5分ごとに自動的にこれを処理します。
スケジュール済みcron ジョブ
次のcron グループは、固定スケジュールでパイプラインを自動化します。
indexindexer_update_all_viewsindexindexer_reindex_all_invalidresync_failed_feeds_data_exporter*_resend_failed_itemscommerce_data_exportsaas_data_exportercommerce_data_exportcleanup_deleted_feed_itemsフィード送信とHTTP エラー処理 feed-submission-and-http-error-handling
フィード項目は、HTTP POST経由で認証されたgzip圧縮JSON バッチとして送信されます。 次の表は、HTTP応答コードがステータスのエクスポートと再試行動作にどのようにマッピングされるかを示しています。
var/log/saas-export-errors.logを確認してください。HTTP レベルのエラーに加えて、ローカル処理エラーやネットワーク障害などのアプリケーションレベルのエラーも、*_resend_failed_items cron ジョブによる自動再試行のためにスケジュールされます。
Commerce AdminのData Feed Sync Status ページからフィードごとのステータスを監視します。