DataX
是一个单机同步工具,核心底层通道的分布式支持不友好。
FlinX补充了DataX的短板,详见
Flink 数据同步先行者- FlinkX
自我体验:
step1:
linux上部署flink 和 flinkx
step2:
vi /etc/profile
export FLINK_HOME=/root/flink
export FLINKX_HOME=/root/flinkx/flinkx-1.8.7
source /etc/profile
step3:
local模式:
nohup bin/flinkx -mode local -job $FLINKX_HOME/mysqltomysql.json -pluginRoot $FLINKX_HOME/plugins -confProp "{\"flink.checkpoint.interval\":60000}" &
standalone模式:
nohup bin/flinkx -mode standalone -job $FLINKX_HOME/mysqltomysql.json -pluginRoot $FLINKX_HOME/plugins -flinkconf $FLINK_HOME/conf -confProp "{\"flink.checkpoint.interval\":60000}" &
问题1:
...............
Could not allocate all requires slots within timeout of 300000 ms. Slots required: 3, slots allocated: 1 ..................
解决办法:因为,flink中设置的slot是1,少于3.
问题2:
解决办法:去Flink官网下载hadoop的组件添加到Flink的lib文件夹下,重启Flink,问题解决。(为什么用hadoop组件就解决?知道的小伙伴麻烦留言)