Streamsets FAQ
记录一些使用streamsets过程中遇到的问题
芦苇_
人是有思想的芦苇 最近忙于将这几年的有道云笔记搬过来
展开
-
Streamsets FAQ(七)record can not be null
1、问题描述对接mysqlbinlog,实时同步数据,pipeline运行一段时间后报错record can not be nullpipeline直接挂掉,重启无法启动,依然报错,只有重置offset后才能运行起来。2、解决方案这个错误基本上都是因为原始数据库那边的表没有主键导致的,所以需要到原始库那边检测哪些数据表没有主键,给这些表添加主键配置,或者在pipeline中将这些没有主键的数据表忽略掉即可。这里也附上MySQL查看没有主键表的SQL语句SELECT t1..原创 2020-08-31 09:49:28 · 550 阅读 · 0 评论 -
Streamsets FAQ(六)关于SS的8小时问题总结
1、问题描述关于SS的8小时问题之前也写了2个文章,以为问题已经得到了解决,但是发现想的太简单,再次遇到这个问题,折腾了2天,现在把这个问题梳理一下。大数据平台使用的是CDH-6.2.0版本,安装在Centos7.6 64位服务器上,服务器时区为CST时区,SS使用的是3.13.0版本。数据同步的需要首先是从各个业务系统MySQL同步到中间库MySQL上,再根据数据分析的需要,有选择性的从中间库MySQL同步到大数据平台的kudu中,MySQL版本统一为5.6的,MySQL时区和安装MySQL的服务原创 2020-08-31 09:47:03 · 1468 阅读 · 0 评论 -
Streamsets FAQ(五)关于SS增量同步mysql数据过程中offset值时间偏差问题
1、问题描述CDH-6.2.0,SS-3.13.0。在使用SS同步mysql数据到kudu时使用JDBC Query Consumer,因为mysql的datetime数据到kudu的timestamp后少了8小时,给JDBC Query Consumer中JDBC配置添加了额外配置项,在最后的Additional JDBC Configuration Properties中增加2个配置serverTimezone UTCuseTimezone true添加这2个配置后.原创 2020-08-31 09:42:17 · 924 阅读 · 2 评论 -
Streamsets FAQ(四)SS同步binlog到kudu时间少8小时
1、问题描述当前使用的是CDH-6.2.0和SS-3.13.0版本,在同步增量binlog数据到MySQL的时候datetime格式的字段时间会多出8小时,基于这个原因我们修改了SS里面的mysql-binlog-connector-java-0.13.0.jar源码streamsets-3.13.0中使用的mysql-binlog-connector-java是0.13.0版本,找到0.13.0的源码,https://github.com/shyiko/mysql-binlog-connec原创 2020-08-31 09:39:49 · 1184 阅读 · 12 评论 -
Streamsets FAQ(三)SS前端界面时间格式调整
1、问题描述SS的前端界面时间显示默认使用的是CST时区,和中国时区有6小时时差(少了6小时),实际时间是2020-04-07 10:20:00,显示为2020-04-07 04:20:002、解决方案进行Settings,修改Timezone为UTC即可,无需重启。...原创 2020-08-31 09:36:58 · 714 阅读 · 1 评论 -
Streamsets FAQ(二)关于SS的8小时问题
1、问题描述在使用SS进行数据同步的过程中发现有8小时差值问题,具体表现为在使用JDBC Query Consumer这样的stage入到kudu时发现数据比MySQL中数据小8小时。在使用MySQL Binary Log这样的stage解析binlog数据时数据比MySQL中数据大了8小时,针对2种情况处理方式是不一样的。2、解决方案2.1、JDBC Query Consumer在JDBC Query Consumer这个stage的JDBC配置项中往下拉,在最后的Additiona.原创 2020-08-31 09:35:46 · 583 阅读 · 0 评论 -
Streamsets FAQ(一)使用binglog同步MySQL数据到kudu,date数据类型在两端不一致
1、问题描述使用streamsets将mysql数据同步到kudu中,直接解析mysql的binlog进行实时数据同步,发现一个小的细节问题,mysql中定义的date类型的字段在解析binlog后变成了带有星期几标致的值,如create字段是date类型,值为2019-06-19,那么streamsets的mysqlbinlog就会将其解析成Wed Jun 19,如果在kudu这边定义的create字段是string类型的话,这个值入库的时候就会是Wed Jun 19,和原始库差别太大了。2.原创 2020-08-31 09:31:45 · 858 阅读 · 4 评论