mdx - Diferentes enfoques para acceder a SSAS
adomd.net (5)
Nunca lo usé, ya que solo usamos ADOMD y Excel para conectarnos a SSAS, pero en algún momento consideramos usar HTTP y XML. Terminamos yendo por la ruta ADOMD debido a un horario de desarrollo reducido, pero creo que es otra opción que permite el acceso a SSAS fuera del mundo .Net.
Aquí hay un enlace que me pareció útil al crear prototipos: Configuración del acceso HTTP a SQL Server 2008 Analysis Services en Microsoft Windows Server 2008
Me interesa conocer algunos enfoques diferentes para recuperar datos de Analysis Services, para usarlos en objetos en código o para informes de usuarios finales.
He usado dos enfoques diferentes en el pasado, uno estaba usando ADOMD para obtener resultados y ponerlos en un conjunto de datos, el otro estaba usando OPENQUERY de SQL en un servidor SSAS vinculado para obtener resultados como un conjunto de resultados de procedimientos almacenados de SQL. Ambos tenían ventajas y desventajas.
A lo largo de los años he visto varias preguntas a lo largo de esta línea, así que perdóneme por cualquier duplicación, pero ¿qué otros métodos existen para obtener los datos de SSAS en un formato donde el código de otras personas pueda usarlos?
He considerado los conjuntos de resultados XML de SSAS a través de HTTP, luego Linq a XML. ¿Alguien tiene alguna experiencia con eso?
Idealmente, me gustaría un conjunto de datos con columnas escritas u objetos con propiedades, pero me interesa más el enfoque general que los ejemplos de código. ¿Cómo ha obtenido datos de SSAS, aparte de SSRS / Otros controles del panel de control?
Otra forma (y yo diría que la más sencilla) para obtener datos de los cubos de SSAS OLAP en .NET es mediante el uso de LINQ + ADO.NET Entity Framework + SSAS Entity Framework Provider .
(Trabajo para la empresa que desarrolló el proveedor de marco de entidad SSAS).
Otro enfoque es utilizar el proveedor MSOLAP OLE DB. Nuestro código está utilizando actualmente este método.
Sé que se supone que MS admite XML / A (XML para análisis). En breve estoy lanzando una biblioteca ajax para hacer solicitudes de XML / A desde páginas web.
Aunque actualmente estoy enfocado en el Mondrian de Pentaho, también debería funcionar para MS SQLs XML / A. Si estás interesado, haré una presentación sobre esto el 13 de enero. (Consulta: http://wiki.pentaho.com/display/COM/January+13,+2010+-+Roland+Bouman+-+OLAP+and+Analysis+for+web+applications+using+XMLA +2010+-+Roland+Bouman+-+OLAP+ http://wiki.pentaho.com/display/COM/January+13,+2010+-+Roland+Bouman+-+OLAP+and+Analysis+for+web+applications+using+XMLA ) Para ese momento también http://wiki.pentaho.com/display/COM/January+13,+2010+-+Roland+Bouman+-+OLAP+and+Analysis+for+web+applications+using+XMLA mi código (probablemente bajo una licencia LGPL)
Me encantaría recibir comentarios de personas que usan otros servidores XML / A, por lo que si está interesado, sería fantástico trabajar juntos en esto.
ACTUALIZAR:
el proyecto ahora está disponible en http://code.google.com/p/xmla4js/ Hay documentación de API, ejemplos de código y scripts de compilación. Es LGPL, por lo que es libre de usarlo en sus aplicaciones, incluso con fines comerciales. La licencia requiere que se publiquen modificaciones a la biblioteca como LGPL (pero esto no afecta a la aplicación que usa la biblioteca)
Actualización2
El proyecto no reside en github en https://github.com/rpbouman/xmla4js Funciona tanto en el navegador como en nodejs.
XMLA es el enfoque de "alta potencia", pero no conozco un kit de herramientas o biblioteca que realmente exponga todas las capacidades de XMLA; Creo que tendrías que hacerlo tú mismo. Para los proyectos que he hecho, eso es demasiado trabajo.
En su lugar, usé ADOMD.NET para recuperar resultados en código; La clase CellSet en particular es bastante rica. Para el análisis del usuario final (corte y dados), la mayoría de las veces uso Excel Pivot Charts (¡que son fabulosos!); A veces también uso Visio Pivot Diagrams. Para informes fijos, Reporting Services puede acceder a SSAS directamente, e incluso tiene su propio generador de consultas.
Por cierto, en caso de que ayude, tengo un capítulo en mi libro sobre la integración de SSAS con sitios web como una forma de descargar SQL Server: Ultra-Fast ASP.NET . Mis ejemplos de código usan ADOMD; También me dirijo a través de la construcción de un cubo simple, la configuración de actualizaciones automáticas con SSIS, el uso del almacenamiento en caché proactivo, la creación de consultas MDX simples, etc.