Requisitos de arquitectura de cliente para el desarrollo de Analysis Services

Microsoft SQL Server Analysis Services admite una arquitectura de cliente fino. El motor de cálculo de Analysis Services se basa completamente en el servidor, por lo que todas las consultas se resuelven en el servidor. Como resultado, solo se requiere un recorrido de ida y vuelta entre el cliente y el servidor para cada consulta, lo que da lugar a un rendimiento escalable a medida que las consultas aumentan en complejidad.

El protocolo nativo para Analysis Services es XML for Analysis (XML/A). Analysis Services proporciona varias interfaces de acceso a datos para aplicaciones cliente, pero todos estos componentes se comunican con una instancia de Analysis Services mediante XML for Analysis.

Se proporcionan varios proveedores diferentes con Analysis Services para admitir diferentes lenguajes de programación. Un proveedor se comunica con un servidor de Analysis Services enviando y recibiendo XML for Analysis en paquetes SOAP a través de TCP/IP o HTTP a través de Internet Information Services (IIS). Una conexión HTTP usa un objeto COM creado por IIS, denominado bomba de datos, que actúa como un conducto para los datos de Analysis Services. La bomba de datos no examina los datos subyacentes contenidos en el flujo HTTP de ninguna manera, ni ninguna de las estructuras de datos subyacentes disponibles para ninguno de los códigos de la propia biblioteca de datos.

Arquitectura de cliente lógico para la

Las aplicaciones cliente Win32 pueden conectarse a un servidor de Analysis Services mediante OLE DB para interfaces OLAP o el modelo de objetos de Microsoft® ActiveX® Data Objects (ADO) para lenguajes de automatización del Modelo de objetos componentes (COM), como Microsoft Visual Basic®. Las aplicaciones codificadas con lenguajes .NET pueden conectarse a un servidor de Analysis Services mediante ADOMD.NET.

Las aplicaciones existentes pueden comunicarse con Analysis Services sin modificaciones simplemente mediante uno de los proveedores de Analysis Services.

Lenguaje de programación Interfaz de acceso a datos
C++ OLE DB para OLAP
Visual Basic 6 ADO MD
Lenguajes .NET ADO MD.NET
Cualquier lenguaje que admita SOAP XML for Analysis

Analysis Services tiene una arquitectura web con un nivel intermedio totalmente escalable para la implementación por parte de organizaciones pequeñas y grandes. Analysis Services proporciona una amplia compatibilidad de nivel intermedio para los servicios web. Las aplicaciones ASP son compatibles con OLE DB para OLAP y ADO MD, ASP.NET aplicaciones son compatibles con ADOMD.NET. El nivel intermedio, que se muestra en la ilustración siguiente, es escalable para muchos usuarios simultáneos.

Diagrama lógico para la arquitectura de nivel intermedio

Tanto las aplicaciones de cliente como de nivel intermedio pueden comunicarse directamente con Analysis Services sin usar un proveedor. Las aplicaciones de cliente y de nivel intermedio pueden enviar XML for Analysis en paquetes SOAP a través de TCP/IP, HTTP o HTTPS. El cliente se puede codificar mediante cualquier lenguaje que admita SOAP. La comunicación en este caso se administra con mayor facilidad por Internet Information Services (IIS) mediante HTTP, aunque también se puede codificar una conexión directa al servidor mediante TCP/IP. Esta es la solución de cliente más fina posible para Analysis Services.

Analysis Services en modo tabular o de SharePoint

En SQL Server 2014, el servidor se puede iniciar en el modo del motor de análisis en memoria (VertiPaq) de xVelocity para bases de datos tabulares y para libros PowerPivot que se han publicado en un sitio de SharePoint.

PowerPivot para Excel y SQL Server Data Tools (SSDT) son los únicos entornos de cliente que se admiten para crear y consultar bases de datos en memoria que usan sharePoint o modo tabular, respectivamente. La base de datos powerPivot insertada que se crea mediante las herramientas de Excel y PowerPivot se incluye en el libro de Excel y se guarda como parte del archivo de .xlsx de Excel.

Sin embargo, un libro PowerPivot puede usar datos almacenados en un cubo tradicional si importa los datos del cubo en el libro. También puede importar datos de otro libro PowerPivot si se ha publicado en un sitio de SharePoint.

Nota:

Cuando se usa un cubo como origen de datos para un libro PowerPivot, los datos que obtiene del cubo se definen como una consulta MDX; sin embargo, los datos se importan como una instantánea plana. No puede trabajar interactivamente con los datos ni actualizar los datos del cubo.

Interfaces para el cliente PowerPivot

PowerPivot interactúa con el motor de almacenamiento xVelocity en memoria (VertiPaq) dentro del libro mediante las interfaces y lenguajes establecidos para Analysis Services: AMO y ADOMD.NET, y MDX y XMLA. Dentro del complemento, las medidas se definen mediante un lenguaje de fórmulas similar a Excel, expresiones de análisis de datos (DAX). Las expresiones DAX se insertan dentro de los mensajes XMLA que se envían al servidor en proceso.

Proveedores

Las comunicaciones entre PowerPivot y Excel usan el proveedor OLEDB MSOLAP (versión 11.0). Dentro del proveedor MSOLAP, hay cuatro módulos diferentes o transportes que se pueden usar para enviar mensajes entre el cliente y el servidor.

TCP/IP Se usa para las conexiones normales de cliente-servidor.

HTTP Se usa para las conexiones HTTP a través del servicio de bomba de datos SSAS o mediante una llamada al componente del servicio web PowerPivot (WS) de SharePoint.

INPROC Se usa para las conexiones al motor en proceso.

CANAL Reservado para las comunicaciones con el servicio del sistema PowerPivot en la granja de servidores de SharePoint.

Véase también

Componentes de servidor del motor OLAP