数据采集 ETL & 流批一体化框架 bboss v7.1.0 发布 --- 高效、稳定、快速、安全
bboss --- 简化版 Flink,一个基于开源协议 Apache License 发布的开源项目,由开源团队 bboss 运维,主要由以下三部分构成:
-
Elasticsearch Highlevel Java Restclient , 一个高性能高兼容性的 Elasticsearch/Opensearch java 客户端框架
-
数据采集同步 ETL ,一个基于 java 语言实现数据采集作业的强大 ETL 工具,提供丰富的输入插件和输出插件,可以基于插件规范轻松扩展新的输入插件和输出插件
-
流批一体化计算框架,提供灵活的数据指标统计计算流批一体化处理功能的简易框架,可以结合数据采集同步 ETL 工具,实现数据流处理和批处理计算,亦可以独立使用;计算结果可以保存到各种关系数据库、分布式数据仓库 Elasticsearch、Clickhouse 等,特别适用于数据体量和规模不大的企业级数据分析计算场景,具有成本低、见效快、易运维等特点,助力企业降本增效。
项目源码地址参考:源码下载和构建
v7.1.0 功能改进
-
流批一体化改进:框架增加了添加和获取用于指标计算处理等的临时数据到记录,不会对临时数据进行持久化处理 使用案例:
//添加用于指标计算处理等的临时数据到记录,不会对临时数据进行持久化处理, context.addTempData("name","ddd");
//获取用于指标计算处理等的临时数据到记录,不会对临时数据进行持久化处理, CommonRecord data = (CommonRecord) mapData.getData(); String name = (String)data.getTempData("name");
-
流批一体化改进:修复指标分析器设置时间格式空指针异常
-
流批一体化改进:修复指标分析器设置时间窗口类型空指针异常
-
Elasticsearch客户端改进:添加文档时,如果数据采用Map封装,控制是否保存文档id字段到记录中,true 保存 false 不保存,默认值true 使用案例:
//创建创建/修改/获取/删除文档的客户端对象,单实例多线程安全 ClientInterface clientUtil = ElasticSearchHelper.getRestClientUtil(); //构建一个对象,日期类型,字符串类型属性演示 Map demo = new LinkedHashMap(); demo.put("demoId","2");//文档id,唯一标识,@PrimaryKey注解标示,如果demoId已经存在做修改操作,否则做添加文档操作 demo.put("agentStarttime",new Date()); demo.put("applicationName","blackcatdemo2"); demo.put("contentbody","this-is content body2"); demo.put("agentStarttime",new Date()); demo.put("name","|刘德华"); demo.put("orderId","NFZF15045871807281445364228"); demo.put("contrastStatus",2); demo.put("localDateTime", LocalDateTime.now()); //强制刷新 ClientOptions addOptions = new ClientOptions(); addOptions.setIdField("orderId"); addOptions.setPersistMapDocId(false); //如果orderId对应的文档已经存在则更新,不存在则插入新增 String response = clientUtil.addDocument("demonoid",//索引表 demo,addOptions);
-
流处理机制改进:根据时间窗口类型配置日期格式和相应的时间维度字段
-
流处理机制改进:useDefaultMapData调整为false
导入和使用 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 文件,解决单个文件导出数量过大问题