大数据量查询和展示,求建议

单表一亿条数据,查询结果的数据量在10万条左右,需要做求和,展示需要做“条件属性-背景色”和“条件属性-行后分页”。
不用分页查询的话报表生成特别慢,而且容易内存溢出,是报表服务器内存溢出。我推测是下述原因,所以提了个需求:
>①从数据库取得数据之后,报表生成过程中,对所有结果数据进行条件属性,单元格计算等等的处理?
>②从数据库取得数据之后,报表生成过程中,只对第一页结果数据进行处理?点击下一页对下一页的进行处理?
>涉及一个性能问题,如果查的数据很多,这个会非常耗时间,而且很吃内存。用行式引擎的话会增加对数据库的查询次数,增加数据库服务器,硬盘的压力,也有问题。
>不知道能不能查询数据后全部缓存到本地。。。点击下一页,然后再处理下一页的数据,处理条件属性,单元格属性,这样好像能提高性能。



用分页查询的对数据库压力非常大,查询速度也不快,每点下一页都要从一亿条里边查呢。

客户准备替换系统,但是之前的C#开发的系统每次都是秒出,不知道是什么逻辑,服务器也就4g内存,cpu 1.7g*2,很尴尬。。。

不知道各位大神有什么好的建议没有啊?




FineReportSyoki 发布于 2017-1-20 23:42
悬赏:2 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共8回答
最佳回答
0
jinqibingl发布于2017-1-20 23:42(编辑于 2023-9-6 09:34)
555
最佳回答
0
macro_hard发布于2017-1-21 00:25(编辑于 2023-9-6 09:34)
555
  • Syoki Syoki(提问者)

    都说了分页查询不行了。。。一亿条呢,每次点下一页都很慢,试过了
    回复
    2017-01-22 10:26 
最佳回答
0
austin1122发布于2017-1-21 13:36(编辑于 2023-9-6 09:34)
555
最佳回答
0
flyingsnake发布于2017-1-21 19:35(编辑于 2023-9-6 09:34)
555
最佳回答
0
Syoki发布于2017-1-22 10:26(编辑于 2023-9-6 09:34)
555
  • macro_hard macro_hard

    什么数据库?在数据库工具里面做数据库分页查询也慢么?
    回复
    2017-01-22 11:44 
最佳回答
0
macro_hard发布于2017-1-22 11:44(编辑于 2023-9-6 09:34)
555
  • Syoki Syoki(提问者)

    SQL SERVER 2012:用了分页查询,查一下要5-8秒,这肯定不行。。。

    OFFSET (${page-1})*20 ROWS FETCH NEXT 20 ROWS ONLY
    回复
    2017-01-22 12:17 
最佳回答
0
Syoki发布于2017-1-22 12:17(编辑于 2023-9-6 09:34)
555
  • macro_hard macro_hard

    看一下执行计划,做一下优化
    回复
    2017-01-29 17:09 
最佳回答
0
macro_hard发布于2017-1-29 17:09(编辑于 2023-9-6 09:34)
555
  • 0关注人数
  • 1174浏览人数
  • 最后回答于:2017-1-29 17:09
    活动推荐 更多
    热门课程 更多
    返回顶部