Comparar soluções tabulares e multidimensionais

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

SQL Server Analysis Services (SSAS) fornece várias abordagens ou modos para criar modelos semânticos de business intelligence: tabular e multidimensional.

O modo multidimensional está disponível com SQL Server Analysis Services. Se quiser que seus modelos são implantados no Azure Analysis Services ou no Power BI, você pode parar de ler agora. Não haverá suporte para modelos multidimensionais em modelos semânticos Azure Analysis Services ou Power BI Premium. Se você quiser modelos multidimensionais na nuvem, a única maneira é implantar SQL Server Analysis Services no modo Multidimensional em uma VM do Azure.

Como os modelos multidimensionais só têm suporte no SQL Server Analysis Services, este artigo não se destina a ser uma comparação das plataformas do Analysis Services (SQL Server, Azure, Power BI). Destina-se a fornecer uma comparação de alto nível de construções de modelo multidimensional e tabular inteiramente no contexto de SQL Server Analysis Services.

SQL Server Analysis Services também inclui o modo Power Pivot para SharePoint, que permanece com suporte para SharePoint 2016 e SharePoint 2013, no entanto, a estratégia de BI da Microsoft se afastou do Power Pivot na integração do Excel com o SharePoint. O Power BI e Servidor de Relatórios do Power BI agora são as plataformas recomendadas para hospedar pastas de trabalho do Excel com modelos do Power Pivot. Dessa forma, este artigo agora exclui uma comparação do Power Pivot para SharePoint.

Em SQL Server Analysis Services, ter mais de uma abordagem permite uma experiência de modelagem adaptada a diferentes requisitos de negócios e usuários. Multidimensional é uma tecnologia madura criada em padrões abertos, adotada por vários fornecedores de software de BI, mas pode ser desafiadora de implementar. A tabular oferece uma abordagem de modelagem relacional que muitos desenvolvedores consideram mais intuitiva. A longo prazo, os modelos tabulares são mais fáceis de desenvolver e mais fáceis de gerenciar. Embora os modelos multidimensionais ainda sejam predominantes em muitas soluções de BI, os modelos tabulares agora são mais amplamente aceitos como a solução padrão de modelagem semântica de BI de nível empresarial em plataformas microsoft.

Todos os modelos são implantados como bancos de dados executados em uma instância do Analysis Services ou com modelos tabulares, implantados como um modelo semântico em uma capacidade de Power BI Premium. Os modelos são acessados por aplicativos cliente ou serviços como o Power BI. Os dados do modelo são visualizados em relatórios interativos e estáticos por meio do Excel, Reporting Services, Power BI e ferramentas de BI de outros fornecedores.

Soluções tabulares e multidimensionais criadas usando o Visual Studio e são destinadas a soluções de BI corporativas executadas em uma instância de SQL Server Analysis Services local e para modelos tabulares, um recurso de servidor Azure Analysis Services ou como um modelo semântico em um Power BI Premium Capacidade. Cada solução produz bancos de dados analíticos de alto desempenho que se integram facilmente a aplicativos clientes e serviços de visualizações de dados. Ainda assim, cada solução difere na maneira como eles são criados, usados e implantados. A maior parte deste artigo compara esses dois tipos para que você possa identificar a abordagem certa para você.

Visão geral dos tipos de modelagem

A tabela a seguir enumera os diferentes modelos, resume a abordagem, a versão inicial e o nível de compatibilidade com suporte.

Tipo Descrição de modelagem Lançado inicialmente Nível de Compatibilidade
Multidimensional Construções de modelagem OLAP (cubos, dimensões, medidas). SQL Server 2000
SQL Server 2012 e posterior
1050
1100
Power Pivot Originalmente um suplemento, mas agora está totalmente integrado no Excel. Infraestrutura de modelo tabular. APIs e scripts sem suporte. SQL Server 2008 R2 N/D
Tabular Construções de modelagem relacionais (modelo, tabelas, colunas). Internamente, os metadados são herdados de constructos de modelagem OLAP (cubos, dimensões, medidas). O código e o script usam metadados OLAP. SQL Server 2012
SQL Server 2014
1050
1103
Tabular no SQL Server 2016 e posterior Constructos de modelagem relacional (modelo, tabelas, colunas), articulados em definições de objeto de metadados tabulares no código TMSL (Tabular Model Scripting Language) e TOM (Tabular Object Model ). SQL Server 2016
SQL Server 2014
SQL Server 2019
SQL Server 2022
1200
1400
1500
1600
Tabular no Azure Analysis Services 1 Constructos de modelagem relacional (modelo, tabelas, colunas), articulados em definições de objeto de metadados tabulares no código TMSL (Tabular Model Scripting Language) e TOM (Tabular Object Model ). 2016 1200 e superior
Tabular no Power BI Premium 2 Constructos de modelagem relacional (modelo, tabelas, colunas), articulados em definições de objeto de metadados tabulares no código TMSL (Tabular Model Scripting Language) e TOM (Tabular Object Model ). 2020 1500 e superior

