私は高い評価を答えに同意するが、私は以下を追加しようと思いました:
* Do you use a staging area to perform the transformation and then
負荷の倉庫に?
ステージングが必要かどうかは、トランスフォームのタイプによって異なります。ステージングは、ETLをより管理しやすいチャンクに分割するメリットをもたらしますが、ウェアハウスに影響を与えずにデータ上で操作を実行できる作業領域も提供します。ファクトレコードをロードするときにルックアップとして使用するために、OLTPシステムのキーと最新のdimレコードのキーを格納するステージング領域に(少なくとも)いくつかのディメンションルックアップを持たせることができます。 変換はETLプロセス自体で行われますが、途中で手助けするためにステージングが必要な場合とない場合があります。
* How do you link data between the warehouse and the OLTP database?
バックOLTPシステムへの参照として、データウェアハウスに(利用可能な場合、または実際の主キー)ビジネスキーをロードするために有用です。また、DWプロセスでの監査では、ロードされたロードプロセスを記録することによって、データの各ビットの系統を記録する必要があります。ストアドプロシージャ、DTS/SSISパッケージ、アプリケーションコードから やSQLなど
* Where/How do you manage the transformation process - in the
データベース?
これは通常、SSISパッケージに含まれますが、多くの場合、ソースクエリで変換する方が効率的です。残念ながら、これはソースクエリを理解して維持するのが非常に複雑になるため、パフォーマンスが問題ではない場合は、SSISコードを変換するのが最適です。これを行うと、ステージング領域を持つもう1つの理由として、異なるテーブル間でソースクエリでより多くの結合を行うことができます。
@John - データウェアハウスモデルにKimbleの「ファクトおよびディメンションスタースキーマ」デザインを使用しましたか? –
そうだと思います。私はこの「キンブル」人を読んだことはありませんが、人々はデータウェアハウスで彼の名前をアルゴリズムで「クヌス」と呼ぶほど多く呼びます。しかし、再び、私は決してその最初のクヌスの本を完成させず、セット全体を売ることを諦めた。私が今作業しているデータマートは、いくつかのディメンションが次元を持つので、スノーフレークのものです。私たちの状況は、顧客とセールスマンの両方がディメンションであることに類似しています。 –
謝罪、私はキンブルではなくキンブルを意味しています:) –