SQL Server 2008 R2 CTP: PowerPivot в Excel и смешанные чувства от тестирования
Microsoft выкатила CTP SQL Server 2008 R2 с PowerPivot и Master Data Services. Потестировали PowerPivot на реальной модели продаж - аналитик доволен, DBA в раздумьях.
SQL Server 2008 R2 вышла в CTP; ключевые новинки - PowerPivot (Excel + SSAS xVelocity) и Master Data Services
На этой неделе потрогали CTP SQL Server 2008 R2. Microsoft обозначила два главных новшества в BI-части: PowerPivot и Master Data Services. Оба звучат интересно на бумаге; как обычно, в реальном железе картина сложнее.
Что такое PowerPivot и почему это не просто надстройка
PowerPivot - это связка из двух компонентов. Первый - надстройка для Excel 2010 (да, именно 2010, с 2007 не работает), которая позволяет аналитику загрузить в книгу десятки миллионов строк и строить сводные таблицы без участия куба или DBA. Второй - серверная часть на базе SSAS, которая запускается внутри SharePoint 2010 и позволяет публиковать эти «тяжёлые» книги в корпоративный доступ.
Движок под капотом у PowerPivot тот же, что в Analysis Services, - колоночное хранилище с компрессией. Именно поэтому в Excel можно затащить данные, которые обычный Excel просто не переварил бы: классические ограничения в 65 тысяч строк здесь не действуют, работа идёт на уровне xVelocity in-memory. Для тех, кто помнит как мы в 2006-м сравнивали Excel с OLAP-кубом и SSAS тогда выигрывал в разы - тут Microsoft, похоже, попытались дать пользователю скорость куба без необходимости строить куб вручную.
Как тестировали
Взяли реального клиента - оптовая торговля, типичная модель: продажи, остатки, клиентская база. Данные по продажам за три года - несколько миллионов строк в базе. Раньше на стандартный «отчёт по менеджерам с разбивкой по номенклатурным группам за период» DBA готовил представление или делал выгрузку в Excel в ручном режиме. Задача занимала от получаса до полудня в зависимости от того, что именно хотел аналитик.
В тесте аналитик сам: подключился к базе через PowerPivot, загрузил нужные таблицы, поставил связи в диаграмме, накидал сводную таблицу и срезы. Примерно за час - без участия DBA.
Что сработало хорошо:
- Загрузка данных. Несколько миллионов строк импортировались в книгу достаточно быстро - компрессия работает, в памяти всё лежит компактно.
- Связи между таблицами. Аналитик сам выставил связи между справочником клиентов, позициями заказов и номенклатурой. Для человека, который разбирается в данных предметно, но не пишет SQL - это реально снимает барьер.
- Сводные таблицы. Привычный Excel-интерфейс, только данные под ним уже не плоский лист, а модель. Реакция на перестройку сводной - мгновенная.
Что вызвало вопросы:
- DAX вместо MDX. PowerPivot использует формульный язык DAX - это не MDX, это не SQL. Для базовых расчётов понять можно, но как только нужно что-то нетривиальное (скользящее среднее, год-к-году по неполным периодам), без хорошего примера перед глазами аналитик буксует. Документация в CTP куцая.
- Зависимость от SharePoint. Серверная публикация требует SharePoint 2010 с конкретными компонентами. У клиента SharePoint нет. То есть книгу он построил, но поделиться ею с коллегами можно только отправив файл - а файл весит ощутимо, если данных много.
- CTP есть CTP. Пару раз Excel падал при пересчёте модели с большим числом связей. Не критично для тестирования, но в продакшн такое пускать рановато.
Master Data Services - смотрели глазами
MDS - отдельный компонент для управления нормативно-справочной информацией: единый реестр, версионность, workflow согласования. Нам это интересно, потому что у ряда клиентов давняя боль - справочник контрагентов расходится между 1С, CRM и складской системой, и ETL-процессы потом занимаются синхронизацией вместо трансформации. MDS теоретически закрывает эту дыру.
Но в CTP функциональность выглядит как MVP: веб-интерфейс сырой, Excel-надстройка для редактирования справочников присутствует, но работает не везде. Детально разбираться смысла нет - слишком много меняется между CTP и финальным релизом.
Ощущение смешанное, и вот почему
PowerPivot делает то, о чём аналитики просят годами: дай мне данные, и я сам разберусь, не хочу каждый раз звонить программисту. Это честный аргумент, и тест его подтвердил - аналитик клиента за час собрал сводку, которую DBA делал полдня.
Но DBA тоже понятен в своём скепсисе: он видит, как аналитик строит связи наугад, называет поля как попало и получает красивую сводку с неверным итогом - потому что перепутал тип связи. В Excel нет ни одного контрольного механизма, который скажет «ты считаешь не то». Куб в SSAS мы строили с валидацией бизнес-правил, с проверкой мер - это другая история.
Так что PowerPivot - это инструмент для аналитика, который понимает свои данные. Там, где данные запутанные или модель сложная, DBA никуда не денется. Вопрос не «заменит ли PowerPivot DBA», а «какой класс задач теперь решается без DBA». Этот класс реально расширился.
Финальный релиз R2 ждём; тогда и посмотрим на SharePoint-интеграцию вживую. Пока - собираем опыт по BI именно так: на реальных клиентских данных, без тепличных условий.
- SQL Server 2005: пакеты вместо самописных выгрузок и отчёты прямо в браузере · 6 сентября 2005
- Excel висит, куб летит: гонка отчётов на 400 тысячах строк · 20 марта 2006