none
COLOCAR DIMENSÃO DE TEMPO RRS feed

  • Pergunta

  • boa tarde!

    Estou iniciando como estagiário e gostaria de saber como colocar uma dimensão de tempo

    consigo gerar um cubo por exemplo com produtos, mês, total. mas quando coloco uma dimensão de tempo separada ela não se liga por exemplo a venda do produto, só funciona por exemplo se eu já ter uma tabela de produtos já com as data, mas quero fazer uma tabela de data a parte e incluir para qualquer cubo é possível?

    quinta-feira, 11 de agosto de 2011 19:02

Respostas

  • Ching-Ling,

     

    Vejo que existe algumas duvidas conceituais no seu texto, vamos la:

    Primeiramente tambem não sou especialista em BI, apenas em Dev e DBA, mas estou estudando e posso te ajudar.

    Primeiramente, voce tem um ambiente OLTP, ou seja, um ambiente transacional, onde o mesmo é utilizado diariamente por seus usuarios pelas aplicações.

    Para a analise de dados, ou seja, o proprio BI, é preciso um ambiente OLAP, para se transformar dados de um ambiente OLTP em um ambiente OLAP é necessario um processo ETL (Extration [Extração do ambiente OLTP], Transformation [Transformação dos dados para se encaixarem no ambiente OLAP] e Load [Carga no ambiente OLAP]), tendo isso em mente, vamos montar nosso ambiente OLAP:

    A primeira coisa a se pensar: Qual a granularidade maxima que eu quero atingir agora? A resposta dessa pergunta sera seu principal objetivo a alcançar em sua tabela FATO (Tabela principal), normalmente essa tabela é formada por muitas PK´s, e apenas alguns dados proprios por linha (Cujos quais seria possivel colocarem em tabelas externas e criar o relacionamento)

    Vamos a um exemplo:

    Temos uma rede de loja de roupas.

    Possuimos 50 Filiais

    Cada filial trabalha com 10 Modelos de roupas apenas

    Se decidirmos que a granularidade maxima de nossa tabela fato sera a venda, teriamos como tabela fato algo +- assim:

    CREATE TABLE Venda_Fato

    (

    Data,

    ID_LOJA,

    ID_MODELO,

    ID_VENDA

    )

    E então teriamos como tabelas de dimensão as tabelas referente as lojas e suas caracteristicas, os modelos e suas caracteristicas e a venda e suas caracteristicas.

    Em um cenario estrela teriamos a tabela fato como tabela principal e todas as outras se relacionando com ela.

     

    Agora, em relação a sua duvida:

    Veja que estamos falando apenas de tabelas comuns em um ambiente OLAP, ou seja, se voce estruturar bem suas tabelas de dimensão, elas podem sim servir para N cubos diferentes uma vez que um cubos apenas consome as informações das tabelas especificadas, alem de que teoricamente não havera lock pois é apenas select (falo teoricamente pois ha como causar lock em select)


    Fabrizzio A. Caputo
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com
    • Marcado como Resposta Ching-Ling segunda-feira, 15 de agosto de 2011 13:20
    quinta-feira, 11 de agosto de 2011 19:11
    Moderador

