um cubo OLAP pode ser construído onde os detalhes do modelo não são conhecidos com antecedência?

StackOverflow https://stackoverflow.com/questions/1002334

  •  05-07-2019
  •  | 
  •  

Pergunta

Pardon me para a questão de lã - Eu realmente não estou familiarizado com OLAP e cubos. Deixe-me explicar a minha situação ...

Eu gostaria de construir um banco de dados para armazenar resultados do questionário, onde pode haver algumas dezenas de perguntas por questionário. Depois de reunir alguns milhares de questionários preenchidos, eu gostaria de analisar os resultados, e que soa como um bom candidato para o tipo de material OLAP (dos quais eu sei muito pouco). Eu preciso ser capaz de executar consultas em "todos os entrevistados do sexo masculino idade 20-30 que possui um cão." - ou seja, combinando as respostas a "quantos anos você", "você possui um cão", etc

Eu também quero ser capaz de armazenar os resultados de pesquisa do próximo mês, e no mês seguinte que, etc., e executar consultas que mostram este mês contra o passado, etc. Até agora, tão bom, eu assumo.

Aqui está o cerne da minha pergunta: enquanto este mês meu questionário pode ter perguntas sobre sexo, idade e posse do cão, questionário do próximo mês pode incluir uma pergunta sobre (digamos) a cor dos olhos. Ele pode (ou não pode) também cair algumas perguntas. Se que capaz de fazer no mundo do OLAP, ou você precisa saber todas as "dimensões" (se eu estou usando o termo certo), quando você projetar seu cubo?

Além disso, se eu estou correndo vários inquéritos diferentes, com diferentes, mas sobrepostos perguntas, posso armazená-los todos no mesmo cubo e executar consultas através pesquisas? Cada pesquisa pode ter algumas dezenas de perguntas, com um par de dezenas de sobreposição com outras pesquisas. sistemas Do OLAP atender a esse tipo de coisa? Eu só não sei como rígida que são, e se eles são de fato apropriado para este tipo de uso.

Qualquer ajuda muito apreciada.

PS. Antes que alguém sugere que ele, eu apenas comprar Data Warehouse Toolkit de Kimball, mas não tiveram a chance de lê-lo ainda. (Eu suspeito que pode não responder diretamente a esta pergunta de qualquer maneira).

Foi útil?

Solução

Não é um papel branco aqui que tem uma seção cobrindo dados da pesquisa de modelagem. Este talvez o tipo de coisa que você está procurando.

Outras dicas

Vou começar por dizer que eu sou um novato OLAP também, mas eu acho que tem uma alça sobre o que você está olhando para conseguir.

Com efeito suas perguntas são uma das suas dimensões, a resposta a essa questão é parte da tabela de verdade, ou seja, a tabela de fatos tem a resposta e tem dimensões associados para a idade, sexo, localidade (talvez), perguntas. Ele pode se sentir um pouco para trás para frente, mas isso é algo que eu estou chegando a um acordo com para OLAP.

Você pode também querem uma outra dimensão relacionada com a pergunta que os agrupa em questionários mas que poderia ser apenas um valor na dimensão questão em si, ou seja Pergunta {QuestionnaireID = 1, QuestionNumber = 4, QuestionText = "Você possui um cachorro? " }.

Não tenho certeza se isso ajuda, mas espero que vai lhe dar algumas idéias, se nada mais.

Outro novato OLAP aqui também ...

1) Eu só tenho experiência na criação de cubos OLAP com Mondrian (Pentaho), que lhe permite rever o esquema do cubo, que é apenas um arquivo XML, e reconstruí-las (ou em Pentaho-falar, publicar). Então, para essa plataforma, de qualquer maneira, não há tais requisitos para conhecer todas as suas dimensões antes do tempo

2) Concordo com a recomendação Lazurus' sobre a criação de uma dimensão de perguntas. Não é uma exigência que cada um de seus "fatos" tem um valor que está presente em todas as dimensões, por isso, se você estava a olhar através da dimensão de "Pergunta n", então eu acredito que só deve dar-lhe dados para os questionários onde "Pergunta n" é uma dimensão relevante.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top