モデルの詳細が事前にわからない場所でOLAPキューブを構築できますか?
質問
羊毛質の質問はご容赦ください。OLAP&にはあまり慣れていません。キューブ。私の状況を説明しましょう...
アンケートの結果を保存するデータベースを構築したいのですが、アンケートごとに数十の質問があるかもしれません。数千の完成したアンケートを収集したので、結果を分析したいと思いますが、これはOLAPタイプのもの(私はほとんど知らない)の良い候補のようです。 「犬を飼っている20歳から30歳までのすべての男性回答者」に対してクエリを実行できる必要があります。 -つまり、「あなたは何歳ですか」、「犬を飼っていますか」などへの回答を組み合わせます。
また、来月の調査の結果やその翌月などを保存し、今月と最後の月などを示すクエリを実行できるようにしたいと思っています。 >
私の質問の要点は次のとおりです。今月は、アンケートに性別、年齢、および年齢に関する質問があるかもしれません。犬の所有権、来月のアンケートには(たとえば)目の色に関する質問が含まれる場合があります。また、いくつかの質問を落とすかもしれないし、しないかもしれません。 OLAPの世界ではそれが可能ですか、それともすべての" dimensions"を知る必要がありますか? (適切な用語を使用している場合)事前にキューブを設計する際に
また、異なるが重複する質問で複数の異なる調査を実行している場合、それらをすべて同じキューブに保存し、調査全体でクエリを実行できますか?各調査には数十の質問があり、数十の質問が他の調査と重複している場合があります。 OLAPシステムは、この種のことに対応していますか?それらがどれほど厳格で、実際にこの種の使用に適しているかどうかはわかりません。
ご協力ありがとうございます。
PS。誰かがそれを提案する前に、私はKimballのData Warehouse Toolkitを購入しましたが、まだ読む機会がありませんでした。 (とにかくこの質問に直接答えられないかもしれないと思う)。
解決
ホワイトペーパーこちらには、調査データのモデリングに関するセクションがあります。これはおそらくあなたが探しているようなものです。
他のヒント
私はOLAP初心者でもあると言うことから始めますが、私はあなたが達成しようとしていることを理解していると思います。
実際には、質問はディメンションの1つであり、その質問に対する回答はファクトテーブルの一部です。つまり、ファクトテーブルには回答があり、年齢、性別、地域(おそらく)、質問に関するディメンションが関連付けられています。少し前を向いているように感じるかもしれませんが、OLAPに関しては私はこれに同意します。
質問に関連する別のディメンションをアンケートにグループ化することもできますが、それは質問ディメンション自体の値である可能性があります。例:Question {QuestionnaireID = 1、QuestionNumber = 4、QuestionText =" ?" }。
それが役立つかどうかはわかりませんが、うまくいけば他に何も考えられないでしょう。
別のOLAP初心者もここにいます...
1)Mondrian(Pentaho)でOLAPキューブを作成した経験があります。これにより、XMLファイルであるキューブのスキーマを修正し、再構築(またはPentahoで言えば、公開)することができます。とにかく、そのプラットフォームでは、事前にすべてのディメンションを知るためのそのような要件はありません
2)質問の次元の作成に関するLazurusの推奨に同意します。 「事実」のそれぞれが必須ではありません。はすべてのディメンションに存在する値を持っているので、「質問n」のディメンション全体を見ると、「質問n」が含まれるアンケートのデータのみが提供されるはずです。関連するディメンションです。