首页 新闻 会员 周边

数据同步更新的思考?

0
悬赏园豆:10 [已解决问题] 解决于 2013-05-24 15:09

一张百W条数据的用户表,要某时间点同步更新大部分字段。请问有什么成熟的解决文案或思路呢?求大牛指教教!

lonely_rain的主页 lonely_rain | 小虾三级 | 园豆:752
提问于:2013-03-07 10:24
< >
分享
最佳答案
0

根本的方案,我觉得应该业务规范表的索引,尽量少索引, 用事务批量更新,update语句的where 尽快不要in关键字查询,最好用连表update.

收获园豆:5
刘蔡涛 | 菜鸟二级 |园豆:221 | 2013-03-14 01:26

首先,谢谢你的建议。

其次,我同意你后半句的建议,不过背景是:业务需求很简单把一种数据源的一张表的数据更新到另一种数据源的一张表中。比如把oracle中的user表用记程序自动更新到sql server中的user表,可能通同步的是部分字段。难点在于,user表中的数据如果达到了几十W的量级,批量更新时可能会引起表级死锁。

lonely_rain | 园豆:752 (小虾三级) | 2013-03-14 09:36

@lonely_rain: 根据你所说的情况,已经不能用Update了, 就是delete 然后在insert。 因为我们现在也经常操作上KW的数据量。主要还要看服务器的配置。 还要根据业务看两个系统架构的设计, 比如是否即时更新、多次同步的数据量、再对sql user表进行分表等等。 选择一种跟你们系统业务适合的方案。 

刘蔡涛 | 园豆:221 (菜鸟二级) | 2013-03-14 23:35
其他回答(4)
0

筛选条件是什么?

飞来飞去 | 园豆:2057 (老鸟四级) | 2013-03-07 11:16

不同数据源之间的数据同步。不是查询

支持(0) 反对(0) lonely_rain | 园豆:752 (小虾三级) | 2013-03-08 13:09
0

有什么特点吗???

随信所欲 | 园豆:206 (菜鸟二级) | 2013-03-07 14:16

不同数据源之间的数据同步。不是查询

支持(0) 反对(0) lonely_rain | 园豆:752 (小虾三级) | 2013-03-08 13:09
0

把需要修改的信息,写到另一个表中,然后每个用户登陆时,自动修改~~

只会造轮子 | 园豆:2274 (老鸟四级) | 2013-03-07 14:43
0

多线程

收获园豆:5
zhibudao | 园豆:525 (小虾三级) | 2013-03-07 14:49

能否具体点。

支持(0) 反对(0) lonely_rain | 园豆:752 (小虾三级) | 2013-03-08 13:09

@lonely_rain:

如果是程序操作根系的话 就用多线程 程序参考

如果是sql语句 请参考以下资料

参考

希望对你有所帮助

支持(0) 反对(0) zhibudao | 园豆:525 (小虾三级) | 2013-03-08 13:54

@zhibudao: 同一张的并行操作,如果没有加锁会有可能出现死锁,抢占数据库资源更厉害。 

支持(0) 反对(0) 刘蔡涛 | 园豆:221 (菜鸟二级) | 2013-03-14 01:24
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册