Recalcular a dimensão do tempo nos Lances

17

Estou usando o BIDS para criar um cubo no SSAS 2008 r2.

Eu usei o assistente para criar uma dimensão de tempo. Parte dessa configuração é selecionar um período.

Após a criação, percebi que precisava de um período maior do que o especificado originalmente.

Descobri que podia abrir a dimensão, ir para propriedades e redefinir o período lá. Salvei e reprocessei a dimensão, mas o período real na tabela não está aumentando para incluir as datas adicionadas recentemente.

Existe outra maneira de fazer com que essa dimensão de tempo cresça ou preciso recriá-la do zero?

JNK
fonte
3
Eu sempre criei o meu a partir do zero por meio de um procedimento armazenado que aceita datas de início / término e granularidade (segundos, minutos, etc.) como parâmetros.
datagod
1
Bem, eu usei o assistente porque não precisava de nada melhor do que o dia, e as garoupas foram incorporadas. Eu sou um noob do SSAS, então estava procurando o caminho de menor resistência.
JNK
Portanto, como solução alternativa, recriei isso do zero, mas gostaria de saber se há outra solução para isso.
JNK
mas o período real na tabela não está aumentando para incluir as datas recém-adicionadas Como você navegou para ver os dados adicionados recentemente, após a dimensão de reprocessamento? Qual foi o período de tempo original?
Ilya Berdichevsky
@nikadim Naveguei na dimensão após o reprocessamento. Também executei meu processo de cubo novamente, que falhou, pois havia datas em que ele estava tentando ingressar fora do intervalo. A gama original de como 2009-2012 e I adicionada a partir 2006--
JNK

Respostas:

1

A sua dimensão Time está conectada a uma fonte ou é uma dimensão Time do servidor que não possui tabela na fonte Data

porque geralmente quando você gera uma dimensão de tempo usando BIDs, essas duas opções são fornecidas

e parece que, no seu caso, você não possui uma tabela na fonte de dados, quero dizer que você escolheu uma dimensão de tempo do servidor que cria uma dimensão no próprio servidor de análise.

para que você não possa acrescentar ou adicionar mais datas, será necessário recriá-lo do zero.

mas se você escolher a outra opção "Gerar um horário na fonte de dados" Essa opção cria uma tabela de dimensões de tempo na fonte de dados subjacente e preenche o mesmo com os dados com base nas entradas fornecidas.

você deve ter acesso para poder criar uma tabela na sua fonte de dados

nesse caso, você pode adicionar registros à tabela e reprocessá-la.

Aqui está um script fácil para criar e preencher uma tabela de dimensão de tempo e, posteriormente, você pode gerar sua dimensão de tempo no cubo a partir desta tabela

http://microsoft-ssis.blogspot.com/2011/01/create-and-fill-time-dimension.html

e aqui estão 2 artigos sobre como gerar uma dimensão de tempo e suas opções

http://www.sqlservergeeks.com/blogs/AmitK/sql-server-bi/383/ssas-considerations-for-time-dimension-part1

http://www.sqlservergeeks.com/blogs/AmitK/sql-server-bi/385/sql-server-ssas-considerations-for-time-dimension-part-2

AmmarR
fonte
Havia uma tabela para isso na fonte de dados.
JNK
Eu apenas tentei criar uma dimensão de tempo e, depois de criá-lo e processá-lo, alterei o intervalo de dados como você fez nas propriedades da dimensão de tempo, salvei-o, processei-o novamente e, na guia do navegador, cliquei em Atualizar e as novas datas mostrar-se ......... se isso não funcionar com você tente adicionar datas manualmente para a tabela de origem de dados e reprocessar a dimensão
AmmarR
1

Dê uma olhada na caixa de diálogo Propriedades da dimensão de tempo. Expanda o nó Origem e altere o CalendarStartDate ou CalendarEndDate para atender às suas necessidades. Em seguida, reprocesse a dimensão.

mbbblue
fonte