Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

canal同步数据到kudu #2402

Open
lyd5726892 opened this issue Nov 15, 2019 · 12 comments
Open

canal同步数据到kudu #2402

lyd5726892 opened this issue Nov 15, 2019 · 12 comments

Comments

@lyd5726892
Copy link

canal主要功能是实时同步mysql数据,实时同步的目的往往是为了后续更方面的分析数据,hbase虽然支持随机读写,但是在线分析能力不足,当前在线分析比较主流的场景是Impala+kudu的方式,希望canal-adapter下一个版本可以支持数据同步到kudu,谢谢

@user-GitHub-user
Copy link

user-GitHub-user commented Feb 14, 2020

canal主要功能是实时同步mysql数据,实时同步的目的往往是为了后续更方面的分析数据,hbase虽然支持随机读写,但是在线分析能力不足,当前在线分析比较主流的场景是Impala+kudu的方式,希望canal-adapter下一个版本可以支持数据同步到kudu,谢谢

你好,我合并了你提交的kudu插件到1.1.5,运行kudu adapter的时候报如下错误:
2020-02-14 17:34:07.301 [main] ERROR c.a.o.canal.adapter.launcher.loader.CanalAdapterLoader - Load canal adapter: kudu failed
java.lang.IllegalStateException: Extension instance(name: kudu, class: interface com.alibaba.otter.canal.client.adapter.OuterAdapter) could not be instantiated: class could not be found
at com.alibaba.otter.canal.client.adapter.support.ExtensionLoader.createExtension(ExtensionLoader.java:186) ~[client-adapter.common-1.1.5-SNAPSHOT.jar:na]
at com.alibaba.otter.canal.client.adapter.support.ExtensionLoader.getExtension(ExtensionLoader.java:142) ~[client-adapter.common-1.1.5-SNAPSHOT.jar:na]
at com.alibaba.otter.canal.adapter.launcher.loader.CanalAdapterLoader.loadAdapter(CanalAdapterLoader.java:175) [client-adapter.launcher-1.1.5-SNAPSHOT.jar:na]
at com.alibaba.otter.canal.adapter.launcher.loader.CanalAdapterLoader.init(CanalAdapterLoader.java:72) [client-adapter.launcher-1.1.5-SNAPSHOT.jar:na]
at com.alibaba.otter.canal.adapter.launcher.loader.CanalAdapterService.init(CanalAdapterService.java:60) [client-adapter.launcher-1.1.5-SNAPSHOT.jar:na]
查看 kudu jar包已经在plugin文件夹里,不知道有遇到过吗?

@lyd5726892
Copy link
Author

你好,你是直接将插件大的jar包吗?这个插件包是基于canal-1.1.4版本开发的,1.1.5版本你要将adapter工程一起编译打包才可以,否则不能直接识别

@user-GitHub-user
Copy link

user-GitHub-user commented Feb 14, 2020

你好,你是直接将插件大的jar包吗?这个插件包是基于canal-1.1.4版本开发的,1.1.5版本你要将adapter工程一起编译打包才可以,否则不能直接识别

你好,我是用1.1.5整个编译的,已经找到问题,src/main/resources/META-INF.canal/com.alibaba.otter.canal.client.adapter.OuterAdapter 这个文件 META-INF.canal应该是META-INFO/canal吧,我参考的hbase。另外我在launcher项目的pom里加了kudu,不加的话打包完,plugin里面就没有kudu.

