首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

oracle 千万级大数据量的处理,怎么提高查询效率

2013-06-25 
oracle 千万级大数据量的处理,如何提高查询效率?场景描述:  oracle数据库中有2张表,一张是tm_bus_realtime

oracle 千万级大数据量的处理,如何提高查询效率?
场景描述:
  oracle数据库中有2张表,一张是tm_bus_realtime_log当前表 只有一当前一天的数据。数据量有几百万的数据。还有一张表,tm_bus_realtime_his历史表 进行了分区。每10天一分区。每个月有3个分区。整个历史表有几亿的数据量。每个分区有千万条数据。
问题描述:
  在从历史表的分区中,查询数据时,很慢,由于数据量非常大,如果想查询几天的数据更慢?应该如何提高查询的速度?

  请各位大牛指点,不胜感激! Oracle 大数据 历史
[解决办法]
改成一天一个分区
[解决办法]
tm_bus_realtime_his ,如果是给报表用的,最好一天一个分区。

另外,允许的话,最好 对历史数据 进行清理,比如只保存2年的数据。
[解决办法]
依据计划看看索引建的合适不?
[解决办法]

引用:
tm_bus_realtime_his ,如果是给报表用的,最好一天一个分区。

另外,允许的话,最好 对历史数据 进行清理,比如只保存2年的数据。


另外,如果你的查询条件中,除了时间,如果还有其他的字段,那就要相应的建上本地索引
[解决办法]
关键看你的where条件是什么样子。
[解决办法]
如果历史表数据不更改的话,可以考虑在时间字段建立一个trunc(XX)位图函数索引,查询的时候再指定分区。
[解决办法]
表分区了、那索引分区了没?

热点排行