用户的数据由于应用的增长,最近增长很快
由于以前没有考虑好大数据的归档问题,现在这个矛盾很突出
Oracle数据库,数据超过10G,并且每月600M的速度增长
有些大的表,记录超过100万条
越来越影响速度,目前能想到的办法是按时间段建立离线数据库
但时用户要求能够将归档数据和联机数据一起统计和查询,这个就麻烦也就是说要求归档数据对用户透明化,而且对程序的改动量最小。请问金融,电信这些行业的高手们是如何解决类似问题的?

解决方案 »

  1.   

    我的经验是:应用可以考虑采用一些预处理手段;当数据归档后,可以在系统不忙时把这些归档数据的常用统计数据算好,在把算好的数据和现有数据联合进行真正的统计和报表打印。
    海量表的处理可以考虑采用分区表和创建分区索引,但要注意分区表的列的选择,同时会降低批量处理的速度。
    一个巨型表(如千万条记录)多创建一个索引都回影响写入的速度,单个小事务可能不觉得,但一旦有批量操作如数据的转移、更新则会大大降低性能。
    把经常更新数据的表,如经常truncate或批量插入,一定要放在extent management local 管理的表空间,切记。否则,嘿嘿,后悔来不及。
      

  2.   

    感谢各位,我在CSDN上搜了一下,发现这个话题还不少.
    基本上都说到用分区,视图等几种方法解决.
    我需要再仔细多查查这方面的资料.
      

  3.   

    ORACLE 分区表是什么意思 
    是不是指不一样的表放在不一样的 磁盘分区?