0

Mondrian サーバー用の最初の Olap キューブ スキーマを作成しようとしています。外部キーを入れるためにいくつかの結合を持つファクトテーブルとしてビューを作成することを思いつきました。次のように見えるとしましょう。

SELECT call.id, record.user, topic.id, session.id, user.id, session.end, session.start FROM calls call
  LEFT JOIN call_records record ON (record.call_id = call.id)
  LEFT JOIN topis topic ON (topic.id = record.topic_id)
  LEFT JOIN login_sessions session ON (record.session_id = session.id)
  LEFT JOIN users user ON (session.user_id = user.id)

と呼ばれるディメンションも作成しましたUsers(Topicsそして、もう少しシンプルにしようとしています)、すべてが正常に機能し、トピックまたは各ユーザーの作業時間の概要を除いて、必要なすべての情報を取得しました。

session.end - session.startセッションテーブルが結合され、同じセッションが複数回発生するため、合計することはできません。

加えて、私は自分が想定されている方法でそれをやっているとは思わない.

正しい方法でそれを行うのを手伝ってもらえますか? ありがとう

4

1 に答える 1

1

正規化されたデータセットに対して OLAP モデルを作成することは、通常はお勧めできません。OLAP システムの非正規化モデルと、これらを作成するために ETL / ELT 手法をどのように活用するかについて読む必要があります。

あなたを助けるためにそこにたくさんの文献があります。OLAP の「スター」スキーマと ETL ツールに慣れることをお勧めします。

于 2013-08-12T14:57:09.820 に答える