Commerce Data Exchange のベスト プラクティス

この記事は、Microsoft Dynamics 365 Commerce 環境に、データ同期 Commerce Data Exchange (CDX) に関連する機能を実装するユーザーを対象としています。 実装にあたってのベスト プラクティスのアドバイスを提供します。

データの構成と同期を適切に行うことは、実装が正しく機能するために非常に重要となります。 ビジネス要件、IT インフラストラクチャ、および全体的な準備にかかわらず、データが正しく同期されていないと、環境全体が実質的に役に立たなくなります。 したがって、Commerce headquarters から Commerce Scale Unit を経由してオフライン データベースを持つ Store Commerce アプリを使用する実店舗に至るまで、完全な実装の全体にわたってデータの設定、生成、同期、検証に必要なものを把握することが最優先事項です。

この記事に進む前に、チャネル (店舗)、レジスターとデバイス、および Store Commerce アプリ オフライン データベースの概念を理解することが重要です。 したがって、この記事の最後にある 「デバイス管理実装ガイダンス」や「Commerce アーキテクチャの概要」などのリソースを確認することをお勧めします。

この記事の主な内容は以下の表にまとめました。最初の列にはタグの似た「関連する領域」のリストが含まれており、関心のある分野に関するベストプラクティスをすばやく見つけることができます。 新しい実装については、これらのテーブルをコピーし、さまざまなベスト プラクティスが完成したときにチェックできる場所にコピーしておくと役立つ場合があります。 このようにして、本番に移る前に可実装が準備されているかどうかを能な限り確認することができます。

次の構成がリリースされましたが、一部の使用シナリオでは役に立たない可能性のあるロジックが変更されます。 これらの機能はテスト済ですが、完全に検証されていないシナリオもあります。 次の表では、機能の信頼性に関する分析情報を提供するために満期が含まれています。

機能は月によって変化しますので、特定の機能の満期や新しい機能が追加されたかどうかに関して、もう一度確認する価値があります。 次の機能のいずれかを適用するには、Retail と Commerce > 本社の設定 > パラメーター > コマース共有パラメーターの順に移動します。 左のウィンドウ メニューで、構成パラメーターを選択します。 コンフィギュレーション パラメーターの設定 ページで、名前フィールドにキーの値 (次の表の キー 列に示す) を入力し、既定値を (次の表の 説明 列に示す) を フィールドに入力します。

機能 キー 説明 満期
遅延ダウンロード セッションを作成 CDX_ENABLE_DELAYED_OFFLINE_DOWNLOAD_SESSION_CREATION このパラメーターによって、ダウンロード セッションが作成されるのを、Store Commerce アプリ デバイスが有効になるまで遅らせます。 この遅延により、長い期間使用されない可能性がある不必要なダウンロード セッションは作成されません。 既定値は、0 で無効です。 機能を有効にするには、値を 1 に設定します。

(機能はバージョン 10.0.15 にリリースされました)
パッケージ注文の実施 CDX_ENABLE_DOWNLOAD_SESSION_DEPENDENCY_ENFORCEMENT このパラメータによって、ダウンロード セッション アプリケーションが順番に適用されます。 ダウンロード セッション アプリケーションが失敗した場合 (既定値が 3 で、試行回数プロパティで定義された試行回数の後に発生する場合)、そのセッションは一時中断としてマークされ、中断したセッションが再試行またはキャンセルされるまでセッション アプリケーションは続行されません。 このキーを使用して、以前に適用されたセッション (利用可または一時中断ではないセッション) を再実行することはできません。

この機能により、順不同でダウンロード セッションを適用した後に発生する固有のキー例外が原因で、ダウンロード セッションの失敗を防ぐことができます。 既定値は、0 で無効です。
中程度

(機能はバージョン 10.0.18 にリリースされました)
失敗時のロール バック CDX_ENABLE_ROLLBACK_ON_FAILURE このキーは既知問題のため、使用をお勧めしません。 オフライン データベースからチャネル データベースに (P ジョブ配送スケジュールに基づいて) トランザクションを同期する場合、通常、レコードがマージされます。 このプロセス中に、トランザクション ID が重複するレコードが上書きされます。 この機能を使用すると、オフライン同期によってレコードが挿入されます。 この挿入により、上書きとエラー修正が防止され、問題を調査できます。 現在、オフライン トランザクションの投稿同期の消去が失敗し、挿入エラーが発生してオフライン同期が停止する可能性があります。このため、現在は機能設定を無効にすることをお勧めします。 既定値は 1 で、既定により有効です。 この値を 0 に変更することを強くお勧めします。 既知の問題が原因で、低いです。

