HI,大家好,有个需求,从数据库中同步数据到内存。现在采用的是全量同步方法,性能比较差。现想减少同步的时间,
所以采用增量同步方法。有没做过这方面的指导一下呢?有没什么好方法呢?请积极探讨探讨!

解决方案 »

  1.   

    不知道你把数据同步到内存是要选择什么机制?
    第三方应用?还是自己写代码把数据同步到内存表?
    oracle timesten内存数据库
    可以实现数据增量同步到内存调高事务处理及查询效率...
    可以参考下!
      

  2.   

    没采用什么机制,就是对数据库每一个表,每一条记录,依次load进内存。(全量同步。)
    考虑使用增量方式,不知道如何实现。
      

  3.   

    我想可以采用如下的方法吧:
    (1)在表中增加最近更新时间字段。你的加载程序记录每次加载的时间,然后从数据库中找到该时间大于上次加载时间的记录,就是需要更新的记录。这种方法的前提是数据产生程序可以作相应的修改。
    (2)在表上建立update/insert/delete的触发器,然后在触发器中记录更新的记录关键信息,加载程序根据该关键信息进行加载。好处是不用改已有的业务处理程序,缺点是对效率会产生影响。
      

  4.   


    那你可以研究timesten 的 cache to oracle,
    可以针对oracle数据表添加对应的cachegroup进行数据的同步...
      

  5.   


    ==================================================
    (1) TT很费银子的,一般项目肯怕花不起。
    (2) TT可以和Oracle核心绑在一起,一般项目没有这个资源。
      

  6.   

    TT太贵了,除非用盗版了,否则还真是用不起啊研究下MEMCACHE的原理吧,数据源改成来自数据库的