[1] Azure Analysis Services dá suporte a modelos tabulares nos níveis de compatibilidade 1200 e superiores. No entanto, nem todas as funcionalidades de modelagem tabular descritas neste artigo têm suporte. Embora a criação e a implantação de modelos tabulares em Azure Analysis Services seja a mesma que é para o local, é importante entender as diferenças. Para saber mais, confira O que é Azure Analysis Services?

[2] Power BI Premium capacidades dão suporte a modelos tabulares nos níveis de compatibilidade 1500 e superiores. No entanto, nem todas as funcionalidades de modelagem tabular descritas neste artigo têm suporte. Embora a criação e a implantação de modelos tabulares em Power BI Premium seja a mesma que é para o Azure ou local, é importante entender as diferenças. Para saber mais, confira Analysis Services no Power BI Premium

O nível de compatibilidade é importante. Refere-se a comportamentos específicos da versão no mecanismo do Analysis Services. Para saber mais, confira Nível de compatibilidade de modelo tabular e nível de compatibilidade de modelo multidimensional

Recursos de modelo

A tabela a seguir resume a disponibilidade do recurso no nível do modelo. Examine esta lista para garantir que o recurso que você deseja usar está disponível no tipo de modelo que planeja criar.

Recurso Multidimensional Tabular
Ações Yes No
Agregações Yes No
Coluna calculada No Yes
Medidas calculadas Yes Yes
Tabelas calculadas No Sim3
Assemblies personalizados Yes No
Rollups personalizados Yes No
Membro padrão Yes No
Pastas de exibição Yes Sim3
Contagem Distinta Yes Sim (por DAX)
Detalhamento Yes Sim (depende do aplicativo cliente)
Hierarquias Sim Sim
KPIs Yes Yes
Objetos vinculados Yes Sim (tabelas vinculadas)
Expressões M Não Sim3
Relacionamentos de muitos para muitos Yes Não (mas há filtros cruzados bidirecionais em 1200 e níveis de compatibilidade mais altos)
Conjuntos nomeados Yes No
Hierarquias desbalanceadas Yes Sim3
Hierarquias pai-filho Yes Sim (por DAX)
Partições Yes Yes
Perspectivas Yes Yes
Intercalação de consulta No Sim4
Segurança em nível de linha Yes Yes
Segurança no nível do objeto Yes Sim3
Medidas semiaditivas Yes Yes
Traduções Sim Sim
Hierarquias definidas pelo usuário Yes Yes
Write-back Yes No

[3] Para obter informações sobre diferenças funcionais entre níveis de compatibilidade, consulte Nível de compatibilidade para modelos tabulares no Analysis Services.

[4] – SQL Server 2019 e posteriores do Analysis Services, Azure Analysis Services.

Considerações de dados

Modelos tabulares e multidimensionais usam dados importados de fontes externas. A quantidade e o tipo de dados que você precisa importar podem ser uma consideração primária ao decidir qual tipo de modelo melhor se adapta a seus dados.

Compactação

As soluções tabular e multidimensionais usam compactação de dados que reduz o tamanho do banco de dados do Analysis Services referente ao data warehouse do qual você está importando dados. Como a compactação real variará com base nas características dos dados subjacentes, não há nenhum modo de saber precisamente quanto disco e memória será exigida por uma solução depois que os dados forem processados e usados em consultas.

Uma estimativa usada por muitos desenvolvedores do Analysis Services é que o armazenamento primário de um banco de dados multidimensional será aproximadamente um terço do tamanho dos dados originais. Os bancos de dados tabulares podem muitas vezes obter quantidades maiores de compactação, cerca de um décimo do tamanho, principalmente se a maioria dos dados for importada de tabelas de fatos.

Tamanho do modelo e desvio do recurso (na memória ou disco)

O tamanho de um banco de dados do Analysis Services é restrito apenas pelos recursos disponíveis para executá-lo. O tipo do modelo e o modo de armazenamento também desempenham uma função no quanto o banco de dados pode crescer.

Bancos de dados tabulares executados na memória ou no modo DirectQuery que descarregam a execução da consulta para um banco de dados externo. Para análise tabular na memória, o banco de dados é armazenado inteiramente na memória, o que significa que você deve ter memória suficiente para não apenas carregar todos os dados, mas também estruturas de dados adicionais criadas para dar suporte a consultas.

O DirectQuery, renovado em SQL Server 2016, tem menos restrições do que antes e melhor desempenho. Aproveitar o banco de dados relacional de back-end para armazenamento e execução de consulta facilita a criação de um modelo tabular de grande escala mais viável do que era possível anteriormente.

Historicamente, os maiores bancos de dados em produção são multidimensionais, com cargas de trabalho de processamento e consulta em execução independentemente em hardware dedicado, cada um otimizado para seu respectivo uso. Bancos de dados tabulares estão se tornando populares rapidamente e novos avanços no DirectQuery ajudarão a preencher essa lacuna ainda mais.

