# increment-to-nebula **Repository Path**: ligangmy/increment-to-nebula ## Basic Information - **Project Name**: increment-to-nebula - **Description**: 增量同步数据到nebula - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 3 - **Created**: 2021-08-21 - **Last Updated**: 2023-12-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #### 这是一个底层库增量同步数据到nebulagraph的Demo ###### 注意事项 > application.conf 配置文件就是 exchange同步数据的那个,用到了标签到表名的映射、mysql字段和nebula属性的映射、nebula的配置 > 项目目前只支持mysql的数据增量同步,需要canal服务做mysql从节点。 > 目前只映射了部分类型,整型和字符串 ###### 最佳实践 1.搭建canal服务 2.给要同步的mysql master节点添加从节点 3.使用这个demo加以改造,连接咱们的canal服务 4.监听canal同步过来的binlog,解析INSERT/UPDATE/DELETE 命令 5.根据指定的application.conf 将mysql 的表名、字段名与nebulagraph的 标签名、边名以及其中的字段做映射 6.将上述INSERT/UPDATE/DELETE 自动映射成 nebulagraph的 INSERT VERTEX/INSERT EDGE/DELETE VERTEX/DELETE EDGE 命令 7.通过 application.conf指定的space 执行映射的命令,完成mysql增量同步到nebulagraph。 启动canal服务 E:\DevTool\java\canal.deployer-1.1.5\bin>startup.bat start cmd : java -Xms128m -Xmx512m -XX:PermSize=128m -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dapplication.codeset=UTF-8 -Dfile.encoding=UTF-8 -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=9099,server=y,suspend=n -DappName=otter-canal -Dlogback.configurationFile="E:\DevTool\java\canal.deployer-1.1.5\bin\\..\conf\logback.xml" -Dcanal.conf="E:\DevTool\java\canal.deployer-1.1.5\bin\\..\conf\canal.properties" -classpath "E:\DevTool\java\canal.deployer-1.1.5\bin\\..\conf\..\lib\*;E:\DevTool\java\canal.deployer-1.1.5\bin\\..\conf" java -Xms128m -Xmx512m -XX:PermSize=128m -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dapplication.codeset=UTF-8 -Dfile.encoding=UTF-8 -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=9099,server=y,suspend=n -DappName=otter-canal -Dlogback.configurationFile="E:\DevTool\java\canal.deployer-1.1.5\bin\\..\conf\logback.xml" -Dcanal.conf="E:\DevTool\java\canal.deployer-1.1.5\bin\\..\conf\canal.properties" -classpath "E:\DevTool\java\canal.deployer-1.1.5\bin\\..\conf\..\lib\*;E:\DevTool\java\canal.deployer-1.1.5\bin\\..\conf" com.alibaba.otter.canal.deployer.CanalLauncher Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0 Listening for transport dt_socket at address: 9099 启动canal客户端同步数据 java -jar increment-to-nebula-1.0-SNAPSHOT.jar --config D:\\coding\\java\\increment-to-nebula\\src\\main\\resources\\application.conf --host 127.0.0.1 --port 11111 --destination example --username admim --password 4ACFE3202A5FF5CF467898FC58AAB1D615029441 --database mydatabase