使用PL/SQL查询库,查询速度很快,但数据加载非常慢。

悬崖跳舞被人砍 2017-07-06 09:18:28
在昨天晚上10点,数据库交互较为空闲的时候,执行了一条结果数据量为10w的查询。1秒不到就查询出结果,但是选择全部加载数据时,非常慢,两个小时也没能不数据加载出来。查询的字段只有数个,也没有大字段。
查询涉及到3个千万数据量表的inner join。其中每个表都有较多的索引。
百度查到有个类似的提问,说是因为查询走了索引的问题,索引会影响数据的加载速度么?
求问诸位有没有遇到类似的问题,有没有什么解决问题的方向。
...全文
2672 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
小当家e 2017-07-06
  • 打赏
  • 举报
回复
查询走索引和没走索引查出来 数据量肯定差别大。 而且表的索引不在多,在于的经常要用于连接 查询的字段组成,联合索引 ,及常用字段索引 比你用整张表,每个字段 一个索引 效率高了不止一点点。。 你如果把表全部字段都弄索引,可能反而拖垮你的查询速度。。 你没加载全部数据,默认多少条 他只查多少条 ,这样查数据肯定相对快。
qq_28538637 2017-07-06
  • 打赏
  • 举报
回复
默认的话,select *是只显示一部分的,但是该遍历全部的还是会遍历全部,当你点显示全部,缓存不够用咯
imcmuc 2017-07-06
  • 打赏
  • 举报
回复
引用 2 楼 qq_38206656 的回复:
加载速度。。按照我的理解你是想在客户端查看查出结果的10W条数据,这应该和数据库的性能和什么语句都没关系了吧,,这是把查出的结果显示出来,想一下10W数据一秒钟打印100条,需要1000s的时间,刚开始的速度应该超过100条/s,但是打印了上万条数据以后,假设用的PL/SQL客户端,客户端会不会需要计算拖动条的长度,上万条的数据加载出来要不要考虑一下显卡的压力,10W数据显示出来每条行3mm,那就是300M的高度,机器的压力那得多大,每秒也打印不了几条数据吧。耗时应该不过分吧
PLSQLDEV客户端。。。
imcmuc 2017-07-06
  • 打赏
  • 举报
回复
加载速度。。按照我的理解你是想在客户端查看查出结果的10W条数据,这应该和数据库的性能和什么语句都没关系了吧,,这是把查出的结果显示出来,想一下10W数据一秒钟打印100条,需要1000s的时间,刚开始的速度应该超过100条/s,但是打印了上万条数据以后,假设用的PL/SQL客户端,客户端会不会需要计算拖动条的长度,上万条的数据加载出来要不要考虑一下显卡的压力,10W数据显示出来每条行3mm,那就是300M的高度,机器的压力那得多大,每秒也打印不了几条数据吧。耗时应该不过分吧

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