数据采集 ETL 工具 Elasticsearch-datatran v6.5.0 发布
数据采集ETL工具 Elasticsearch-datatran v6.5.0 发布。
Elasticsearch-datatran 由 bboss 开源的数据采集同步ETL工具,提供数据采集、数据清洗转换处理和数据入库功能。支持在Elasticsearch、关系数据库(mysql,oracle,db2,sqlserver、达梦等)、Mongodb、HBase、Hive、Kafka、文本文件、SFTP/FTP多种数据源之间进行海量数据采集同步;支持本地/ftp日志文件实时增量采集到kafka/elasticsearch/database;支持根据字段进行数据记录切割;支持根据文件路径信息将不同文件数据写入不同的数据库表。
提供自定义处理采集数据功能,可以按照自己的要求将采集的数据处理到目的地,支持数据来源包括:database,elasticsearch,kafka,mongodb,hbase,file,ftp等,想把采集的数据保存到什么地方,由自己实现CustomOutPut接口处理即可。
Elasticsearch版本兼容性:支持各种Elasticsearch版本(1.x,2.x,5.x,6.x,7.x,+)之间相互数据迁移
导入bboss
一般项目导入下面的maven坐标即可:
<dependency> <groupId>com.bbossgroups.plugins</groupId> <artifactId>bboss-elasticsearch-rest-jdbc</artifactId> <version>6.5.0</version> </dependency>
如果是spring boot项目还需要导入下面的maven坐标:
<dependency> <groupId>com.bbossgroups.plugins</groupId> <artifactId>bboss-elasticsearch-spring-boot-starter</artifactId> <version>6.5.0</version> </dependency>
v6.5.0 功能改进
-
filelog插件添加子目录/ftp子目录/sftp子目录下日志文件采集功能
-
对filelog插件文件选择过滤器FileFilter接口方法accept进行了重构,增加目录和文件区分标识对象FilterFileInfo,以适配本地目录、ftp和sftp三种场景,调整如下
重构前
public boolean accept(String parentDir,String fileName, FileConfig fileConfig)
重构后
public boolean accept(FilterFileInfo filterFileInfo, //包含Ftp文件名称,文件父路径、是否为目录标识 FileConfig fileConfig)
使用案例
fileConfit.setFileFilter(new FileFilter() {//指定ftp文件筛选规则 @Override public boolean accept(FilterFileInfo filterFileInfo, //包含Ftp文件名称,文件父路径、是否为目录标识 FileConfig fileConfig) { if(filterFileInfo.isDirectory())//由于要采集子目录下的文件,所以如果是目录则直接返回true,当然也可以根据目录名称决定哪些子目录要采集 return true; String name = filterFileInfo.getFileName(); //判断是否采集文件数据,返回true标识采集,false 不采集 boolean nameMatch = name.startsWith("731_tmrt_user_login_day_"); if(nameMatch){ String day = name.substring("731_tmrt_user_login_day_".length()); SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); try { Date fileDate = format.parse(day); if(fileDate.after(startDate))//下载和采集2020年12月11日以后的数据文件 return true; } catch (ParseException e) { logger.error("",e); } } return false; } })
因此升级到6.5.0时需要对采集作业的FileFilter接口方法accept进行相应调整
- db管理dsl mysql无法创建加载dsl问题处理
- log4j2版本升级2.17.1、slfj版本升级1.7.32
- 修复空行处理器Record问题:关闭key大写机制后,根据字段名称获取数据失效
- 忽略mysql stream机制情况下获取rowid失败异常
- 增加excel csv文件采集案例
https://github.com/bbossgroups/csv-dbhandle
https://gitee.com/bboss/csv-dbhandle
-
优化运行容器工具,增加从环境变量、jvm属性配置检索mainclass功能
默认使用org.frameworkset.elasticsearch.imp.DB2CSVFile作为作业主程序,
如果设置了环境变量mainclassevn,则使用mainclassevn作为作业主程序
环境变量名称不能和属性名称一致,否则报循环引用异常,并将原始值返回
mainclass=#[mainclassevn:org.frameworkset.elasticsearch.imp.DB2CSVFile]
使用参考文档:
https://my.oschina.net/bboss/blog/469411
-
升级mysql驱动版本号为8.0.28
-
增加通用异步批处理组件
使用案例:
使用文档
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
字节跳动数据湖技术选型的思考与落地实践
本文是字节跳动数据平台开发套件团队在 Flink Forward Asia 2021: Flink Forward 峰会上的演讲,着重分享了字节跳动数据湖技术上的选型思考和探索实践。 文 | Gary Li 字节跳动数据平台开发套件团队高级研发工程师,数据湖开源项目 Apache Hudi PMC Member 随着 Flink 社区的不断发展,越来越多的公司将 Flink 作为首选的大数据计算引擎。字节跳动也在持续探索 Flink,作为众多 Flink 用户中的一员,对于 Flink 的投入也是逐年增加。 字节跳动数据集成的现状 在 2018 年,我们基于 Flink 构造了异构数据源之间批式同步通道,主要用于将在线数据库导入到离线数仓,和不同数据源之间的批式传输。 在 2020 年,我们基于 Flink 构造了 MQ-Hive 的实时数据集成通道,主要用于将消息队列中的数据实时写入到 Hive 和 HDFS,在计算引擎上做到了流批统一。 到了 2021 年,我们基于 Flink 构造了实时数据湖集成通道,从而完成了湖仓一体的数据集成系统的构建。 字节跳动数据集成系统目前支持了几十条...
- 下一篇
ThingsPanel-Go 版本发布,物联网应用搭建成本更低
为了更高的性能、更广泛的兼容性、更低的综合投入成本,物联网平台软件ThingsPanel采用Golang进行了重构,并重新发布。 升级后的Golang版本因此具备如下特性: Golang语言相较日趋衰落的Java、PHP处在上升趋势,开发者越来越多。 天生的高并发性带来更佳的性能,性能仅次于C/C++,优于Java,远超过原来采用的PHP。 高性能带来的硬件利用率,降低硬件投入成本。 可兼容树莓派等低功耗平台,更好的运行在边缘设备。 入门非常快,PHP程序员转Golang,快的2天就可以上手,几周后就能较为正常的开展工作。 系统部署相比原来更快,编译后的文件可直接在各种计算平台运行。 除此之外,这次更新还增加了一下的亮点。 Golang带来的性能的提升。 脱离Docker,方便开发。 可自行采用自己习惯的MQTT Broker。 数据接入更方便。 插件开发方式得到简化,速度更快,利用原来的插件修改最快10分钟。 插件热加载,不需要重启。 其它界面和细节的调整。 新的版本发布后,原PHP版本不再维护,我们将全力集中在Golang版本上进行开发。 通过这次的版本修改,搭建应用的速度变得更快...
相关文章
文章评论
共有0条评论来说两句吧...