另外想问一下,你那边用的kudu版本是多少呢?我现在有出现api兼容的问题,我用的是kudu1.2.0:
2020-02-14 19:16:03.767 [New I/O worker #1] ERROR org.apache.kudu.client.Connection - [peer master-192.168.11.101:7051] server sent error unsupported feature flags
2020-02-14 19:16:03.767 [New I/O worker #3] ERROR org.apache.kudu.client.Connection - [peer master-192.168.11.103:7051] server sent error unsupported feature flags
2020-02-14 19:16:03.767 [New I/O worker #2] ERROR org.apache.kudu.client.Connection - [peer master-192.168.11.102:7051] server sent error unsupported feature flags

@user-GitHub-user
Copy link

你好,你是直接将插件大的jar包吗?这个插件包是基于canal-1.1.4版本开发的,1.1.5版本你要将adapter工程一起编译打包才可以,否则不能直接识别

你好,我是用1.1.5整个编译的,已经找到问题,src/main/resources/META-INF.canal/com.alibaba.otter.canal.client.adapter.OuterAdapter 这个文件 META-INF.canal应该是META-INFO/canal吧,我参考的hbase。另外我在launcher项目的pom里加了kudu,不加的话打包完,plugin里面就没有kudu.

另外想问一下,你那边用的kudu版本是多少呢?我现在有出现api兼容的问题,我用的是kudu1.2.0:
2020-02-14 19:16:03.767 [New I/O worker #1] ERROR org.apache.kudu.client.Connection - [peer master-192.168.11.101:7051] server sent error unsupported feature flags
2020-02-14 19:16:03.767 [New I/O worker #3] ERROR org.apache.kudu.client.Connection - [peer master-192.168.11.103:7051] server sent error unsupported feature flags
2020-02-14 19:16:03.767 [New I/O worker #2] ERROR org.apache.kudu.client.Connection - [peer master-192.168.11.102:7051] server sent error unsupported feature flags

更换了kudu-client版本后可以正常录入数据了

@lyd5726892
Copy link
Author

你还在用kudu1.2.0?你那个版本还是比较老的了,不过要小心,kudu1.8.0以下好像有个session最多7天的问题,我也在验证这个问题,你多留心

@user-GitHub-user
Copy link

canal主要功能是实时同步mysql数据,实时同步的目的往往是为了后续更方面的分析数据,hbase虽然支持随机读写,但是在线分析能力不足,当前在线分析比较主流的场景是Impala+kudu的方式,希望canal-adapter下一个版本可以支持数据同步到kudu,谢谢

你好,kudu-adapter用了一段时间,有个问题想请教一下,这边常发生当一个机器宕机后,分区切换leader,并且开始恢复副本,分区处于under-replicated tablet状态,这时kudu clinet写该分区会报错,请问有遇到过吗,按我的理解,只要分区3个副本里面的leader是正常的RUNNING状态就能写入,不然副本不就失去本来的作用了吗?

@lyd5726892
Copy link
Author

你好,感谢反馈,我这边也遇到过这个问题,感觉这个是kudu存在问题,请问您kudu版本多少?我当前版本是1.7.0,我这遇到在kudu的tablet如果是异常状况宕机的话会导致写失败,如果是人为重启的话写就可以,这边我也在查找这个问题,如果您有定位到可以一起探讨下

@user-GitHub-user
Copy link

你好,感谢反馈,我这边也遇到过这个问题,感觉这个是kudu存在问题,请问您kudu版本多少?我当前版本是1.7.0,我这遇到在kudu的tablet如果是异常状况宕机的话会导致写失败,如果是人为重启的话写就可以,这边我也在查找这个问题,如果您有定位到可以一起探讨下

我是1.2.0的版本,也没有定位到问题

@xuning97
Copy link

xuning97 commented Aug 6, 2020

我们这边也在试用kudu adpater, 遇到了类似的问题,META-INF.canal路径好改,

另外我在launcher项目的pom里加了kudu,不加的话打包完,plugin里面就没有kudu.
这句话不知道什么意思,能否详述一下

@xuning97
Copy link

xuning97 commented Aug 6, 2020

ok, 我理解了,不知道为什么这两个改动不提交?

@jinguangyu
Copy link
Contributor

jinguangyu commented Jan 27, 2021

@lyd5726892 确认一个问题,主键值的更改,是不会删除旧值那条记录,而会插入一条新的对吗

@peak-xu
Copy link

peak-xu commented Mar 9, 2021

你好,同步到kudu功能已经可以用了吗

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants