1. 接入说明
需要java开发人员根据产品需求创建对应的表。数据源是ElasticSearch,与业务用什么数据库无关。其他任何业务要接入,要实现增量+全量同步。数据源接入时,主要的时间会花费在需求分析和建模上。在代码上只有写配置和数据结构转换工作。
具体可咨询刘武,或让开发人员查阅技术文档:BI数据源-非微服务SQLServer对接 (yuque.com)
注意:如果存在需要连表查询的情况,请在接入数据源的时候就做好冗余字段,在后续的统计中暂不支持连表的查询统计操作。
2. 接入举例
(1)流程对接
注:目前只支持对表单套件的数据接入,代码写在jzb-flow里。具体步骤如下:
1. 需求分析:产品经理配置表单
2. 确定数据结构:前端、定义字段名、约束,定义编号
3. 实现套件:前端实现套件
4. 后端定义模型
4.1 jzb-form-sdk:增加模型
4.2 jzb-form-sdk:FormType增加枚举
4.3 jzb-bi-plugin-flow:增加BI模型
4.4 jzb-bi-plugin-flow:BiFlowType里增加枚举
4.5 jzb-bi-plugin-flow:scripts里增加索引模板
4.6 jzb-bi-plugin-flow:BiFlowPlugins里注册插件
4.7 Kibana里执行索引模板
5. 发布jzb-flow
6. 发布jzb-bi
7. 发起流程,看流程是否进入BI(可以在数据源页面切换到数据模式,配置好明细表即可查看数据)
(2)非微服务SQLServer对接
(参考jzb-cycle,jzb-change,jzb-labour项目。)
0. 需求分析:产品经理指明来源数据(具体来源什么页面,大概要什么字段)
1. bi建模、命令
2. bi建索引
3. 业务数据库开启CDC
4. 业务模块实现全量同步、增量同步(有SDK,仅需做些配置和数据转换工作)
5. bi注册插件
6. 测试(bi有30s左右的延迟)
3. 常见问题
(1)测试环境有数据,发布到线上就没数据或者缺数据了?
——原因:没有做数据全量同步。
(2)新数据源不能统计。
——原因:没有执行索引模板。
4. 接入结果检验
数据源接入成功才可以进行后续操作,数据源接入成功的标志是:
(1)能在数据源页面查看到正确的历史和新增数据的字段内容、字段格式、数据条数;
(2)能根据数据源配置好统计图表和所需的筛选条件;
(3)数据源必须测试环境和线上环境均测试通过方可正常使用,尽量由对应业务测试人员完成。
举例:接入了一个质量巡检的数据源,可以按下图查询数据源的数据,包括但不限于:
(1)根据业主单位ID为义东高速查询巡检流程有多少条数据,用这个数据跟实际业务数据对比,只有完全一致才算数据完整了。如图显示是28条,但按创建时间排序后发现5月6号之前的数据都没有业主单位ID,所以如果按业主单位查询,数据肯定会错。
(2)每一列的数据及其格式是否按需求显示了,如图开始时间和结束时间没有数据;格式问题常见的有ID没有转为名称,枚举值没有转为中文等。
(3)配置统计图表时,能按需求实现统计维度的配置。如何配置图表请看后面的介绍。
一旦出现上述问题,请尽快催促开发人员完成数据源的问题修复,否则图表和大屏的数据必然错误。