web-dev-qa-db-ja.com

ETLプロセスでデータ系統を実装するための戦略/リソース?

ここで自分の必要性を明確にするのに苦労しています。

私は、完全なMicrosoft Stackを使用して、主要な食料品チェーンの倉庫アイテムのコストを処理する重要なETLプロセスの開発を任されています。

財務チームと監査人に、理想的にはどのコスト計算が使用されたかなどのメタデータを使用して、最終結果をソースシステムまで追跡できるようにしたいと考えています。

キンボールグループとデータウェアハウスツールキットの本はすべて血統(サブシステム29!)をヒントにしていますが、実際の実装をガイドするのに役立つリソースはほとんど見つかりません。重要であり、データガバナンスと一緒に検討する必要があることを示す多数のサイトと、純粋に学術的であり、その科学に携わっているが実際的なガイダンスを提供していないサイトがいくつかあります。

私はこの質問でベストプラクティスに従っていない可能性がありますが、他にどのように言い表すかわかりません。先に述べたように、私たちは完全なMicrosoft Stackですが、他のツールを使用する場合でも、あらゆるリソースを利用できます。

どんな助けもありがたいです。ありがとうございました。

1
IronicMuffin

リネージはETLツールで実装される場合がありますが、Microsoftスタックは実際には実装されていません。エンドユーザーに洞察を提供したいので、開発環境がそれを提供する場合、それはおそらくあまり役​​に立ちません。

あなたがそれについて取り組むことができる1つの方法と、過去に私が成功裏に使用したもの(それがいくつかの設計原則に違反していても)は、ファクトのソースを示すフィールドをファクトテーブルに追加することです。ドリルダウンまたはファクトディメンションによって。

たとえば、erpからの予測とCRMシステムを組み合わせたファクトテーブルがある場合、列「factsource」または次のようなsourcesystem|table|primarykeyで連結されたフィールドを含むものを作成できます。

 sourceid        | customer    | amount
 ----------------------------------------------------
 CRM|forecast|41 | C001        | 1000
 ERP|quotation|6 | C002        | 5000

次に、ユーザーがキューブクライアントまたはその他のメカニズムのドリルダウン機能を使用してトランザクションの背後にある事実を確認すると、5KがERPシステムの見積もり番号6に由来することがすぐにわかります。

もちろん、ファクトテーブルをロードするときに、ETLシステムでその値を構築する必要があります。

「完全なMicrosoftスタック」によってオンプレミスを参照している場合:

  • SQLサーバー
  • SSIS
  • SSAS
  • SSRS/PowerBI

次に、系統を手動で追跡する必要があります。これらのツールはどれも役に立ちません。

彼らは彼らのクラウド製品でより良いものを持っている可能性があります。 Azure(HDInsight)上のHadoopディストリビューションにアクセスできる場合は、 Apache Atlas などのツールを使用してデータ系統を追跡できます。

1
Erin Drummond