Службы отчетов SQL - исключение нехватки памяти - PullRequest
0 голосов
/ 26 сентября 2008

У меня около 10 записей в моей единой таблице SQL. Мне нужно загрузить столько записей в моей записи. Мне нужно знать, будет ли это загружаться. при попытке загрузки, чтобы сообщить об исключении из памяти.

Ответы [ 3 ]

2 голосов
/ 04 февраля 2009

Службы Reporting Services (а также Cognos, Business Objects и другие наборы отчетов BI), как правило, имеют проблемы с отображением отчетов с сотнями тысяч записей или миллионами записей в OUTPUT. В большинстве этих систем нет особых проблем с агрегацией данных в десятки тысяч записей, но как только вы начнете работать с сотнями тысяч или миллионами, вы столкнетесь с ошибками памяти.

Моя рекомендация - НЕ использовать Reporting Services для отчетов с сотнями тысяч строк. Никто не собирается читать все строки в отчете. Черт, большинство комплектов BI даже не выводит отчет, если вы попытаетесь выполнить рендеринг в Excel из-за ограничения в 65 556 строк. Я бы порекомендовал использовать SSIS для больших дампов необработанных данных, кубов служб Analysis Services, если вы хотите разрешить пользователю выполнять специальный анализ срезов и кубиков в Excel или найти способы разбить его на более мелкие, более релевантные данные, которые могут быть использованы человек, то есть объединенный или отфильтрованный в несколько сотен или тысяч строк.

Если вы ДОЛЖНЫ использовать службы отчетов и хотите использовать их как инструмент для передачи данных в Excel, то вы можете попробовать выполнить рендеринг в CSV через подписку. Опять же, я бы порекомендовал просто создать пакет служб SSIS, который делает это, поскольку у вас не будет проблем с памятью при выводе многомиллионных строк CSV-файлов. Но если вы ДОЛЖНЫ использовать службы отчетов в качестве инструмента вывода, то минимизируйте стоимость памяти, используя метод рендеринга с наименьшим объемом памяти.

0 голосов
/ 26 сентября 2008

Вы пытаетесь отобразить десятки тысяч записей? Какой пользователь когда-либо прочитал бы это? Вы пробовали составить расписание и отправить отчет по электронной почте?

0 голосов
/ 26 сентября 2008

На это невозможно ответить, если вы не расширите свой вопрос. Какой язык вы используете? Какой отчет создает фреймворк? Как выглядит SQL-запрос?

Редактировать: Ах, хорошо, службы отчетов Microsoft SQL. Ну, я уверен, что он должен легко обрабатывать запросы к таблицам с миллионами кортежей. Все зависит от того, как вы структурировали свой запрос, поэтому, пока вы не дадите нам, мы не можем вам помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...