問題タブ [fact-table]
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 - starschemaETLからデータウェアハウスへ
私たちは学校のプロジェクトで忙しいです。データウェアハウスを構築する必要がありますが、行き詰まります。
私は次のstarschemaを持っています:
dim_location:
Location_key(主キー)
街
dim_condition:
Condition_key(主キー)
説明(例:良い、悪い、非常に悪い、非常に良いなど)
dim_time:
Time_key
年
日にち
クォーター
等
ファクトテーブルグラウンド:
Time_Key(外国)
Location_Key(外国)
Condition_Key(外国)
ロケーションディメンションは、すべての種類のロケーションを含むテーブルである必要があります。条件ディメンションは、良い、悪い、それほど悪くない、非常に良いなどの条件を持つテーブルである必要があります。また、時間ディメンションは、すべての日、四半期などのテーブルである必要があります。
このことから知っておくべきことは、「特定の場所の特定の日に、地面が特定の状態にあったことを知りたい」ということです。
例:1月20日の月曜日、アムステルダムの地面は良くありませんでした。
それらの次元と事実を埋めるために使用する必要のあるダンプがいくつかあります。しかし、私は最善の方法が何であるか、そしてファクトテーブルを埋める方法を知りません。私はすでにSSISでディメンションを入力しましたが、それはうまくいきましたが、ファクトテーブルを入力できません(試行:複数のルックアップ、マージ、マージ結合)誰かがデータウェアハウスを作成して入力する方法を段階的に教えてもらえますか(最良の方法)?
英語が下手でごめんなさい。
ヘルプは非常にありがたいです。
ありがとう!
data-warehouse - データ ウェアハウスの設計 - ファクト テーブルの設計方法
私は DW の初心者で、e コマース Web サイト用の非常に単純な倉庫を作成する必要があります。
寸法表
- 日付次元テーブル (id、年、四半期、月、日)
- 時間次元テーブル (id、時間、分)
- 製品ディメンション テーブル (id、製品名、価格、カテゴリ ID)
- 商品カテゴリ次元表(id、カテゴリ名)
ファクト テーブル
- 製品ごとの売上 (日付 ID、製品 ID、販売数、価格合計)
このファクト テーブルは、「6 月にどれくらいの商品が売れたか」などの質問に適しています。
しかし、「6 月に最も売れた製品はどのカテゴリか」などの質問に答える必要があります。または「水曜日の 1 日の中で最もビジネスが成功する時間帯は?」。
2 つの可能性があります。
- 製品ファクト テーブルに新しい列 (カテゴリ ID または時間 ID) を追加できます。ただし、この ID はテーブルの粒度を変更します
- カテゴリに関するファクトを含むカテゴリ用の別のファクト テーブルを作成できます。しかし、これは (私の意見では) ディスク容量を浪費していますよね?
どの可能性が正しいですか?
loading - ディメンションを入力しました - ファクト テーブルを入力する方法を教えてください。
タイム ディム、サイト ディム、放棄ディム、ワークタイプ ディムの 4 つのディメンション テーブルを作成しました。
ステージング テーブルの最終ファクト テーブルで必要なメジャーを計算しましたが、ディメンション ID とメジャーをファクト テーブルに転送するにはどうすればよいですか?
ファクト テーブルは、これらの列で終了する必要があります
データは、4 つのディメンション ID によってもグループ化する必要があります。
sql - ディメンション テーブルからファクト テーブルに ID を設定する
放棄されたコールのディメンション テーブルには、ID 1 コード NO 、ID 2 コード YES があります。結合を使用してコールが放棄されたかどうかに基づいて、これらの ID をファクト テーブルにロードしたいと考えています。
データベースの Abandoned 値が NO の場合は NULL、YES の場合は 1 であるという問題があります。
だから参加したら
結果が出ない?
これに関するアイデアはありますか?
基本的に必要なものは次のとおりです。
メジャーの放棄値が null の場合は放棄ディメンションの放棄 ID を 2 にし、null でない場合は放棄 ID を 2 にしたい
ありがとう
relational-database - データ ウェアハウジングのファクト テーブルを理解する
基本的なスター スキーマを使用すると、ファクト テーブルには、少なくとも各ディメンションの行数の積に等しい行数が含まれると言われています。
たとえば、製品が 3 つ、プロモーションが 5 つ、店舗が 10 の場合、製品が実際にすべてのプロモーションを行っている場所やすべての店舗に存在する場所に関係なく、ファクト テーブルには少なくとも 150 のレコードが必要であることを意味します。具体的には、製品に特定のプロモーションがない場合などに null 値が存在します。
誰かがサポートする学術情報源を提供してくれませんか、少なくともこの考えを確認してください。
私がこれを尋ねている理由は、私の理解では、これによりファクト テーブルに大量の役に立たないデータが作成されることがわかっているからです。
ありがとう!
ssis - 代理キーを検索し、ファクト テーブルに入力する
ディメンション テーブルを検索してファクト テーブルに入力する必要がある8 つの代理キーがあります。ディメンション テーブルへの8 つのルックアップを作成し、マージ結合コンポーネントと並べ替えコンポーネントを使用して、データを 1 つの結果セットにマージし、ディメンションテーブルに挿入します。私の心配は、挿入を行う前に多くのマージとソートが行われ、パフォーマンスが良くないことです。上記で説明したことを達成するための最良の方法は何ですか?
sql - ファクト テーブルでパーセンテージを特定する
私はプログラミングが初めてで、答えが見つかりませんでした。
次のディメンション (テーブル) とファクト テーブルがあります。
- 顧客: CustomerId、HomeRegion
- リージョン: RegionId、RegionName
- MyTime: id、MyHour
- ファクト テーブル: CustomerId、RegionId、TimeId、FactId
HomeRegion、Hour、RegionName、UserPercentageとして報告する必要があります。

例に示すように、ホーム地域がA の3.67% の人だけが午前 9 時にBに移動します。
私はsimular 1を作成する必要があります。
問題は UserPercentage の取得です。これが私がこれまでに行ったコードです。