ETLについて
ETLとは、レポートデータを抽出して変換し、BBLEARN_STATSスキーマにロードするBlackboard Learnのプロセスです。ETLはActivity_Accumulatorや様々なBlackboard Learnからデータを取得し、BBLEARN_STATSスキーマ内のODS_XXXテーブルに処理します。ETLプロセスは1日を通して周期的に実行され、テーブルを最新の状態に保ちます。コース/システムレポートを実行すると、これらの ODS_XXXテーブルからデータが取り出されます。コースレポートに最新のデータを反映させるには、ETLプロセスが予期されているように機能している必要があります。
ETL_AAおよびETL_NON_AA
ETL_REFRESHDATAが実行された場合、ETLプロセスは2つの重要なサブプロセスを担います。
- ETL_AA - Activity_Accumulatorデータを処理します
- ETL_NON_AA - non-Activity_Accumulatorデータを処理します (ルーブリックやアセスメントなど)
ETL_NON_AAプロセスは1日を通して周期的に実行され、bb-tasks.xmlを介して制御されます。デフォルトでは、1時間ごとに実行されます。以下のコードは、bb-tasks.xmlに記述されています。bb-tasks.xmlに関する詳しい情報はBehind the Blackboardで確認してください。
<task-entry key="bb.etl.refresh_noaa" version="60">
<task classname="blackboard.platform.reporting.service.impl.ETLRefreshDataWithoutActivityTask">
<property name="delay" value="3600000" />
<property name="period" value="3600000" />
</task>
</task-entry>
デフォルトでは、ETL_AAはレポートスケジューラの一部として真夜中ごろに1度だけ実行されます。Blackboard Learnn内で、[システム管理者] > [システムレポート] > [レポートスケジュールの管理]と移動して[開始時間]を変更することができます。
これはETL_AAに限ったことではありませんが、スケジュールされたレポートがシステム内で実行される時間も制御可能です。
手動でのETL実行
Blackboard Learn内で、ETL_REFRESHDATAを手動でトリガすることができます。[システム管理者] > [システムレポート] > [レポートデータを最新の情報に更新]に移動します。[アクティビティレポートデータの更新]を選択してETL_AAプロセスを実行するか、[非アクティビティレポートデータの更新]を選択してETL_NON_AAを実行します。
ETLの問題のトラブルシューティング
コースレポートに最新のデータが反映されていない場合、ETL_REFRESHDATAが正常に機能していない可能性があります。セルフホストクライアントを使用している場合、データベース内のETL/ODS関連のクエリから性能への影響に気づく場合もあります。
こういった種類の問題が発生した場合、Behind the Blackboardからサポートチケットを作成していただくことで、問題の調査を始めることができます。