本公开涉及bi服务,尤其涉及一种基于bi-server工作流程的图表处理方法、装置和电子设备。
背景技术:
1、bi(business inteligence)是一种主要由数据仓库、数据分析、查询报表、数据可视化等组成的数据类技术解决方案。在企业中bi可以打破erp、oa、crm、自研软件等形成的数据孤岛,有效的整合归纳企业的大量数据,行程高质量的数据资产,并在后续通过数据可视化制作可以满足不同人员对于数据查询、数据分析、数据可视化需求的各种报表,为企业的业务和管理人员提供足够的信息支撑。
2、作为全球数字化浪潮的重要参与者之一,bi不仅成为各企业及机构数字化转型的重要方式,而且还日益成为企业应对不断提升的客户期望、快速变化的竞争格局以及市场不确定性的关键业务引擎。随着bi在各行业不断得到深入运用数据分析逐渐成为企业的核心发展动力,bi的发展已逐渐步入新的拐点。
3、以业务自助分析,低代码、零门槛为核心特征的企业级bi蓬勃发展,成为不容忽视的战略性变革因素,在新一轮产业变革中的影响力逐步提升,成为各行各业创新发展、加速数字化转型的重要的驱动因素,在应用层面,bi加速数字化升级、斌能业务创新、加速企业核心业务数字化的迁移:从行业层面看,bi已在零售、消费、金融、电信、互联网等多个行业得到广泛应用,支持的业务场景也愈加丰富;在全社会层面,则进一步释放了大数据技术的红利,带来生产力的全面提升,成为新基建的重要组成部分。
4、为了解决上述问题,本技术提出一种基于bi-server工作流程的图表处理方法、装置和电子设备。
5、本技术一方面,提出一种基于bi-server工作流程的图表处理方法,包括如下步骤:
6、前端发起一个图表数据请求,发送至bi server;
7、bi server解析所述图表数据请求,并将解析结果发送至sql engine,由sqlengine生成相应的sql查询语句;
8、根据所述sql查询语句,bi server向cassandra缓存服务发起缓存查询,查询得到对应的缓存数据;
9、将所述缓存数据进行格式处理,发送至所述前端进行可视化展示。
10、作为本技术的一可选实施方案,可选地,bi server解析所述图表数据请求,并将解析结果发送至sql engine,包括:
11、bi server接收到前端发起的所述图表数据请求之后,进行请求解析,向所述元数据库mysql查询与所述图表数据请求相对应的数据集和图表定义信息,同时获取数据集上相应的数据行列权限信息;
12、bi server将查询获得的数据集和图表定义信息,以及数据集上相应的数据行列权限信息,发送至sql engine;
13、sql engine根据数据集和图表定义信息,以及数据集上相应的数据行列权限信息,生成所述图表数据请求的sql查询语句,并将所述sql查询语句反馈至bi server。
14、作为本技术的一可选实施方案,可选地,根据所述sql查询语句,bi server向cassandra缓存服务发起缓存查询,查询得到对应的缓存数据,包括:
15、bi server根据所述sql查询语句,向cassandra缓存服务发起缓存查询。
16、如果命中缓存,则立即返回数据至bi server。
17、如果没有命中缓存,则将sql发送到客户数据仓库进行查询计算,数据仓库完成计算后通过jdbc模式返回数据给bi-server。
18、作为本技术的一可选实施方案,可选地,根据所述sql查询语句,bi server向cassandra缓存服务发起缓存查询,查询得到对应的缓存数据,还包括:
19、若未查询到缓存数据:
20、通过job control tower进行数据计算任务调度,将spark脚本下推至spark jobengine进行查询计算;
21、spark job engine执行所述spark任务脚本,并把数据返回给job control tower进而返回给bi-server;
22、bi server根据所述新数据,创建新的缓存数据。
23、作为本技术的一可选实施方案,可选地,将所述缓存数据进行格式处理,发送至所述前端进行可视化展示,包括:
24、bi server对所述缓存数据进行数据转换,得到转换数据;
25、根据前端应用的数据类型,将所述转换数据封装为与前端应用的数据类型相匹配的数据格式,作为数据准备;
26、响应前端指令,将准备好的数据发送至前端应用。
27、作为本技术的一可选实施方案,可选地,根据所述sql查询语句,bi server向cassandra缓存服务发起缓存查询,查询得到对应的缓存数据,还包括:
28、将查询计算得到的数据,存储至cassandra缓存服务中;
29、对cassandra缓存服务中时长大于预设天数的无可用缓存数据进行标记,并进行定时清除。
30、本技术另一方面,提出一种实现所述基于bi-server工作流程的图表处理方法的装置,包括:
31、数据请求模块,用于通过前端发起一个图表数据请求,发送至bi server;
32、图表解析模块,用于bi server解析所述图表数据请求,并将解析结果发送至sqlengine,由sql engine生成相应的sql查询语句;
33、sql查询模块,用于根据所述sql查询语句,bi server向cassandra缓存服务发起缓存查询,查询得到对应的缓存数据;
34、格式化模块,用于将所述缓存数据进行格式处理,发送至所述前端进行可视化展示。
35、本技术另一方面,还提出电子设备,包括:
36、处理器;
37、用于存储处理器可执行指令的存储器;
38、其中,所述处理器被配置为执行所述可执行指令时实现所述的一种基于bi-server工作流程的图表处理方法。
39、本发明的技术效果:
40、本技术所提供的bi server平台,通过元数据管理、sql engine处理sql查询语句,并向cassandra缓存服务发起缓存查询,根据bi server工作流程,前端发起数据查询请求后,sql engine生成相应sql语句或spark执行脚本,bi server向cassandra缓存服务发起缓存查询此时:若有可用缓存命中,则直接获得缓存数据,并进行相应加工处理,最后返回给前端展示或导出;若无可用缓存,则向数据库或spark发起任务请求任务处理后,将结果数据返回给bi server,随后经由相关处理,再返回给前端展示或导出。同时,该结果数据也会存储到cassandra中作为缓存数据,供下一次相同数据请求所用。为保证缓存数据不过于庞大,系统会在每天凌晨定时清理cassandra中长期未被命中的缓存。因此,能够实现数据计算和储存的分离管理,bi产品在保证高可用基础上,部署运维等尽可能简化;减少客户运维成本,实现高可用升级;计算和存储分离,便于统一部署计算引擎和存储引擎,避免增加客户使用的机器运行压力,也方便运维,提高用户对bi server平台的体验感觉。加速企业的数字化进程,更加从容面对各种复杂形势下的挑战,构建现代化的数字化企业。
41、根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
技术实现思路