Lição 11: Criar partições
Nesta lição, você criará partições para dividir a tabela Internet Sales em partes lógicas menores que podem ser processadas (Atualizadas) independentemente de outras partições. Por padrão, cada tabela que você inclui no modelo tem uma partição que contém todas as colunas e linhas da tabela. No caso da tabela Internet Sales, desejamos dividir os dados por ano; uma partição para cada um dos cinco anos da tabela. Cada partição pode ser processada independentemente. Para obter mais informações, consulte Partições (SSAS tabular).
Tempo estimado para concluir esta lição: 15 minutos
Pré-requisitos
Este tópico faz parte de um tutorial de modelo de tabela, que deve ser concluído na ordem. Antes de executar as tarefas desta lição, você deverá ter concluído a lição anterior: Lição 10: Criar hierarquias.
Criar partições
Para criar partições na tabela Internet Sales
No designer de modelos, clique na tabela Internet Sales, clique no menu Tabela e, clique em Partições.
A caixa de diálogo Gerenciador de Partições é aberta.
Na caixa de diálogo Gerenciador de Partições, em Partições, clique na partição Internet Sales.
Em Nome da Partição, altere o nome para Internet Sales 2005.
Dica Antes de passar para a próxima etapa, observe que os nomes de coluna na janela Visualização de Tabela exibem essas colunas incluídas na tabela de modelo (marcada) com os nomes de coluna da origem. Isso acontece porque a janela Visualização de Tabela exibe colunas da tabela de origem, e não da tabela de modelo.
Selecione o botão Editor de Consultas imediatamente acima do lado direito da janela de visualização.
Como você deseja que a partição inclua apenas essas linhas em um certo período, você deve incluir uma cláusula WHERE. Você só pode criar uma cláusula WHERE usando uma Instrução SQL.
No campo Instrução SQL, substitua a instrução existente colando a seguinte instrução:
SELECT [dbo].[FactInternetSales].[ProductKey], [dbo].[FactInternetSales].[CustomerKey], [dbo].[FactInternetSales].[PromotionKey], [dbo].[FactInternetSales].[CurrencyKey], [dbo].[FactInternetSales].[SalesTerritoryKey], [dbo].[FactInternetSales].[SalesOrderNumber], [dbo].[FactInternetSales].[SalesOrderLineNumber], [dbo].[FactInternetSales].[RevisionNumber], [dbo].[FactInternetSales].[OrderQuantity], [dbo].[FactInternetSales].[UnitPrice], [dbo].[FactInternetSales].[ExtendedAmount], [dbo].[FactInternetSales].[UnitPriceDiscountPct], [dbo].[FactInternetSales].[DiscountAmount], [dbo].[FactInternetSales].[ProductStandardCost], [dbo].[FactInternetSales].[TotalProductCost], [dbo].[FactInternetSales].[SalesAmount], [dbo].[FactInternetSales].[TaxAmt], [dbo].[FactInternetSales].[Freight], [dbo].[FactInternetSales].[CarrierTrackingNumber], [dbo].[FactInternetSales].[CustomerPONumber], [dbo].[FactInternetSales].[OrderDate], [dbo].[FactInternetSales].[DueDate], [dbo].[FactInternetSales].[ShipDate] FROM [dbo].[FactInternetSales] WHERE (([OrderDate] >= N'2005-01-01 00:00:00') AND ([OrderDate] < N'2006-01-01 00:00:00'))
Essa instrução especifica que a partição deve incluir todos os dados nas linhas onde OrderDate refere-se ao ano civil 2005 conforme especificado na cláusula WHERE.
Clique em Validar.
Observe que um aviso é exibido, declarando que determinadas colunas não estão presentes na origem. Isso acontece porque na Lição 3: Renomear colunas, você renomeou essas colunas na tabela Internet Sales do modelo para que ela seja diferente das mesmas colunas na origem.
Para criar uma partição para o ano 2006 na tabela Internet Sales
Na caixa de diálogo Gerenciador de Partições, em Partições, clique na partição Internet Sales 2005 que você acabou de criar e clique em Copiar.
Em Nome da Partição, digite Internet Sales 2006.
Na Instrução SQL, para que a partição inclua somente as linhas do ano 2006, substitua a cláusula WHERE pelo seguinte:
WHERE (([OrderDate] >= N'2006-01-01 00:00:00') AND ([OrderDate] < N'2007-01-01 00:00:00'))
Para criar uma partição para o ano 2007 na tabela Internet Sales
Na caixa de diálogo Gerenciador de Partições, clique em Copiar.
Em Nome da Partição, digite Internet Sales 2007.
Em Alternar para, selecione Editor de Consultas.
Na Instrução SQL, para que a partição inclua somente as linhas do ano 2007, substitua a cláusula WHERE pelo seguinte:
WHERE (([OrderDate] >= N'2007-01-01 00:00:00') AND ([OrderDate] < N'2008-01-01 00:00:00'))
Para criar uma partição para o ano 2008 na tabela Internet Sales
Na caixa de diálogo Gerenciador de Partições, clique em Novo.
Em Nome da Partição, digite Internet Sales 2008.
Em Alternar para, selecione Editor de Consultas.
Na Instrução SQL, para que a partição inclua somente as linhas do ano 2008, substitua a cláusula WHERE pelo seguinte:
WHERE (([OrderDate] >= N'2008-01-01 00:00:00') AND ([OrderDate] < N'2009-01-01 00:00:00'))
Para criar uma partição para o ano 2009 na tabela Internet Sales
Na caixa de diálogo Gerenciador de Partições, clique em Novo.
Em Nome da Partição, digite Internet Sales 2009.
Em Alternar para, selecione Editor de Consultas.
Na Instrução SQL, para que a partição inclua somente as linhas do ano 2009, substitua a cláusula WHERE pelo seguinte:
WHERE (([OrderDate] >= N'2009-01-01 00:00:00') AND ([OrderDate] < N'2010-01-01 00:00:00'))
Processar partições
Na caixa de diálogo Gerenciador de Partições, observe o asterisco (*) ao lado dos nomes de partição para cada nova partição que você acabou de criar. Isso indica que a partição não foi processada (atualizada). Quando você cria novas partições, deve executar a operação Processar Partições ou Processar Tabela para atualizar os dados nessas partições.
Para processar partições Internet Sales
Clique em OK para fechar a caixa de diálogo Gerenciador de Partições.
No designer de modelos, clique na tabela Internet Sales, clique no menu Modelo, aponte para Processar (Atualizar) e clique em Processar Partições.
Na caixa de diálogo Processar Partições, verifique se o Modo está definido como Processar Padrão.
Marque a caixa de seleção na coluna Processar para cada uma das cinco partições criadas e clique em Ok.
Se você for solicitado a fornecer credenciais de Representação, insira o nome de usuário e a senha do Windows que especificou na Lição 2, etapa 6.
A caixa de diálogo Processo de Dados será exibida mostrando os detalhes do processo de cada partição. Observe que um número diferente de linhas para cada partição é transferido. Isso acontece porque cada partição inclui somente as linhas referentes ao ano especificado na cláusula WHERE da Instrução SQL: Não há nenhum dado para o ano 2010.
Próximas etapas
Para continuar este tutorial, vá para a próxima lição: Lição: Lição 12: Criar funções.