次の方法で共有


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

注意

Dynamics 365 Commerce のリテール・インタレスト・グループは、Yammer から Viva Engage に移転しました。 新しい Viva Engage コミュニティにアクセスできない場合は、このフォーム (https://aka.ms/JoinD365commerceVivaEngageCommunity) に入力して追加し、最新のディスカッションに参加してください。

この記事では、Microsoft Dynamics 365 Commerce 環境での Commerce Data Exchange (CDX) とのデータ同期について説明します。

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

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

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

次の構成はリリースされますが、すべての使用シナリオでは役に立たない可能性のあるロジックが変更されます。 これらの機能はテストされましたが、すべてのシナリオで完全に検証されるわけではありません。 次の表では、機能の確実性に関する分析情報を提供するために成熟度が含まれています。

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

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

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

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

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

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

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

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

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

基本構成データを初期化するには、次の手順に従います。

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

注意

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

便利な構成

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

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

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

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

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

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

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

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

  • 配送スケジュール
  • スケジューラ ジョブ
  • アップロード
P-ジョブ (アップロード バッチ ジョブ) は複数実行できません。 並列で発生する可能性のある複数の P ジョブ・アップロード・バッチ・ジョブを作成すると、システムがアップロードされたトランザクションのデータを適用している間に、表のロックと遅延 (パフォーマンスの低下) が発生する可能性があります。 ジョブは同時に複数回発生する必要はありませんが、頻繁に発生する可能性があります。
  • パラメーター
  • コマース スケジューラ
  • データベースの事後同期
小売とコマース> headquarters の設定> パラメーター> コマース スケジューラ パラメーター の順にクリックします。 データベース 同期の後 の小見出しでは、2 つのフィールドがさまざまな理由でパフォーマンスに影響する可能性があります。

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

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

その他のリソース

Commerce Data Exchange のトラブルシューティング

Commerce Data Exchange 実装ガイダンス

Commerce オフライン実装

Dynamics 365 Commerce アーキテクチャの概要

ストア内トポロジの選択

デバイス管理実装ガイダンス

Modern POS (MPOS) のコンフィギュレーション、インストール、および有効化

Commerce Scale Unit のコンフィギュレーションとインストール (自己ホスト)