(機能はバージョン 10.0.13 にリリースされました)

コンフィギュレーションの更新

Commerce スケジューラの基本コンフィギュレーション データを初期化する前に、次の手順を実施する必要があります。

  1. サービス更新を適用します。
  2. コンフィギュレーション キーに影響を与える Commerce の機能を有効にします。

基本コンフィギュレーション データを初期化するには、次の手順に従います。

  1. Retail と Commerce > Headquarters 設定 > Commerce スケジューラ > Commerce スケジューラの初期化 の順にアクセスすると、Commerce スケジューラの基本コンフィギュレーション データを初期化するかどうかを確認するメッセージが表示されます。 更新のたびにこのアクションを実行することは、新しいテーブルまたは列の構成データを正しく設定する機能を管理するのに重要です。
  2. 既存のコンフィギュレーションの削除を行うパラメーターもあります。 既存のコンフィギュレーションを削除するよう明示的に指示されているか、コンフィギュレーションが失われても影響が生じない非運用環境で作業しているのでない限り、このパラメーターはいいえのままにします。

注意

Commerce バージョン 10.0.24 リリース以降、Commerce スケジューラは Commerce 本部の更新後に自動的に実行するように設定できます。 Commerce 本部でこの機能を有効にするには、ワークスペース > 機能管理に移動し、本部の機能が更新された後に "Commerce スケジューラの初期化" を実行する機能を有効にしてください。

便利な構成

関連する領域 ベスト プラクティス
  • パラメーター
  • コマース スケジューラ
  • 再試行
小売とコマース > バックオフィスの設定 > パラメーター > コマース スケジューラー パラメーターに移動し、試行回数3 に設定します。 この値が大きすぎる場合は、利用率の高い時間帯にダウンロード セッションが失敗する可能性があります。 また、完全なデータセットの生成サイクル間隔の日単位0 に設定されているかを確認します。 この設定は、完全なデータセットの生成は、時間以外に必要とされない限り発生しないことを意味します。 これらの値を設定することにより、CDX を予定した方法で機能させることができ、エラーの発生またはパフォーマンスの問題を減らすことができます。
  • 機能プロファイル
  • データのリテンション期間
  • 返品ポリシー
小売とコマース > チャネル設定 > POS 設定 > POS プロファイル > 機能プロファイル に移動し、続いて機能セクションで、トランザクションの存在日数を返品ポリシーに対して定義されている値と同じか、またはそれに近い値に設定します。 たとえば、返品ポリシーに 30 日以内に品目を返品できるとある場合は、このフィールドを 3031/& に設定します。 通常のポリシーを超えて特別な例外が許容される場合は、フィールドを 60 に設定します。これにより、通常のポリシー制限を超えた場合でも迅速に返品できます。
  • チャネル データベース グループ
  • 配送スケジュール
  • オフライン プロファイル
  • 一時停止
  • データ
  • ダウンロード
新たに生成された端末に割り当てる "ダミー" のデータベース グループ (つまり、どの配分スケジュール ジョブにも関連付けられていないグループ)、またはオフライン同期の一時停止 オプションが はい に設定されている特別なオフライン プロファイルのいずれかを持つことをマイクロソフトは強くお勧めします。 このようにして、データ生成は、必要なときにシステムが最も可用性が高い時に行うことができます。 (ただし、システムによっては必要に応じて何度か一時停止する場合があります。)

データベース インデックスの圧縮を有効にする

データベース インデックスの圧縮機能を使用すると、データベース サイズを小きくすることができます。 これらの機能の詳細については、Commerce データベース インデックスの圧縮を参照してください。

パフォーマンスに影響を与えるプラクティス

関連する領域 ベスト プラクティス
  • チャネル データベース グループ
  • オフライン プロファイル
  • 一時停止
  • データ
  • ダウンロード

