【问题标题】:SQL Reporting services - Out of Memory ExceptionSQL 报告服务 - 内存不足异常
【发布时间】:2010-09-13 09:34:32
【问题描述】:

我的单个 SQL 表中有大约 10 条 lac 记录。我需要在我的记录中加载这么多记录。我需要知道这是否会加载。当我尝试加载以报告其显示内存不足异常时。

【问题讨论】:

    标签: asp.net sql reporting-services


    【解决方案1】:

    Reporting Services(以及 Cognos、Business Objects 和其他 BI 报告套件)通常在呈现在 OUTPUT 中有数十万或数百万条记录的报表时会遇到问题。这些系统中的大多数将数据聚合成数万条记录并没有太大问题,但是一旦开始进入数十万或数百万条记录,就会遇到内存错误。

    我的建议是不要将 Reporting Services 用于数十万行的报表。没有人会阅读报告中的所有行。哎呀,由于 65,556 行的限制,如果您尝试渲染到 Excel,大多数 BI 套件甚至不会输出报告。我建议将 SSIS 用于大型原始数据转储、Analysis Services 多维数据集,如果您希望允许用户在 Excel 中进行探索性即席切片和切块分析,或者想办法将其分解为更小、更相关的数据,供用户使用一个人——意思是聚合或过滤到几百或几千行。

    如果您必须使用报告服务并且希望将其用作将数据导入 Excel 的工具,那么您可以尝试通过订阅呈现为 CSV。同样,我建议只构建一个执行此操作的 SSIS 包,因为输出数百万行 CSV 文件不会出现内存问题。但是,如果您必须使用报告服务作为输出工具,那么请通过使用内存最少的渲染方法来最小化内存成本。

    【讨论】:

      【解决方案2】:

      您是否要显示数以万计的记录?哪个用户会读到它?您是否尝试过安排并通过电子邮件发送报告?

      【讨论】:

        【解决方案3】:

        除非您扩展您的问题,否则这是无法回答的。您使用什么语言?哪个报告生成框架? SQL 查询是什么样子的?

        编辑:啊,好的,Microsoft SQL Reporting Services。好吧,我敢肯定,它应该可以轻松处理对具有数百万个元组的表的查询。这完全取决于您如何构建查询,因此在您向我们提供之前,我们无法为您提供帮助。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-04-01
          • 2011-01-09
          • 1970-01-01
          • 2017-05-29
          • 1970-01-01
          • 2010-10-05
          相关资源
          最近更新 更多