問題タブ [scd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ssis - SSIS でゆっくりと変化する次元変換が更新されない
SCD をテストするために、CSV から以下を使用しました。LocationID を認識し、必要に応じてレコードを更新すると思いました。しかし、そうではありませんでした。新しいレコードを挿入するだけです。
私はVisual Studio 2010とSQL Server 2012をWin認証で使用しています(実行されたパッケージの写真を見ると、履歴データへの変更をまったく認識していないように見えるため、権限の問題ではないと思います. ) 私も Windows 7 Home Premium を持っています。
オリジナルには多くのヌルがあり、このセットにも変更がありますが、変更はコミットされていません。また、新しい場所を追加すると、LocationID が同じであっても両方が追加されることに注意してください。
SSIS パッケージに入力します。ヌルを見ないでください!しかし、上記のデータは更新されませんでした。
これが私のSCDパッケージの写真です
これは、すべての入力属性をデータベース属性にマップする場所です。
ほとんどすべてのデータは履歴ですが、更新はありません
次の値については、さまざまな値を試しました。どれを選択しても、すべての選択を解除しても、違いはありません。
私はこれを同じままにしてきました(変更したことはありません)。これを有効および無効にしました。結果なし 完成した画面
etl - 代理キー (および SCD) を使用した DWH インポート
内部代理キーとタイプ 2 の緩やかに変化するディメンションを使用するデータ ウェアハウスがあります。クリアリングでは、次のように、erp システムからのビジネス キーのみを取得します。
データ ウェアハウスでは、代わりに代理キーを使用したいと考えています (注: 記事の価格が 500 ドルから 1000 ドルに変更され、可能であれば記事は代理キーを使用しています。ここでは製造元のみ)。
ビジネス キーのみを使用していた場合は問題ありません。古いエントリを比較して更新し、新しいエントリを挿入するだけです。しかし、代理キーでこれを行う最良の方法は何ですか?
クリアリングでデータ ウェアハウスから既存の ID (まだ存在しない場合は 0 または -1) を取得し、エントリを比較しますか?
ビジネス キーをデータ ウェアハウスにも保持し、それらを比較して ID を更新してから、データ ウェアハウスに入れますか?
ssas - 親子階層集約の問題を伴う SCD タイプ 2
階層を構築したマネージャー (親子関係) の自己参照を持つスタッフ ディメンションがあります。
DimStaff テーブル:
ファクト テーブル:
さて、このデータセットを例にとると、要件は次のとおりです。
1-階層をドリルダウンできる
2- 1 人が選択されたときに各階層レベルの値を集計する
どうすればそれを行うことができますか?(問題は私たちがそれを構築したことですが、キューブは Employee1 の 2 つの状態を 2 つの別個のエンティティとして受け入れ、それらを集約しないため、2 番目の要件は機能しません。)