BAM プライマリ インポート データベースで動的に作成された SQL ビューのクエリでは、リアルタイム集計 (RTA) データを使用できます。
このビューの名前は次のようになります。
bam_<ViewName>_<RTAName>_RTAView
どこ
< ViewName> は、BAM 定義 XML の View 要素の Name 属性です。これは、関連する Microsoft Excel ウィザードで入力されたビュー名と同じです。
< RTAName> は、BAM 定義 XML の RealTimeAggregation 要素の Name 属性です。BAM はこれをビュー名に基づいて一意に生成します。
リアルタイム集計データに対してクエリを実行する場合は、次の条件に注意することが重要です。
特定の時間 (既定値は 1 日) の集計を保持し、あまり大きくなれないように、リアルタイム集計を構成する必要があります。 古い集計は、代わりに OLAP キューブで使用できる必要があります。
RTA に対するすべてのクエリには、RTA データのオンライン ウィンドウ内にある時間ディメンションのフィルター処理を含める必要があります。 BAM は BAM データのタイムスタンプに基づいて RTU のデータ メンテナンスを実行し、データをチャンク単位でドロップするように最適化されているため、これが必要です。 したがって、Transact-SQL コマンド "
select *
" を送信するだけで、結果は予測不能に変動します。アクティビティ データが DirectEventStream を介して BAM に送信された場合、リアルタイム集計データには待機時間はありません。呼び出し元のアプリケーションのトランザクションがコミットするとすぐに表示されます。
BufferedEventStream 経由でアクティビティ データが BAM に送信された場合、BAM Event Bus サービスと BAM プライマリ インポート データベースをホストする SQL サーバーの負荷に応じて、数秒後に RTA データがクエリに対して表示されます。
BAM は、トリガーを使用してアクティビティ データ ストレージ レコードの変更または挿入と同期して維持するテーブルに基づいて、リアルタイム集計を行います。 詳細については、「 アクティビティ データ ストレージ」を参照してください。 したがって、リアルタイム集計はパフォーマンスに大きな影響を与える可能性があります。 詳細については、Real-Time 集計を参照してください。