me:为啥你们队答辩时说的话, 我听了没啥感觉, 评委听了直接就深有感触了?
资深:生产不可能只同步一张表和10W数据, 其他队伍用jdbc的方法同步全量数据, 在真实环境决绝报错.生产都是5000万以上的表. 有的团队把数据暂时存放在队列或缓存。然后统一发送到kafka, 真实环境肯定不是这么搞的.
me: 但是一些开源同步工具就是用队列的, 有的工具还用了多个队列.
资深: 这个考题,其实就是做一个做一个数据采集工具。 一个部分是流式,一部分是历史, 采集完直接推给使用方法。如果是多表或海量数据,队列都有塞爆的可能, 用队列不符合实际场景, 拿到流式数据直接处理就完事了。所以,如果考题提升一下难度。 5000千万数据库。大部分系统是不是会报错
me: 增量的binlog dump感觉是完全不会传错的, 因为这就是master slave的replication协议; 然后你的意思是对于全量数据mysql_dump肯定比jdbc靠谱是吗?
资深: 肯定的,你说dba备份数据的时候 有用jdbc处理的吗。最快的是拷贝文件, 其次是dump import 数据.
me: 尴尬, 我们就是测试发现mysql_dump太慢了, 所以就弃用那个方案了...
资深: /data/mysql/mysql/bin/mysqldump -n --compact --skip-extended-insert --skip-set-charset --skip-tz-utc --no-create-db --no-create-info --skip-triggers --no-create-db --default-character-set=utf8 --insert-ignore --skip-comments -hxxxx -uauto_test -pauto_test -P3306 --databases auto_test --tables sbtest4
资深: 这些参数都是看官方文档一个个查的, 一张表瞬间搞定.
---eof---