Conceitos de XMLA
O padrão XMLA (XML for Analysis) oferece suporte a acesso a dados para fontes de dados que residem na World Wide Web. O Microsoft SQL Server Analysis Services implementa XMLA por especificação XMLA 1.1.
O XMLA (XML for Analysis) é um protocolo XML baseado em SOAP, criado especificamente para acesso a dados universal para qualquer fonte de dados multidimensional padrão residente na Web. O XMLA também elimina a necessidade de implantar um componente de cliente que exiba interfaces de de COM (Component Object Model) ou do Microsoft .NET Framework. O XMLA é otimizado para a Internet, quando viagens de ida e volta ao servidor são onerosas em termos de tempo e de recursos e quando conexões com estado para uma fonte de dados podem limitar conexões do usuário no servidor.
O XMLA é o protocolo nativo do Microsoft SQL Server Analysis Services, usado para todas as interações entre um aplicativo cliente e uma instância do Analysis Services. O Analysis Services dá suporte completo ao XML for Analysis 1.1 e também oferece extensões para dar suporte ao gerenciamento de metadados, gerenciamento de sessão e a recursos de bloqueio. O AMO (Objetos de Gerenciamento de Análise) e o ADOMD.NET usam o protocolo XMLA ao se comunicarem com uma instância do Analysis Services.
Manipulando comunicações do XMLA
O padrão aberto XMLA descreve dois métodos geralmente acessíveis: Discover e Execute. Esses métodos usam a arquitetura de cliente e de servidor acoplada de forma flexível suportada pelo XML para manipular informações de entrada e de saída sobre uma instância do Analysis Services.
O método Discover obtém informações e metadados de um serviço Web. Essas informações podem incluir uma lista de fontes de dados disponíveis, como também informações sobre qualquer um dos provedores de fontes de dados. As propriedades definem dados obtidos de uma fonte de dados e dão forma a eles. O método Discover é comum para a definição dos muitos tipos de informação que podem ser requisitados por um aplicativo cliente de fontes de dados em instâncias do Analysis Services. As propriedades e a interface genérica oferecem extensibilidade sem exigir que você reescreva funções existentes em um aplicativo cliente.
O método Execute permite que aplicativos executem comandos específicos do provedor em fontes de dados XMLA.
Embora o protocolo XMLA seja otimizado para aplicativos Web, também poderá ser usado para para aplicativos orientados à LAN. Os aplicativos a seguir podem aproveitar os benefícios desta API baseada em XML:
Aplicativos cliente/servidor que exigem tecnologia flexível entre os clientes e o servidor
Aplicativos cliente/servidor que tenham como destino vários sistemas operacionais
Clientes que não exigem estado significante para aumentar a capacidade do servidor
XMLA e o modelo dimensional unificado
O XMLA é o protocolo usado por aplicativos de business intelligence que empregam a metodologia UDM (modelo dimensional unificado)