Цитата:
Сообщение от
AP-1055D
Какие я вижу способы решения этих проблем:
1. В Microsoft Dynamics AX можно использовать компонент PivotTable для сводных таблиц. Использование этого компонента позволит сделать отчёты интерактивными, но не увеличит скорость построения отчёта.
2. Перенести логику расчёта отчётов в SSRS (Reporting Services). Я думаю, что это увеличит скорость работы, но отчёты не будут интерактивными.
3. Смотреть в сторону PowerPivot для Excel 2010 или Sharepoint 2010.
4. В SQL Server 2012 появился механизм отчётов Power View. Я пробовал этот компонент и думаю, что он был бы наиболее подходящим.
5. Построить хранилище данных, куда агрегировать данные. Я думаю, что использование хранилища данных повысит скорость работы. К сожалению, с хранилищами данных опыта работы нет.
1, 2, 3, 4 - это всего лишь разные инструменты для получения представления. инструменты по разному выглядят, но суть одна и та же - выборка первичных данных и расчет показателей отчета.
5 - это совершенно другой принцип.
грубо говоря, принципиально ускорение можно получить только за счет хранения промежуточных итогов. чем больше промеждуточных итогов, тем быстрее можно получить отчеты.
НО:
а) промежуточные итоги занимают дополнительное место на диске
б) промежуточные итгги требуют значительного времени на обновление.
хранилище - это и есть промежуточные итоги
в хранилище вы указываете по каким данным и в каких возможных разрезах надо хранить промежуточные итоги