论坛首页 Java企业应用论坛

oracle大数据量(千万界别)怎么优化查询,分区。

浏览 19339 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-04-05  
evanzzy 写道
首先,硬盘32G空间,肯定是要扩充的,几千块钱的服务器硬盘,哪个公司也不算大事儿;

第二,union这个关键字在大数据量查询中,要避免使用。可以使用代码组合当日和历史查询结果;

第三,要增加报表服务器,专门为查询使用,每天要把当日的数据算好插入报表服务器供查询使用,真正查询的时候,只查报表服务器,根本不用碰原始数据(除非你的原始数据经常变化)。每次都把所有数据查一遍,性能肯定是不行的;

第四,表分区用在这个场景其实不太合适,一天100w条数据,确实不少,但也不算太多,没必要这么折腾。一个表的数据不上千万级,没必要考虑表分区。


看了三遍,还是觉得兄弟你数学没有学好。。
0 请登录后投票
   发表时间:2013-04-05  
dohkoos 写道
Kisses99 写道
你每月1号清空table B那么就是说你总共就保留2个月数据?那你在table A里保留2个月数据,然后每月1号把超出2个月的部分移到table B就完了,查询只要查table A。


这样就保留了三个月的数据了。


是两个月的数据,但其中一个月是重复的。
不过我觉得如果备份数据也要参与查询的话,何必分俩表?一个表就搞定了,按月分区即可。
如果要备份的,为啥不用磁盘备份?转移数据是最慢的。
0 请登录后投票
   发表时间:2013-04-05  
Kisses99 写道
evanzzy 写道
首先,硬盘32G空间,肯定是要扩充的,几千块钱的服务器硬盘,哪个公司也不算大事儿;

第二,union这个关键字在大数据量查询中,要避免使用。可以使用代码组合当日和历史查询结果;

第三,要增加报表服务器,专门为查询使用,每天要把当日的数据算好插入报表服务器供查询使用,真正查询的时候,只查报表服务器,根本不用碰原始数据(除非你的原始数据经常变化)。每次都把所有数据查一遍,性能肯定是不行的;

第四,表分区用在这个场景其实不太合适,一天100w条数据,确实不少,但也不算太多,没必要这么折腾。一个表的数据不上千万级,没必要考虑表分区。


看了三遍,还是觉得兄弟你数学没有学好。。


数学哪儿没学好,倒是要请您指教。

免费帮你出主意解决问题,你还来奚落我。你数学好,自己解决呀,干嘛来这里问,有本事自己干!

硬盘上就剩32G空间了,还不花钱买东西,还这么穷算计,看来也是个没起子的货
0 请登录后投票
   发表时间:2013-04-06  
虽然我很晕,但是我实在很想笑,哈哈哈~~
0 请登录后投票
   发表时间:2013-04-07  
面试题吧
1.限定磁盘空间为32G,上月加本月的空间怎么够?上月大在1号就有32G,清理了历史表只剩本月了。
2.加快数据查询至少要建索引,索引也要空间的。
3.千万级的数据搬迁很不好

分区表方式:
  加分区字段load_date年月日分区yyyymmdd,
  查询数据需要用视图,限制load_date<='最后导入数据yyyymmdd',
  新的一天导入数据后对此分区建索引,
  索引结束后修改查询视图load_date<='最后导入数据yyyymmdd'
  空间不够就删除历史分区。
0 请登录后投票
   发表时间:2013-04-07  
alter table BA_SALES_USE split partition SALES_PART_DEFAULT
at (TO_DATE(' 2013-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
into (partition SALES_PART_201302, partition SALES_PART_DEFAULT) update global indexes

增加表分区的代码
0 请登录后投票
   发表时间:2013-04-07  
evanzzy 写道
Kisses99 写道
evanzzy 写道
首先,硬盘32G空间,肯定是要扩充的,几千块钱的服务器硬盘,哪个公司也不算大事儿;

第二,union这个关键字在大数据量查询中,要避免使用。可以使用代码组合当日和历史查询结果;

第三,要增加报表服务器,专门为查询使用,每天要把当日的数据算好插入报表服务器供查询使用,真正查询的时候,只查报表服务器,根本不用碰原始数据(除非你的原始数据经常变化)。每次都把所有数据查一遍,性能肯定是不行的;

第四,表分区用在这个场景其实不太合适,一天100w条数据,确实不少,但也不算太多,没必要这么折腾。一个表的数据不上千万级,没必要考虑表分区。


看了三遍,还是觉得兄弟你数学没有学好。。


数学哪儿没学好,倒是要请您指教。

免费帮你出主意解决问题,你还来奚落我。你数学好,自己解决呀,干嘛来这里问,有本事自己干!

硬盘上就剩32G空间了,还不花钱买东西,还这么穷算计,看来也是个没起子的货

哥们很热情,别生气。。。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics