Partilhar via


Bibliotecas de cliente do Analysis Services

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

As bibliotecas de cliente são necessárias para que os aplicativos e as ferramentas cliente se conectem ao Analysis Services. Os aplicativos cliente da Microsoft, como Power BI Desktop, Excel, SQL Server Management Studio (SSMS) e extensão de projetos do Analysis Services para Visual Studio, instalam as três bibliotecas de cliente e as atualizam junto com atualizações regulares de aplicativos. Os aplicativos cliente personalizados para o Analysis Services também podem exigir que uma ou mais dessas bibliotecas de cliente sejam instaladas. Novas versões das bibliotecas de cliente são atualizadas aproximadamente mensalmente.

Importante: Antes de obter as versões mais recentes, certifique-se de ver Considerações e limitações.

Faça o download das últimas notícias

Instalador do Windows

Baixar Versão
MSOLAP (amd64) 16.0.164.18
MSOLAP (x86) 16.0.164.18
AMO 19.84.1.0
ADOMD 19.84.1.0

Observação: Os downloads do Windows Installer para Objetos de Gerenciamento do Analysis Services (AMO/TOM) e ADOMD não estão mais sendo atualizados e não estarão disponíveis após 31 de dezembro de 2024. Os aplicativos que dependem desses downloads do Windows Installer devem ser migrados para pacotes NuGet.

Pacotes NuGet

Os Objetos de Gestão do Analysis Services (AMO/TOM) e as bibliotecas de cliente ADOMD estão disponíveis como pacotes instaláveis no NuGet.org. Recomenda-se fortemente a migração para as referências do NuGet em vez de usar o Windows Installer.

Os assemblies dos pacotes NuGet AssemblyVersion seguem o versionamento semântico: MAIOR.MENOR.CORREÇÃO. As referências do NuGet carregam a versão esperada mesmo que haja uma versão diferente no GAC (resultante da instalação MSI). O PATCH é incrementado a cada lançamento. As versões AMO e ADOMD são mantidas em sincronia.

A partir de julho de 2024, os pacotes AMO e ADOMD contêm versões multi-runtime para todos os tempos de execução de destino suportados, tanto o .NET FX quanto o .NET Core; versões anteriores dos pacotes destinados apenas a um único tempo de execução, .NET FX ou .NET Core, estão disponíveis para compatibilidade com versões anteriores, mas não são mais atualizadas.

A partir de setembro de 2022, AMO (AMO/TOM) e ADOMD .Net Core (versão 19.48.0.0), a comunicação baseada em HTTP com serviços de nuvem como Power BI e Azure Analysis Services foi significativamente melhorada. É recomendável atualizar para a versão mais recente para aproveitar as melhorias de desempenho.

A partir de fevereiro de 2021, o suporte ao tempo de execução do .NET Core estará disponível para os pacotes de cliente AMO e ADOMD. Há, no entanto, alguns cenários não suportados pelas versões do .NET Core. Para saber mais, consulte considerações e limitações mais adiante neste artigo.

AMO e ADOMD

Embalagem Versão
AMO 19.87.2.0
ADOMD 19.87.2.0

Nota:

Os novos pacotes multi-runtime não têm mais o sufixo ".retail.amd64" na identidade do pacote e agora são simplesmente chamados de Microsoft.AnalysisServices e Microsoft.AnalysisServices.AdomdClient.

Os pacotes mais antigos do .NET Framework e do .NET Core ainda estão disponíveis no nuget.org para compatibilidade com versões anteriores sob a antiga identidade com o sufixo ".retail.amd64" para .NET Framework e o sufixo ".NetCore.retail.amd64" para .NET Core.

Versões mínimas necessárias

A versão 1.0/1.1 do protocolo Transport Layer Security (TLS) foi preterida no Microsoft Entra ID em 30 de junho de 2021. TLS 1.2 ou superior agora é necessário. O TLS 1.2 não é suportado em versões anteriores das bibliotecas de cliente do Analysis Services. As versões mais recentes da biblioteca de cliente incluem suporte para TLS 1.2 e superior, além de outros aprimoramentos de segurança importantes.

Para minimizar o risco e possíveis vulnerabilidades de segurança, a partir de 30 de junho de 2021, a segurança aprimorada no Azure Analysis Services e no Power BI exigirá as seguintes versões ou superiores:

Biblioteca do cliente Versão do ficheiro Versão
MSOLAP 2018.151.61.21 15.1.61.21
AMO 15.1.61.21 19.12.3.0
ADOMD 15.1.61.21 19.12.3.0

Considerações e limitações

AMO e ADOMD

