数据采集 ETL & 流批一体化框架 bboss v7.1.1发布 --- 高效、稳定、快速、安全
本次版本最大亮点:新增MongoDB CDC输入插件,可以增量模式采集MongoDB 增、删、改数据,也可每次作业重启从最新位置采集MongoDB 增、删、改数据,同时带来了一系列实用的功能改进。
bboss 是一个基于开源协议 Apache License 发布的开源项目,由开源团队 bboss 运维,主要由以下三部分构成:
-
Elasticsearch Highlevel Java Restclient , 一个高性能高兼容性的 Elasticsearch/Opensearch java 客户端框架
-
数据采集同步 ETL ,一个基于 java 语言实现数据采集作业的强大 ETL 工具,提供丰富的输入插件和输出插件,可以基于插件规范轻松扩展新的输入插件和输出插件
-
流批一体化计算框架,提供灵活的数据指标统计计算流批一体化处理功能的简易框架,可以结合数据采集同步 ETL 工具,实现数据流处理和批处理计算,亦可以独立使用;计算结果可以保存到各种关系数据库、分布式数据仓库 Elasticsearch、Clickhouse 等,特别适用于数据体量和规模不大的企业级数据分析计算场景,具有成本低、见效快、易运维等特点,助力企业降本增效。
项目源码地址参考:源码下载和构建
快速上手:https://esdoc.bbossgroups.com/#/quickstart
v7.1.1 功能改进
-
处理获取Oracle Date类型字段值,字段精度丢失问题(时分秒),采用Timestamp进行处理
-
增加Context接口方法getValue(String fieldName, java.sql.Types),在处理关系数据库数据时,获取字段对应类型的原始值:
Object value = context.getValue("ACTIVE_TIME", Types.TIMESTAMP);
-
增加MongoDB CDC输入插件:可以增量模式采集MongoDB 增、删、改数据,也可每次作业重启从最新位置采集MongoDB 增、删、改数据 参考案例:https://gitee.com/bboss/mongodb-elasticsearch/blob/master/src/main/java/org/frameworkset/elasticsearch/imp/cdc/MongodbCDCDemo.java
-
优化作业生命周期管理机制:importcotext增加终止作业执行方法,方便在异步作业处理的任何地方终止作业的执行
-
更换MongoDB驱动包为mongodb-driver-sync
-
Mysql cdc优化:兼容高版本mysql jdbc驱动
-
MongoDB输出插件改进:支持修改和删除记录同步,支持多表、多库、多数据源数据同步 为记录指定数据源和表,案例 :https://gitee.com/bboss/mongodb-elasticsearch/blob/master/src/main/java/org/frameworkset/elasticsearch/imp/cdc/MongodbCDC2MongoDBDemo.java
-
数据库输出插件未指定修改或者删除sql语句,但是存在修改、删除状态记录时,给出明确异常提示,建议忽略对应的修改和删除状态的记录,参考文档:2.8.10.3 过滤记录
导入和使用 bboss
bboss 版本最新版本号从以下文档章节【1.1 在工程中导入 bboss maven 坐标】获取:
https://esdoc.bbossgroups.com/#/db-es-tool
bboss ETL 插件使用指南
https://esdoc.bbossgroups.com/#/datatran-plugins
bboss 详细介绍文档
https://esdoc.bbossgroups.com/#/README
bboss 实战视频
Elasticsearch Bboss Stream ETL 介绍视频
实时采集 Mysql binlog 增删改数据视频教程
bboss 流批一体化计算入门教程
Elasticsearch 导出 Excel 文件,按记录数切割 Excel 文件,解决单个文件导出数量过大问题