Partilhar via


Lição 5-2 – Definindo uma relação de fatos

Aplica-se a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Algumas vezes, os usuários desejam dimensionar medidas por itens de dados que estão na tabela de fatos ou consultar a tabela de fatos em busca de informações relacionadas específicas, como, por exemplo, números de faturas ou de ordens de compra relacionados a determinados fatos de vendas. Ao definir uma dimensão com base em um item da tabela de fatos, a dimensão será chamada dimensão de fatos. As dimensões de fatos também são conhecidas como dimensões de degeneração. Elas são úteis para agrupar em conjunto as linhas de tabelas de fatos relacionadas, como, por exemplo, todas as linhas que estiverem relacionadas a um determinado número de fatura. Embora seja possível colocar essas informações em uma tabela de dimensões separada no banco de dados relacional, criar uma tabela de dimensões separada para essas informações não fornecerá benefício algum, pois a tabela de dimensões tende a aumentar na mesma proporção que a tabela de fatos, duplicando dados e tornando maior sua complexidade.

Em SQL Server Analysis Services, você pode determinar se deve duplicar os dados de dimensão de fato em uma estrutura de dimensão MOLAP para aumentar o desempenho da consulta ou se deseja definir a dimensão de fato como uma dimensão ROLAP para economizar espaço de armazenamento em detrimento do desempenho da consulta. Quando você armazena uma dimensão com o modo de armazenamento MOLAP, todos os membros da dimensão são armazenados na instância de SQL Server Analysis Services em uma estrutura MOLAP altamente compactada, além de serem armazenados nas partições do grupo de medidas. Quando você armazena uma dimensão com o modo de armazenamento ROLAP, somente a definição de dimensão é armazenada na estrutura MOLAP– os próprios membros da dimensão são consultados da tabela de fatos relacionais subjacente no momento da consulta. O modo de armazenamento apropriado pode ser definido com base na frequência em que a dimensão de fatos é consultada, no número de linhas retornada por uma consulta comum, no desempenho da consulta e no custo de processamento. A definição de uma dimensão como ROLAP não requer que todos os cubos que usam a dimensão também sejam armazenados no modo ROLAP. O modo de armazenamento de cada dimensão pode ser configurado independentemente.

Quando você define uma dimensão de fatos, é possível definir a relação entre a dimensão de fatos e o grupo de medidas como uma relação de fatos. As restrições a seguir se aplicam às relações de fatos:

  • O atributo de granularidade deve ser a coluna chave da dimensão, que cria uma relação um-para-um entre a dimensão e os fatos na tabela de fatos.

  • Uma dimensão pode ter uma relação de fatos apenas com um único grupo de medidas.

Observação

As dimensões de fatos devem ser atualizadas incrementalmente após cada atualização do grupo de medidas referenciada pela relação de fatos.

Para obter mais informações, consulte Relações de dimensãoe Definir uma relação de fatos e as propriedades da relação fatos.

Nas tarefas deste tópico, você adiciona uma nova dimensão de cubo com base na coluna CustomerPONumber da tabela de fatos FactInternetSales . Em seguida, você define a relação entre essa nova dimensão de cubo e o grupo de medidas Vendas pela Internet como uma relação de fatos.