A partir da versão 19.84.6, o suporte para .NET FX 4.5 e .NET Core 3.0 nos assemblies gerenciados não está mais disponível. Os assemblies AS do lado do cliente agora são lançados com suporte para .NET FX 4.7.2, bem como para .NET 6.0 e .NET 8.0 somente.

A partir da versão 19.82.0.0, o AMO e o ADOMD oferecem suporte a perfis de entidade de serviço para autenticação, como no exemplo de cadeia de conexão a seguir. Para saber mais, consulte Usar perfis de entidade de serviço para gerir dados de clientes em aplicações multilocatárias. Os utilizadores não conseguem conectar-se a workspaces associados a uma licença Premium Per-User utilizando Perfis de Service Principal através do XMLA endpoint.

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>

A partir da versão 19.67.0, objetos de conectividade como Microsoft.AnalysisServices.AdomdClient.AdomdConnection e Microsoft.AnalysisServices.Server, oferecem suporte a uma nova propriedade AccessToken que permite uma maneira aprimorada de passar tokens OAuth externos a serem usados pela camada de conectividade XMLA. Para saber mais, consulte Propriedades da cadeia de conexão - ID do usuário = ...; Senha=.

A partir da versão 19.42.0.4, o ADOMD.NET e o AMO/TOM usam o MSAL (Microsoft.Identity.Client) versão 4.43.0 ou superior em vez do ADAL para autenticar usuários com o Microsoft Entra ID ao estabelecer uma conexão com serviços baseados em nuvem, como Power-BI e Azure Analysis Services. Se o seu aplicativo ou outro componente do qual o aplicativo depende estiver usando o MSAL, pode ser necessário atualizar as configurações de redirecionamento de vinculação do aplicativo se houver conflitos entre as versões do MSAL carregadas pelos componentes.

AMO e ADOMD .Net Core

Os cenários com suporte incluem conexões com o Azure Analysis Services, Power BI Premium e SQL Server Analysis Services. A conectividade baseada em TCP é suportada apenas para computadores Windows.

O login interativo com ID do Microsoft Entra é suportado apenas para computadores Windows. O tempo de execução do .NET Core Desktop é necessário.

A dependência no MSAL requer a versão 4.43.0 ou superior.

A versão 19.14.0 das bibliotecas de cliente .Net Core introduziu suporte de visualização para publicação Self-Contained (tanto em um diretório publicado quanto no modo de arquivo único), além de suporte para consumo por projetos .NET 5.0. Vários problemas relacionados à conectividade com o SQL Server Analysis Services identificados na versão anterior foram corrigidos.

A versão 19.12.7.2 das bibliotecas de cliente .Net Core introduziu suporte para o SQL Server Analysis Services. As versões de pré-visualização inferiores suportavam apenas os modelos semânticos do Azure Analysis Services e do Power BI.

AMO

A partir da versão 19.84.6, o suporte para TMDL em AMO\TOM é considerado como estando no status General-Availability, e não haverá nenhuma alteração na interface da API.

A versão 19.12.3.0 da biblioteca de cliente AMO introduz uma nova enumeração, Microsoft.AnalysisServices.DataType. No entanto, a enumeração anterior, Microsoft.AnalysisServices.Tabular.DataType ainda existe. Se seu código fizer referência à enumeração anterior como DataType em um arquivo de código com instruções para ambos os namespaces (Microsoft.AnalysisServices, Microsoft.AnalysisServices.Tabular), devido à ambiguidade, você poderá obter um erro ao compilar. Para resolver o erro, qualifique totalmente a referência à enumeração.

A versão 19.61.1.4 da biblioteca de cliente AMO introduz uma alteração no comportamento de reversão de transação do Microsoft.AnalysisServices.Server. Em versões anteriores, uma chamada para Server.RollbackTransaction() envia uma solicitação ao mecanismo para reverter a transação e, em seguida, tentar reverter as alterações locais. Ao contrário das versões anteriores, em 19.61.1.4 e posteriores, se as alterações locais não puderem ser revertidas com segurança, os bancos de dados tabulares incluídos na transação bloquearão quaisquer alterações adicionais até que possam ser totalmente sincronizadas e as alterações obsoletas da transação que foram revertidas serão removidas. Um InvalidOperationException é gerado quando uma alteração é feita no banco de dados tabular relevante. Se o seu código estiver chamando Server.RollbackTransaction(), é recomendável seguir essa chamada com uma sincronização completa [Database.Refresh(true)] para qualquer banco de dados tabular modificado como parte da transação.

A partir da versão 19.77.0, ao clonar ou copiar um MetadataObject em outra instância de um MetadataObject usando o TOM (Tabular Object Model), o TOM retorna null para propriedades que fazem referência cruzada a objetos fora da árvore direta de objetos filho do MetadataObject. Você deve adicionar a instância de MetadataObject clonada ao modelo semântico para que as referências cruzadas a objetos fora da árvore MetadataObject possam ser resolvidas.

