在不同地区放了2台在线服务器linux+mysql (a 机器    b 机器)2台mysql服务器 数据库表结构完全一样。但是数据不同。
a机器和b机器的数据是互补关系。现在有意做a b的数据的汇总分析 (分布式事务),初步想法从java程序里用事务做?  (另外用 脚本传参数也可以做)
想知道有没有更好的方案

解决方案 »

  1.   

    未测试过  oracle的 dblink还可以用的。但是mysql的federate引擎使用发现速度实在过慢,并发性很差 (字段不能同步修改),不能使用在这个情况。我的思路如下:java调用
    将各个节点的数据通过os的脚本把sql文件导入到本地的表之后本地进行join  (各个节点有一些临时表放最新数据 和汇总数据, 这样方便导入导出scp)
    脚本+存储过程(脚本调用)。  或者结果放到一个临时文件或临时表
      

  2.   

    优点:
    通过数据切分技术把一个大的mysql 分成多个小的服务器,解决恶写入性能瓶颈的问it,同时 也再次提高整个数据库的扩展性。无论垂直还是水平,sql能跑更快。弱点:
    数据整合有难度