Различные подходы к доступу к SSAS

Мне интересно узнать несколько разных подходов для извлечения данных из Analysis Services, для использования в объектах кода или для отчетов конечных пользователей.

В прошлом я использовал два разных подхода: один использовал ADOMD для вывода результатов и помещал их в набор данных, другой использовал SQL OPENQUERY для связанного сервера SSAS, чтобы получить результаты как набор результатов для хранимой процедуры SQL. Оба они имели преимущества и недостатки.

На протяжении многих лет Ive видел различные вопросы по этой линии, так что простите меня за любое дублирование, но какие другие методы существуют для получения данных SSAS в формате, в котором код других людей мог бы его использовать?

Я рассматривал XML-результирующие наборы от SSAS через HTTP, а затем Linq to XML. У кого-нибудь есть опыт с этим?

Идеально Id как набор данных с типизированными столбцами или объектами со свойствами, но Im больше заинтересован в общем подходе, чем образцы кода. Как вы получили данные из SSAS, кроме элементов управления SSRS/Other?

5 ответов

Я знаю, что MS должна поддерживать XML/A (XML for Analysis). Я вскоре выпускаю библиотеку ajax для выполнения запросов XML/A с веб-страниц.

Пока я в настоящее время сосредоточен на Pentaho Mondrian, он должен работать и для MS SQLs XML/A. Если вас это интересует, я делаю презентацию на нем 13 января. (См.: http://wiki.pentaho.com/display/COM/January+13,+2010+-+Roland+Bouman+-+OLAP+and+Analysis+for+web+applications+using+XMLA) Я выпущу свой код это время тоже (вероятно, под лицензией LGPL)

Мне бы хотелось получить обратную связь от людей, которые используют другие серверы XML/A, поэтому, если вы заинтересованы, было бы здорово работать вместе над этим.

UPDATE:

проект теперь доступен на http://code.google.com/p/xmla4js/ Существует документация API, образцы кода и скрипты сборки. Это LGPL, поэтому вы можете использовать его в своих приложениях даже в коммерческих целях. Лицензия требует от вас каких-либо изменений в самой библиотеке как LGPL (но это не влияет на приложение, использующее библиотеку)

UPDATE2

Проект не находится на github в https://github.com/rpbouman/xmla4js Он работает как в браузере, так и в узлах.


Я никогда не использовал его сам, поскольку мы используем только ADOMD и Excel для подключения к SSAS, но в какой-то момент мы рассмотрели использование HTTP и XML. Мы закончили маршрут ADOMD из-за сокращенного графика графиков, но я предполагаю, что это еще один вариант, который позволяет получить доступ к SSAS за пределами мира .Net.

Здесь ссылка, которую я нашел полезной при прототипировании: Настройка доступа HTTP к службам Analysis Services SQL Server 2008 на Microsoft Windows Server 2008


XMLA - это подход с высокой степенью мощности, но я не знаю инструментария или библиотеки, которая действительно предоставляет все возможности XMLA; Я думаю, ты бы сам справился с этим. Для проектов, которые я сделал, это просто слишком много работает.

Вместо этого я использовал ADOMD.NET для получения результатов в коде; класс CellSet, в частности, довольно богат. Для анализа конечных пользователей (срез и кости) чаще всего я использую диаграммы Pivot Excel (которые невероятны!); иногда я также использую диаграммы диаграмм Visio. Для фиксированной отчетности службы Reporting Services могут напрямую обращаться к SSAS, и у нее даже есть собственный построитель запросов.

Кстати, в случае, если это помогает, у меня есть глава моей книги об интеграции SSAS с веб-сайтами в качестве способа разгрузки SQL Server: Ultra-Fast ASP.NET. В моих примерах кода используется ADOMD; Я также прохожу через создание простого куба, настраивая автоматические обновления с помощью SSIS, используя проактивное кэширование, построение простых запросов MDX и т.д.


Другим подходом является использование поставщика MSOLAP OLE DB. В настоящее время наш код использует этот метод.


Еще один способ (и, я бы сказал, самый простой) - получить данные из кубов SSAS OLAP в .NET, используя LINQ + ADO.NET Entity Framework + Поставщик инфраструктуры сущностей SSAS.

(Я работаю в компании, которая разработала поставщика инфраструктуры сущностей SSAS).

licensed under cc by-sa 3.0 with attribution.