Por exemplo, ao clonar uma tabela com uma partição que faz referência a uma expressão nomeada em um EntityPartitionSource, a propriedade ExpressionSource do EntityPartitionSource retorna null até que a tabela clonada seja adicionada ao modelo semântico, como no trecho de código abaixo, para que a referência ExpressionSource clonada possa ser resolvida. O clone deve ser adicionado ao modelo porque a expressão nomeada com referência cruzada é um membro da coleção Expressions do modelo e não parte da árvore de objetos filho da tabela.

Table tableClone = model.Tables[0].Clone();
anotherModel.Tables.Add(tableClone);

ADOMD

A partir do ADOMD (.NET Framework e .NET Core) versão 19.61.1.4, a compactação está totalmente disponível na camada de transporte XMLA. Versões anteriores após a versão 19.55.3.1 implementaram algum suporte parcial para compactação. Foram recebidos relatórios sobre problemas com essas versões. Esses problemas foram corrigidos como parte da versão 16.61.1.4. Certifique-se de atualizar para 19.61.1.4 ou posterior se estiver enfrentando problemas relacionados à compactação.

MSOLAP

A partir da versão 16.0.139.27, o MSOLAP oferece suporte a perfis de entidade de serviço para autenticação, como no exemplo de cadeia de conexão a seguir. Para saber mais, consulte Utilizar perfis de entidade de serviço para gerir dados de clientes em aplicações multilocatárias.

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>

A partir da versão 16.0.134.22, o MSOLAP suporta SSO (Single Sign-On silencioso) usando o Gerenciador de Contas da Web (WAM), disponível no Windows 10 e superior, bem como no Windows Server 2019 e superior. Quando uma nova conexão HTTP é aberta, o MSOLAP obtém um token de acesso da seguinte maneira:

  1. Se o cache de token estiver habilitado e um token adequado estiver disponível no cache, o MSOLAP usará o token armazenado em cache.
  2. Se um token em cache adequado não estiver disponível, o MSOLAP tentará obter um token de acesso silenciosamente por meio do WAM.
  3. Se o SSO usando WAM falhar, o MSOLAP retornará à autenticação interativa e exibirá a janela de login.

Os usuários podem ignorar o fluxo de SSO silencioso e iniciar imediatamente a experiência de autenticação interativa fornecendo um ID de usuário 'vazio' na cadeia de conexão (User ID='').

A partir da versão 16.0.43.20, o MSOLAP usa o MSAL (Microsoft.Identity.Client) versão 4.43.0 ou superior em vez do ADAL para autenticar usuários com o Microsoft Entra ID ao estabelecer uma conexão com serviços baseados em nuvem, como Power-BI e Azure Analysis Services. Se o seu aplicativo ou outro componente do qual o aplicativo depende estiver usando o MSAL, pode ser necessário atualizar as configurações de redirecionamento de vinculação do aplicativo se houver conflitos entre as versões do MSAL carregadas pelos componentes

Uma regressão relacionada a conexões com sistemas baseados em nuvem usando o Microsoft Entra ID foi descoberta na versão 16.0.4.17 do OLEDB (MSOLAP). Foi corrigido na versão 16.0.20.201. Devido à natureza do problema, uma versão 16.0.4.17 instalada, bem como qualquer outra versão anterior à 16.0.20.201, não pode ser corrigida atualizando o provedor, mesmo que a instalação seja executada no modo de reparo. Recomenda-se desinstalar completamente a versão 16.0.4.17 [ou outra versão problemática] e, em seguida, instalar a versão 16.0.20.201 ou posterior.

Em uma versão precedente, o MSOLAP foi atualizado para se conectar ao Analysis Services baseado em nuvem usando a biblioteca de autenticação gerida pela Microsoft (MSAL). A partir da versão 16.0.87.16, a instalação do MSOLAP não instala mais o componente nativo original da Biblioteca de Autenticação do Ative Directory do Azure (ADAL).

Noções básicas sobre bibliotecas de clientes

O Analysis Services utiliza três bibliotecas de cliente. ADOMD.NET e Analysis Services Management Objects (AMO) são bibliotecas de cliente gerenciadas. E o provedor OLE DB do Analysis Services (MSOLAP DLL) é uma biblioteca de cliente nativa. Normalmente, todos os três são instalados ao mesmo tempo.

