2

制御フローとデータを分離する必要がありますか?

私の頭の中の明白な答えはノーです。しかし、なぜそうではないのかについて、もっと明確な議論が必要です...

だから...ここにシナリオがあります

  • サービスはデータを生成し、それをローカルテーブルに公開して、ETLの個別のプロセスを取得し、メインのレポートデータウェアハウスに統合します。
  • ソースサービスはデータが利用可能であることをETLに通知する必要があるという提案があります...したがって、定期的にチェックする必要はありません

私はこれがまったく好きではありません..なぜですか?

  • サービスがETLについて知る必要があるため、構造的な依存関係が作成されます
  • また、時間的な依存関係も作成します(いずれかのプロセスがダウン/クラッシュした場合はどうなりますか?)

ETLがデータに関心がある場合は、積極的にチェックを行う必要があります。別の方法として、サービスがデータを積極的にメッセージキューに送信し、キューイングインフラストラクチャの通知を委任することもできます。

4

1 に答える 1

1

私はほぼ10年間、ETL指向の中央プロセスを使用するアプリケーションに取り組んでいました。このようにデータを移動するプロセスを操作する場合、プロセスの実行とそれらの実行中にロードされるデータに関するメタデータを作成することが非常に重要です。それは監査目的にとって非常に貴重であることがわかります。また、パフォーマンスを監視し、適切に実行された場合は、ロードされたデータの正確性を監視するのにも役立ちます。

さらに、状況によっては、消費者プロセスが、異なるデータテーブルに対して個別のクエリを作成するのではなく、同じ方法でデータロードメタデータテーブルを調べることにより、新しく利用可能なデータをチェックできるようになります。

于 2013-03-08T15:49:42.080 に答える