オフライン データベースが使用できるように、データが必要になるまではオフライン データベース用のデータを生成しないでください。 次のシナリオでは、なぜこのベスト プラクティスが重要なのかを示しています。

関連するチャネル データベースのグループに追加された新しい Store Commerce アプリのオフライン データベースは、データベースの完全な同期が行われた後の既存のダウンロード セッションをすべて継承します。 オフライン端末を持つ Store Commerce アプリ インスタンスが新たに 100 個作成され、2 か月間完全な同期が発生していません。 20 分ごとに実際に変更があるのは、5 つのスケジューラ ジョブだけです。 (たとえば、これらの変更には価格と割引、または頻繁に更新される顧客が含まれる場合があります)。このシナリオでは、新たに作成された端末が有効化されているか、このデータを適用できるかどうかに関わらず、最大で 200 万のダウンロード セッションがただちに生成され、適用する必要があります。

多くの場合、このタイプの例外的なデータ生成は大規模であり、パフォーマンスに影響します。 稼働率の高い (最も忙しい時間) 時間帯の場合、環境のパフォーマンスが著しく損なわれることになります。 そのため、新たに生成された端末に割り当てる "ダミー" のデータベース グループ (どの配布スケジュール ジョブにも関連付けられていないグループ) を持つか、またはオフライン プロファイルで使用するオフライン同期の一時停止 オプションを はい に設定することを強くお勧めします。 オフライン同期の一時停止オプションを はいに設定することで、オフライン プロファイルを使用したすべてのデータ生成を停止できます。 そのため、データの生成は、常に行うのではなく必要となったタイミングでのみ行われ、システムの可用性が高い状態でのみ行われます。 (ただし、システムによっては必要に応じて何度か一時停止する場合があります。)

  • 配送スケジュール
  • スケジューラ ジョブ
  • アップロード
P-ジョブ (アップロード バッチ ジョブ) は複数実行できません。 並行して発生する可能性のある P- ジョブ アップロードの一括ジョブが複数作成された場合、アップロードされたトランザクションのデータを適用している間にテーブル ロックや遅延 (パフォーマンスの低下) が発生する可能性があります。 同時に複数のジョブを実行する必要はありませんが、頻繁に実行できます。
  • パラメーター
  • コマース スケジューラ
  • データベースの事後同期
Retail と Commerce> 本社の設定> パラメーター> コマース スケジューラー パラメーターの順にクリックします。 データベース同期の転記サブヘッダーの下に、さまざまな理由でパフォーマンスに影響を与える可能性がある 2 つのフィールドがあります。

同期完了後不要なマスター データをクリーン アップするによって、CDX のダウンロード セッションが実行されるたびに店舗の業務手順のマスター データのストライピングを実行します。 この手順により、パッケージの生成に含まれるものの、特定の店舗 (チャネル) のメンバーとして特定のデバイスのオフライン機能には必要ない不要なレコードは削除されます。 この機能は、オフライン データベースの格納データを最小限に抑えるのに役立ちます。 Express バージョンの SQL を使用する場合、データベースが小さいほうがパフォーマンスを向上させ、サイズの問題を最小限にすることができます。 一部のカスタム SQL ビューで、この機能を認識していないテーブル間の依存関係が発生し、機能にエラーが生じる可能性がある場合は、最初にサンドボックス内のこの機能をテストすることをお勧めします。

データベース統計の自動最適化によって、チャネル データベースに適用される CDX ダウンロード セッション内の各テーブルのテーブル統計で更新が実行されます。 古いテーブル統計において、断片化されたインデックスよりも大きいパフォーマンスの問題が発生します。 有効になっている場合、コンフィギュレーション パラメーターに特定のフラグを追加することもお勧めします。 フラグを追加するには、Retail と Commerce > 本社の設定 > パラメーター > コマース共有パラメーターの順にクリックし、コンフィギュレーション パラメーター一覧に移動して、新しいフラグ CDX_ENABLE_UPDATE_STATISTICS_FOR_REQUIRED_TABLE1 を入力します。 将来のリリースで、このコンフィギュレーション パラメーターがすべての環境に自動的に追加されますが、その存在を確認するのが重要です。

その他のリソース