Todas as Respostas

  • Ching-Ling,

     

    Vejo que existe algumas duvidas conceituais no seu texto, vamos la:

    Primeiramente tambem não sou especialista em BI, apenas em Dev e DBA, mas estou estudando e posso te ajudar.

    Primeiramente, voce tem um ambiente OLTP, ou seja, um ambiente transacional, onde o mesmo é utilizado diariamente por seus usuarios pelas aplicações.

    Para a analise de dados, ou seja, o proprio BI, é preciso um ambiente OLAP, para se transformar dados de um ambiente OLTP em um ambiente OLAP é necessario um processo ETL (Extration [Extração do ambiente OLTP], Transformation [Transformação dos dados para se encaixarem no ambiente OLAP] e Load [Carga no ambiente OLAP]), tendo isso em mente, vamos montar nosso ambiente OLAP:

    A primeira coisa a se pensar: Qual a granularidade maxima que eu quero atingir agora? A resposta dessa pergunta sera seu principal objetivo a alcançar em sua tabela FATO (Tabela principal), normalmente essa tabela é formada por muitas PK´s, e apenas alguns dados proprios por linha (Cujos quais seria possivel colocarem em tabelas externas e criar o relacionamento)

    Vamos a um exemplo:

    Temos uma rede de loja de roupas.

    Possuimos 50 Filiais

    Cada filial trabalha com 10 Modelos de roupas apenas

    Se decidirmos que a granularidade maxima de nossa tabela fato sera a venda, teriamos como tabela fato algo +- assim:

    CREATE TABLE Venda_Fato

    (

    Data,

    ID_LOJA,

    ID_MODELO,

    ID_VENDA

    )

    E então teriamos como tabelas de dimensão as tabelas referente as lojas e suas caracteristicas, os modelos e suas caracteristicas e a venda e suas caracteristicas.

    Em um cenario estrela teriamos a tabela fato como tabela principal e todas as outras se relacionando com ela.

     

    Agora, em relação a sua duvida:

    Veja que estamos falando apenas de tabelas comuns em um ambiente OLAP, ou seja, se voce estruturar bem suas tabelas de dimensão, elas podem sim servir para N cubos diferentes uma vez que um cubos apenas consome as informações das tabelas especificadas, alem de que teoricamente não havera lock pois é apenas select (falo teoricamente pois ha como causar lock em select)


    Fabrizzio A. Caputo
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com
    • Marcado como Resposta Ching-Ling segunda-feira, 15 de agosto de 2011 13:20
    quinta-feira, 11 de agosto de 2011 19:11
    Moderador
  • HUM, OBRIGADO PELA AJUDA FABRIZZIO, TODA AJUDA É BEM VINDA NO MEU CASO, HEHE

    ENTENDI QUE SE ESTRUTURAR AS TABELAS E SEUS RELACIONAMENTOS SERVIRÃO PARA N CUBOS...

    PROVAVELMENTE NÃO FORMULEI A QUESTÃO DIREITO

     

    MINHA DÚVIDA PRINCIPAL É,

    TEM COMO FAZER UMA TABELA SOMENTE DE DATA E FAZER O SEU RELACIONAMENTO NO MOMENTO DA CONSTRUÇÃO DO CUBO?

    sexta-feira, 12 de agosto de 2011 15:02
  • Ching ling,

     

    Não vejo problemas nisso, mas voce tera de estar sempre atualizando sua tabela de datas, e não apenas sua tabela fato.


    Fabrizzio A. Caputo
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com
    sexta-feira, 12 de agosto de 2011 17:13
    Moderador
  • obrigado pela ajuda fabrizzio.
    segunda-feira, 15 de agosto de 2011 13:03
  • Ching-Ling,

     

    Se possivel, marque como "resposta" as respostas que te ajudaram para que possa ajudar outros usuarios que venham a ter a mesma duvida.


    Fabrizzio A. Caputo
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com
    segunda-feira, 15 de agosto de 2011 13:08
    Moderador
  • hã Fabrizzio? tenho mais dúvidas, não querendo te alugar claro...

     

    assim no report, eu utilizo o report builder 3.o ou o report do studio

    construo um relatório por exemplo de producão, ele compila direitinho.

    no report service configuration manager(configurei meio que sem nocao, mas rodou no browser, fiz o cadastro e tudo, adicionei usuario, mas não acessa de outro pc so do meu) diz que não há servidor de relatório o que é isso

    como utilizar o configuration manager para acessar de qualquer pc acessar meus relatórios que coloco no service configuration manager?

    segunda-feira, 15 de agosto de 2011 13:28
  • Ching-Ling,

     

    Se voce quer apenas acessar de seu dominio é facil, basta seguir esses steps de configuração certinha do reporting service, e com um usuario adm dar permissao para outros usuario, pelo link no mesmo dominio voce conseguira acessar de qualquer computador.

     

    Link: http://support.microsoft.com/kb/938245

    Dica: Um projeto voce ira realizar um deploy, se precisar de ajudar como apontar seu projeto para um reporting service, ficarei feliz em ajudar, mas por favor abra outra thread.

    Dica2: Só estou com o RS do SQL Server 2008R2 aqui, todo caso, para acessar a URL de relatorio, abra o Reporting Sertvice configuration Manager, conecte-se no RS, no menu a esquerda existe um link chamado: Report Manager URL, ali deve ter um link, este é o link que voce devera acessar de outras maquinas.


    Fabrizzio A. Caputo
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com
    segunda-feira, 15 de agosto de 2011 13:33
    Moderador
  • ao colocar o  link chamado: Report Manager URL da minha maquina (win 7) nao consigo acessar de outro pc que esta aqui do lado, somente do meu note

    pelo link msdn faz referencia ao windows server 2008 será esse o problema pois estou com win 7

    segunda-feira, 15 de agosto de 2011 14:09