public FileInfo[] getFileInfo(Map<String, String> rowMap) {
// 基本步骤: // 1. 获取binlog中的变更字段,比如组成文件有多个字段组成version+path // 2. 基于字段内容,构造一个文件路径,目前开源版本只支持本地文件的同步.(如果是网络文件,建议进行NFS mount到ndde机器). // 3. 返回FileInfo数组,(目前不支持目录同步,如果是目录需要展开为多个FileInfo的子文件),如果不需要同步,则返回null. String path = rowMap.get("FIELD"); //注意为大写 System.out.println("abc.path"+path); FileInfo fileInfo = null; if (StringUtils.isNotEmpty(path)) { fileInfo = new FileInfo(path); System.out.println("abc.fileInfo"+fileInfo.toString()); return new FileInfo[] { fileInfo }; } else { return null; } }
id name field 22 a22 /home/rjzou/test 23 a23 /home/rjzou/test 24 a24 /home/rjzou/test 25 a25 /home/rjzou/test 26 a25 /home/rjzou/test 27 a26 /home/rjzou/test 28 a27 /home/rjzou/test
1) 表数据可以同步,FIELD 路径对应的文件没有同步。
谢谢。
原提问者GitHub用户 rjzou
1、rowMap.get("FIELD"); 这个是需要替换为你自己对应存储 2、文件同步需要配置为双node,一个node在源端拉取文件,另一个node在目标端写入文件
原回答者GitHub用户agapple
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。