Definindo a dimensão de fatos dos pedidos de venda pela Internet

  1. Em Gerenciador de Soluções, clique com o botão direito do mouse em Dimensões e clique em Nova Dimensão.

  2. Na página Bem-vindo ao Assistente para Dimensões , clique em Avançar.

  3. Na página Selecionar Método de Criação , verifique se a opção Usar uma tabela existente está selecionada e clique em Avançar.

  4. Na página Especificar Informações de Origem , verifique se a exibição da fonte de dados Adventure Works DW 2019 está selecionada.

  5. Na lista Tabela principal , selecione InternetSales.

  6. Na lista Colunas de chave , verifique se SalesOrderNumber e SalesOrderLineNumber estão listados.

  7. Na lista Coluna de nome , selecione SalesOrderLineNumber.

  8. Clique em Próximo.

  9. Na página Selecionar Tabelas Relacionadas , desmarque as caixas de seleção ao lado de todas as tabelas e clique em Avançar.

  10. Na página Selecionar Atributos de Dimensão , clique duas vezes na caixa de seleção no cabeçalho para desmarcar todas as caixas. O atributo Número do Pedido de Vendas permanecerá selecionado porque é o atributo de chave.

  11. Selecione o atributo Número da OC do Cliente e clique em Avançar.

  12. Na página Concluindo o Assistente , altere o nome para Detalhes do Pedido de Vendas pela Internet e clique em Concluir para concluir o assistente.

  13. No menu Arquivo , clique em Salvar Tudo.

  14. No painel Atributos do Designer de Dimensão na dimensão Detalhes do Pedido de Vendas pela Internet , selecione Número do Pedido de Vendase altere a propriedade Name na janela Propriedades para Descrição do Item.

  15. Na célula da propriedade NameColumn , clique no botão procurar (...). Na caixa de diálogo Coluna de Nome , selecione Produto na lista Tabela de origem , selecione EnglishProductName para a coluna Origem e clique em OK.

  16. Adicione o atributo Número do Pedido de Vendas à dimensão arrastando a coluna SalesOrderNumber da tabela InternetSales no painel Exibição da Fonte de Dados até o painel Atributos .

  17. Altere a propriedade Name do novo atributo Número do Pedido de Vendas para Número do Pedidoe altere a propriedade OrderBy para Chave.

  18. No painel Hierarquias , crie uma hierarquia de usuário Pedidos de Vendas pela Internet que contém os níveis Número do Pedido e Descrição do Item , nessa ordem.

  19. No painel Atributos , selecione Detalhes do Pedido de Vendas pela Internete examine o valor da propriedade StorageMode na janela Propriedades.

    Observe que, por padrão, essa dimensão é armazenada como uma dimensão MOLAP. Embora a alteração do modo de armazenamento para ROLAP economize tempo de processamento e espaço de armazenamento, ela reduz o desempenho da consulta. Apenas para a finalidade deste tutorial, você usará MOLAP como o modo de armazenamento.

  20. Para adicionar a dimensão recém-criada ao cubo do Tutorial SQL Server Analysis Services como uma dimensão de cubo, alterne para Designer de Cubo. Na guia Estrutura do Cubo , clique com o botão direito do mouse no painel Dimensões e selecione Adicionar Dimensão do Cubo.

  21. Na caixa de diálogo Adicionar Dimensão do Cubo, selecione Detalhes do Pedido de Vendas pela Internet e clique em OK.

Definindo uma relação de fatos para a dimensão de fatos

  1. No Cubo Designer do cubo do Tutorial SQL Server Analysis Services, clique na guia Uso da Dimensão.

    Observe que a dimensão de cubo Detalhes do Pedido de Vendas pela Internet é configurada automaticamente como tendo uma relação de fatos, como mostra o ícone exclusivo.

  2. Clique no botão Procurar (...) na célula Descrição do Item , na interseção do grupo de medidas Vendas pela Internet e na dimensão Detalhes do Pedido de Vendas na Internet , para examinar as propriedades da relação de fatos.

    A caixa de diálogo Definir Relação é aberta. Observe que nenhuma das propriedades pode ser configurada.

    A imagem a seguir mostra as propriedades da relação de fatos na caixa de diálogo Definir Relação .

    Caixa de diálogo Definir Relação

  3. Clique em Cancelar.

Navegando pelo cubo usando a dimensão de fatos

  1. No menu Compilar, clique em Implantar Tutorial do Analysis Services para implantar as alterações na instância do SQL Server Analysis Services e processar o banco de dados.

  2. Depois que a implantação for concluída com êxito, clique na guia Navegador no Cubo Designer para o cubo do Tutorial SQL Server Analysis Services e clique no botão Reconectar.

  3. Desmarque todas as medidas e hierarquias do painel de dados e adicione a medida Vendas pela Internet/Valor das Vendas à área de dados do painel de dados.

  4. No painel de metadados, expanda Cliente, Local, Geografia do Cliente, Membros, Todos os Clientes, Austrália, Queensland, Brisbane, 4000, clique com o botão direito do mouse em Adam Powelle clique em Adicionar ao Filtro.

    Usar um filtro para limitar os pedidos de vendas retornados a um único cliente permite ao usuário fazer uma busca detalhada nos detalhes subjacentes em uma ampla tabela de fatos sem sofrer uma perda significativa no desempenho da consulta.

  5. Adicione a hierarquia definida pelo usuário Pedidos de Vendas pela Internet da dimensão Detalhes do Pedido de Vendas pela Internet à área de linhas do painel de dados.

    Observe que os números do pedido de vendas e os valores correspondentes das vendas pela Internet em nome de Adam Powell aparecem no painel de dados.

    A imagem a seguir mostra o resultado das etapas anteriores.

    Dimensionamento de dimensionamento da quantidade de Sales-Sales

Próxima tarefa da lição

Definindo uma relação muitos para muitos

Consulte Também

Relações de dimensão
Definir uma relação de fato e propriedades de relação de fato