Para o descarregamento multidimensional, o armazenamento de dados e a execução da consulta estão disponíveis por meio do ROLAP. Em um servidor de consulta, os conjuntos de linhas podem ser armazenados em cache e os obsoletos são paginado. O uso eficiente e equilibrado de recursos de memória e disco geralmente orienta os clientes para soluções multidimensionais.

Sob carga, espera-se que os requisitos de disco e de memória para os dois tipos de solução aumentem, porque o Analysis Services armazena em cache, armazena, verifica e consulta os dados. Para saber mais sobre opções de paginação de memória, veja Memory Properties. Para saber mais sobre escala, veja High availability and Scalability in Analysis Services.

Fontes de dados com suporte

Os modelos de tabela podem importar dados de fontes de dados relacionais, feeds de dados e alguns formatos de documentos. Você também pode usar o OLE DB para provedores ODBC com modelos tabulares. Modelos tabulares nos níveis de compatibilidade 1400 e superiores oferecem um aumento significativo na variedade de fontes de dados das quais você pode importar. Isso ocorre devido à introdução dos recursos modernos de consulta e importação de dados Get Data no Visual Studio utilizando a linguagem de consulta de fórmula M.

Soluções multidimensionais podem importar dados de fontes de dados relacionais usando provedores gerenciados e nativos do OLE DB.

Para exibir a lista de fontes de dados externas que você pode importar para cada modelo, consulte os seguintes tópicos:

Suporte à linguagem de consulta e script

O Analysis Services inclui MDX, DMX, DAX, XML/A, ASSL e TMSL. O suporte para estes idiomas pode variar por tipo de modelo. Se os requisitos de consulta e linguagem de scripts forem uma consideração, analise a lista a seguir.

  • Os bancos de dados modelo de tabela dão suporte a cálculos DAX, consulta DAX e consultas MDX. Isso é verdadeiro em todos os níveis de compatibilidades. As linguagens de script são ASSL (sobre XMLA) para os níveis de compatibilidade 1050-1103 e TMSL (sobre XMLA) para nível de compatibilidade 1200 e superior.

  • Bancos de dados de modelo multidimensional dão suporte a cálculos MDX, consultas MDX, consultas DAX e ASSL.

  • O Analysis Services PowerShell tem suporte para modelos e bancos de dados tabulares e multidimensionais.

Todos os bancos de dados dão suporte a XMLA.

Recursos de segurança

Todas as soluções do Analysis Services podem ser protegidas no nível do banco de dados. Mais opções de segurança granular variam por modo. Se as configurações de segurança granular forem um requisito para sua solução, analise a lista a seguir para garantir que o nível de segurança desejado tenha suporte no tipo de solução que você quer criar:

Ferramentas de design

A extensão de projetos do Visual Studio com Analysis Services, também conhecida como SSDT (SQL Server Data Tools), é a principal ferramenta usada para criar soluções multidimensionais e tabulares. Esse ambiente de criação usa o shell do Visual Studio para fornecer workspaces de designer, painéis de propriedades e navegação de objetos. Os modelos tabulares também dão suporte à criação de modelos por ferramentas de software livre e de terceiros. Para saber mais, confira Ferramentas do Analysis Services.

Suporte ao aplicativo cliente

Em geral, soluções tabulares e multidimensionais dão suporte a aplicativos cliente usando uma ou mais das bibliotecas de cliente do Analysis Services (MSOLAP, AMOMD, ADOMD). Por exemplo, Excel, Power BI Desktop e aplicativos personalizados. Serviços de análise e visualização de dados, como o Power BI, dão suporte total a soluções tabulares e multidimensionais.

Se você estiver usando o Reporting Services, a disponibilidade do recurso de relatório varia de acordo com as edições e os modos de servidor. Por isto, o tipo de relatório que você deseja compilar pode influenciar a escolha do modo de servidor a ser instalado.

O Power View, uma ferramenta de criação de Reporting Services executada no SharePoint, está disponível em um servidor de relatório implantado em um farm do SharePoint 2010. O único tipo de fonte de dados que pode ser usada com este relatório é um banco de dados de modelo tabular do Analysis Services ou uma pasta de trabalho do Power Pivot. Isso significa que você deve ter um servidor de modo tabular ou um servidor do Power Pivot para SharePoint para hospedar a fonte de dados usada por esse tipo de relatório. Você não pode usar um modelo multidimensional como uma fonte de dados para um relatório do Power View. Você deve criar uma conexão de Modelo Semântico do Power Pivot BI ou um Reporting Services fonte de dados compartilhada a ser usada como fonte de dados para um relatório do Power View.

Report Builder e Report Designer podem usar qualquer banco de dados do Analysis Services, incluindo pastas de trabalho do Power Pivot hospedadas no Power Pivot para SharePoint.

Os relatórios de Tabela Dinâmica do Excel têm suporte em todos os bancos de dados do Analysis Services. A funcionalidade do Excel é a mesma se você usa um .database tabular, um banco de dados multidimensional ou uma pasta de trabalho do Power Pivot, embora o Write-back só tenha suporte para bancos de dados multidimensionais.

Confira também

Visão geral do modelo tabular
Modelos multidimensionais