処理の概要
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore Experience Database (xDB) は、次の2種類のデータベースを使用します。
-
MongoDB (NoSQL) コレクション データベースは、キャプチャされたすべてのエクスペリエンス情報を緩やかに構造化された方法で収集します
-
コレクション データベースから抽出された情報をレポートに適した形式で格納するSQL Serverレポート データベース
デフォルトでは、Sitecore xDBは、レポート データベースとコレクション データベースを常に同期させる必要があります。
処理の種類
処理の種類
Sitecore xDBには、コレクション データベースに格納されたデータに対していくつかの異なる種類の処理を実行できるデータ分析レイヤーがあります。
-
集計 – 集計処理は、コレクション データベースからデータを抽出し、グループ化して削減してから、Sitecoreレポート アプリケーションで使用するためにデータをレポート データベースに保存します。
-
継続的な更新 – このプロセスでは、レポート データベースとコレクション データベースが常に同期されます。
-
レポーティングデータベースの再構築 – このプロセスでは、リクエストに応じてレポーティングデータベース全体を再構築します。
-
メンテナンス – コレクションデータベースで定期的なメンテナンスタスクを実行します。
日常業務では、xDBは1つのレポート データベースを使用し、コレクション データベースからの新しいトラフィック情報と継続的に同期されます。
レポートデータベースの継続的な更新
レポートデータベースの継続的な更新は、終了したばかりのインタラクションの処理です。レポーティング データベースの再構築とは異なり、これはSitecoreを起動するとすぐに開始される継続的なプロセスであり、xDBが実行されている限り、レポーティング データベースを最新のインタラクションで最新の状態に保ちます。
レポートデータベースプロセスの継続的な更新は、次のように機能します。
-
最新のインタラクションは、コレクションデータベースに保存されます。
-
インタラクションデータは、集計のために処理プールに追加されます。
-
エージェントワーカーは、処理プールからインタラクションを取得し、アグリゲーターに渡します。
-
アグリゲーターは、アグリゲーション パイプラインを介してインタラクションをプッシュし、データをレポート データベースに適した形式に変換します。
集計プロセスは、クエリが容易で、SQL Serverを使用するSitecoreレポート アプリケーションでの使用に適した形式にデータ変換します。
データが正しい形式に変換されると、レポートデータベースに保存されている既存のレポートデータにマージされ、レポートデータベースはWebサイト上の最新のインタラクションと継続的に同期されます。
Sitecore 8.2 Update 6より前は、インデックス プロセッサは インタラクション パイプラインの一部でした。Sitecore 8.2 Update 6以降、インデックス プロセッサはindexInteractionsパイプラインの一部です。集計中、Sitecoreは最初に インタラクション パイプラインを実行し、次にindexInteractionsパイプラインを実行します。
レポート・データベースの再構築
レポート データベースの再構築とは、Sitecoreレポート アプリケーションで使用するために、レポート データベースにすでに集約されているインタラクションの再処理です。コレクション データベースに対する最新の変更がレポート データベースに表示されるようにするには、レポート データベースを再構築する必要が時々あります。レポート データベースを再構築すると、その内容全体が上書きされます。
この図は、レポート データベースとコレクション データベースを継続的に同期するために必要な処理を示しています。また、要求に応じてレポート・データベース全体を再構築するために必要な処理も示しています。
レポート機能の中断を最小限に抑えるために、再構築プロセスは、レポート セカンダリ データベース (reporting.secondary) と呼ばれるレポート データベースの専用インスタンスと連携します。
再構築プロセスが完了すると、プライマリ レポート データベース (レポート) はレポート セカンダリ データベースに置き換わります。
Sitecore xDBでは、プライマリ レポート データベースをインプレースで再構築することはできません。そのため、レポート作成セカンダリ データベースは、再構築プロセス中にのみ必要です。
2つ目のレポートデータベースを接続する必要があるのは、レポートデータベースの再構築を実行する場合のみです。
再構築プロセスは半自動化されていますが、システム管理者がSQL Serverでデータベースをアタッチ/置換し、xDB構成を変更する必要があります。
レポート・データベースを再構築する理由:
-
変換ツールを使用して、レポート データベース (セカンダリ) に以前のバージョンのSitecoreの分析情報を入力した後。
-
コレクションデータベースの情報を修正した後、古いデータを見るときにレポートに修正を反映させるため。このような修正の例としては、参照元サイトにチャネルを割り当てることが挙げられます。
-
検索キーワードまたはチャネルを再分類した場合、集計されたレポート データは自動的に更新されません。
-
レポーティング データベースが失われた場合、または災害や2つの連絡先の詳細がマージされた場合など、コレクション データベースと回復不能なほど同期しなくなった場合。
-
Sitecoreレポート アプリケーションでは、集計レイヤーによってすでに処理されたデータを再分類できます。これにより、レポート データベースがコレクション データベースと同期しなくなる可能性があります。
Sitecore 8.2 Update 6より前のバージョンでは、コンタクト セグメンテーション インデックスの再構築は、レポートDBの再構築と同時に実行されていました。インデックス作成プロセッサは 、インタラクション パイプラインの一部でした。Sitecore 8.2 Update 6以降、すべてのインデックス プロセッサがindexInteractionsパイプラインに含まれています。レポーティングDBのみ、連絡先セグメンテーション インデックスのみ、またはその両方を再構築できます。
レポート データベースを再構築すると、再構築プロセスによってレポート データベース内のすべての既存のデータが上書きされます
タイム スライスの集約
Sitecore 8.2 Update 6以降は、タイム スライス集計をサポートしています。これにより、コレクション・データベース内のデータの一部のみを再構築することが可能になります。たとえば、再構築プロセスは過去3か月間のみ実行できます。これを行うには、必要な最も古いインタラクションのSaveDateTime値を入力します。
再構築後、再構築ターゲットには、Minimum SaveDateTimeから現在までのデータのみが含まれます。