Os aplicativos cliente da Microsoft, como o Power BI Desktop e o Excel, instalam as três bibliotecas de cliente e as atualizam quando novas versões estão disponíveis. Dependendo da versão ou frequência das atualizações, algumas bibliotecas de cliente podem não ser as versões mais recentes exigidas pelo Azure Analysis Services e pelo Power BI. O mesmo se aplica a aplicativos personalizados ou outras interfaces, como AsCmd, TOM, ADOMD.NET. Estas aplicações requerem a instalação manual ou programática das bibliotecas. As bibliotecas de cliente para instalação manual estão incluídas nos feature packs do SQL Server como pacotes distribuíveis. No entanto, essas bibliotecas de cliente estão vinculadas à versão do SQL Server e podem não ser as mais recentes. Certifique-se de instalar sempre o mais recente, disponível para download a partir deste artigo.

Tipos de biblioteca de cliente

Fornecedor OLE DB do Analysis Services (MSOLAP)

O provedor OLE DB do Analysis Services (MSOLAP) é a biblioteca de cliente nativa para conexões de banco de dados do Analysis Services. Ele é usado indiretamente pela ADOMD.NET e pela AMO, delegando solicitações de conexão ao provedor de dados. Você também pode chamar o provedor OLE DB diretamente do código do aplicativo.

O provedor OLE DB do Analysis Services é instalado automaticamente pela maioria das ferramentas e aplicativos cliente usados para acessar bancos de dados do Analysis Services. Ele deve ser instalado em computadores usados para acessar dados do Analysis Services.

Os provedores OLE DB geralmente são especificados em cadeias de conexão. Uma cadeia de conexão do Analysis Services usa uma nomenclatura diferente para se referir ao provedor OLE DB: MSOLAP.<versão>.dll.

AMO

AMO é uma biblioteca de cliente gerenciada usada para administração de servidores e definição de dados. É instalado e utilizado por ferramentas e aplicações de cliente. Por exemplo, o SQL Server Management Studio (SSMS) usa o AMO para se conectar ao Analysis Services. Uma conexão usando AMO é normalmente mínima, consistindo em "data source=\<servername>". Depois que uma conexão é estabelecida, você usa a API para trabalhar com coleções de banco de dados e objetos principais. O Visual Studio e o SSMS usam o AMO para se conectar a uma instância do Analysis Services.

ADOMD

ADOMD.NET é uma biblioteca de cliente de dados gerenciada usada para consultar dados do Analysis Services. É instalado e utilizado por ferramentas e aplicações de cliente.

Ao se conectar a um banco de dados, as propriedades da cadeia de conexão para todas as três bibliotecas são semelhantes. Praticamente qualquer cadeia de conexão que definir para ADOMD.NET por usar Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectionString também funciona com AMO e com o provedor OLE DB do Analysis Services (MSOLAP). Para mais informações, consulte Propriedades da cadeia de conexão.

Verifique as versões instaladas

OLEDDB (MSOLAP)

  1. Vá para C:\Program Files\Microsoft Analysis Services\AS OLEDB\. Se você tiver mais de uma pasta, escolha o número maior.

  2. Clique com o botão direito do rato msolap.dll>Propriedades>Detalhes. Verifique a propriedade de versão do produto . Nota: Se o nome do ficheiro for msolap140.dll, é mais antigo do que a versão mais recente e deve ser atualizado.

    caixa de diálogo de detalhes da biblioteca do cliente MSOLAP

AMO

  1. Vá para C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices\. Se você tiver mais de uma pasta, escolha o número maior.

  2. Clique com o botão direito do mouse Microsoft.AnalysisServices>Propriedades>Detalhes.

    diálogo de detalhes da biblioteca de cliente AMO

ADOMD

  1. Vá para C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices.AdomdClient\. Se você tiver mais de uma pasta, escolha o número maior.

  2. Clique com o botão direito do rato Microsoft.AnalysisServices.AdomdClient>Propriedades>Detalhes.

    caixa de diálogo de detalhes da biblioteca do Cliente ADOMD

Atualizar manualmente

Normalmente, as bibliotecas de cliente são instaladas e atualizadas automaticamente, juntamente com as ferramentas e os aplicativos cliente que as utilizam. No entanto, em alguns casos, as bibliotecas de cliente podem não ser atualizadas automaticamente e cada uma deve ser atualizada manualmente. Para atualizar manualmente, baixe e execute o pacote do Windows Installer (.msi) para cada biblioteca cliente.

Para baixar e atualizar

  1. Clique:

  2. No Downloads, clique em um Pacote do Windows Installer para executar a Instalação.

  3. Em Configuração, clique em Avançar.

  4. Leia o contrato de licença. Se concordar, selecione Aceito os termos do contrato de licençae, em seguida, clique em Seguinte.

  5. Clique Instalar.

  6. Quando terminar, clique em Concluir.