2017-08-11 7 views
0

変更されたヒストリレコードのファクトテーブル結合から、Type2とType1を持つディメンションへのヒストリデータの取得方法を理解することが難しいです。現在、私はDimの代理キーとビジネスキーを持っています。ファクトテーブルには代理キーファクトテーブルがあり、現在CurrentFlagがYesに設定されている行を戻すSSISルックアップコンポーネントを使用しています。SSIDのSCD1とSCD2ディメンションからのファクトテーブルのロード

しかし、私はルックアップでビジネスキーに加わり、サロゲートを返しています。私が知っているのは私が歴史を得ることができない主な理由ですが、私が現在やっているようにビジネスキーに参加してビジネスキーも返すと、SSISコンポーネントはどれくらいのバージョンのあなたがそのビジネスキーに対して持っている歴史。

私が知りたいこと、言いたいのは、ファクトテーブルにデータを取り込むためにルックアップを使用することですが、実際には1つの行だけを返すので履歴は実際には得られません。 SSISの事実とディメンションの間で歴史的な日付を返す方法を知りたいだけです。

ありがとうございました

答えて

0

歴史的な次元にはいくつかの注意点があります。エンドユーザーは、プレゼンテーションの内容を把握し、その違いを理解する必要があります。

たとえば、次のシナリオを検討してください:

顧客Aは、彼らは、その時点で$ 125のコスト製品123、を発注1月2​​017年にラスベガスに位置しています。

今、8月です。その間、顧客は5月にワシントンD.Cに移り、Product 123は7月に145ドルの費用がかかるように更新されました。

あなたのエンドユーザーは、あなたが見たいものをあなたに知らせる必要があります。履歴を何も追跡しておらず、毎日すべてを切り捨ててロードすると、注文レポートには次のように表示されます。

カスタマーAはワシントンD.C.にあり、1月に$ 145の注文を出しました。

適切な履歴トラッキングを実装し、ディメンション内の行の開始日と終了日を識別するロジックを実装すると、自然キーと適切な日付間隔を使用してファクトテーブルをディメンションに結合します。これにより、ファクト表の各次元行ごとに単一の値が返されます。それ以上のものが返された場合は、重複する日付があります。

さらに多くのレコードがあっても、参照から単一の値だけを受け取るロジックを表示できますか?

+0

こんにちはSchmitzさん、私が持っている例は、ビジネスキーに参加したときです。たとえば、SCDディメンションとして追跡されたビジネスキーが変更されています。したがって、テーブルには同じビジネスキーの2つの番号がありますが、SurrogateKeyの1つのバージョンです。 SSISルックアップコンポーネントは、上位1行のみを返し、両方を返しません。しかし、私は本当にどのようにyuは日付のことを知る必要がある、私はstart_DateとEnd_Dateだけでなく、現在のフラグは、現在のフラグは歴史と現在の間で切り替えるには十分ではないでしょうか? – abs786123

関連する問題