一种基于clickhouse数据库的业务数据查询方法、系统及介质技术方案

技术编号:37375992 阅读:9 留言:0更新日期:2023-04-27 07:19
本申请公开了一种基于clickhouse数据库的业务数据查询方法、系统及介质,方法包括:根据用户发送的业务处理请求,确定业务处理请求对应的请求类型;在请求类型为数据变更类型的情况下,根据业务处理请求,从预设的原始数据库中获取所需的原始数据;对原始数据进行处理,得到处理后的目标数据,并对业务处理请求对应的业务数据处理逻辑进行重组,得到重组后的目标业务数据处理逻辑;根据目标业务数据处理逻辑,将目标数据写入至clickhouse数据库中;接收用户发送的业务数据查询请求,并对业务数据查询请求中的指定业务数据查询请求进行合并,通过clickhouse数据库,获取业务数据查询请求对应的业务数据,并将业务数据返回至用户。用户。用户。

【技术实现步骤摘要】
一种基于clickhouse数据库的业务数据查询方法、系统及介质


[0001]本申请涉及数据处理
,具体涉及一种基于clickhouse数据库的业务数据查询方法、系统及介质。

技术介绍

[0002]业务系统在运行过程中所产生的数据量会不断增多,业务需求的逻辑复杂性也在逐渐加大,这就导致业务数据在查询展示时需要的数据加载时间也越来越多,降低了数据查询效率。

技术实现思路

[0003]为了解决上述问题,本申请提出了一种基于clickhouse数据库的业务数据查询方法,包括:
[0004]根据用户发送的业务处理请求,确定所述业务处理请求对应的请求类型;其中,所述请求类型包括数据变更类型和数据查询类型;
[0005]在所述请求类型为所述数据变更类型的情况下,根据所述业务处理请求,从预设的原始数据库中获取所需的原始数据;其中,所述原始数据至少包括所述业务处理请求对应的数据库变更数据;
[0006]对所述原始数据进行处理,得到处理后的目标数据,并对所述业务处理请求对应的业务数据处理逻辑进行重组,得到重组后的目标业务数据处理逻辑;
[0007]根据所述目标业务数据处理逻辑,将所述目标数据写入至clickhouse数据库中;
[0008]接收所述用户发送的业务数据查询请求,并对所述业务数据查询请求中的指定业务数据查询请求进行合并,通过所述clickhouse数据库,获取所述业务数据查询请求对应的业务数据,并将所述业务数据返回至所述用户。
[0009]在本申请的一种实现方式中,根据所述业务处理请求,从预设的原始数据库中获取所需的原始数据之前,所述方法还包括:
[0010]对所述clickhouse数据库进行初始化,以将所述原始数据库中的原始数据同步至所述clickhouse数据库中。
[0011]在本申请的一种实现方式中,对所述原始数据进行处理,得到处理后的目标数据,具体包括:
[0012]对所述原始数据进行序列化处理,得到对应的原始数据序列;其中,所述原始数据序列中原始数据对应的数据格式至少包括以下任意一项或多项:JSON格式、字典格式;
[0013]确定所述原始数据序列中各原始数据所在的原始数据表,以及所述原始数据表之间的关联关系,以根据所述关联关系,对所述原始数据序列进行整合和汇总,得到目标数据。
[0014]在本申请的一种实现方式中,对所述业务处理请求对应的业务数据处理逻辑进行
重组,得到重组后的目标业务数据处理逻辑,具体包括:
[0015]确定所述业务处理请求对应的业务数据处理逻辑类型;其中,所述业务数据处理逻辑类型至少包括业务数据增加逻辑、业务数据删除逻辑和业务数据更新逻辑;
[0016]在所述业务数据处理逻辑类型为所述业务数据增加逻辑的情况下,对所述目标数据进行合并,以得到合并后的目标业务数据处理逻辑,实现所述目标数据的批量同步;
[0017]在所述业务数据处理逻辑类型为所述业务数据删除逻辑或所述业务数据更新逻辑的情况下,将所述业务数据删除逻辑或所述业务数据更新逻辑转换为对应的业务数据增加逻辑,得到转换后的目标业务数据处理逻辑。
[0018]在本申请的一种实现方式中,对所述业务数据查询请求中的指定业务数据查询请求进行合并,具体包括:
[0019]确定所述业务数据查询请求对应的请求时间;
[0020]从所述业务数据查询请求中,筛选出请求时间相同的指定业务数据查询请求,并对所述指定业务数据查询请求进行合并。
[0021]在本申请的一种实现方式中,将所述业务数据返回至所述用户,具体包括:
[0022]将所述业务数据写入预设的查询缓存区;
[0023]确定所述业务数据对应的缓存时间,根据所述缓存时间,从所述业务数据中,筛选出位于预设缓存时间范围内的指定业务数据;
[0024]确定所述指定业务数据对应的业务数据查询请求是否一致,若一致,则将同一业务数据查询请求对应的指定业务数据批量返回至所述用户。
[0025]在本申请的一种实现方式中,通过所述clickhouse数据库,获取所述业务数据查询请求对应的业务数据,具体包括:
[0026]确定所述clickhouse数据库中各业务数据对应的写入标识;其中,所述写入标识携带有所述业务数据的写入时间;
[0027]根据所述写入标识,从所述clickhouse数据库中,获取所述写入时间与所述业务数据查询请求对应的请求时间最近的业务数据。
[0028]在本申请的一种实现方式中,所述业务数据删除逻辑转换得到的业务数据增加逻辑对应的目标数据为空。
[0029]本申请实施例提供了一种基于clickhouse数据库的业务数据查询系统,所述系统包括:
[0030]请求类型确定模块,用于根据用户发送的业务处理请求,确定所述业务处理请求对应的请求类型;其中,所述请求类型包括数据变更类型和数据查询类型;
[0031]数据获取模块,用于在所述请求类型为所述数据变更类型的情况下,根据所述业务处理请求,从预设的原始数据库中获取所需的原始数据;其中,所述原始数据至少包括所述业务处理请求对应的数据库变更数据;
[0032]数据处理模块,用于对所述原始数据进行处理,得到处理后的目标数据,并对所述业务处理请求对应的业务数据处理逻辑进行重组,得到重组后的目标业务数据处理逻辑;
[0033]写入模块,用于根据所述目标业务数据处理逻辑,将所述目标数据写入至clickhouse数据库中;
[0034]查询模块,用于接收所述用户发送的业务数据查询请求,并对所述业务数据查询
请求中的指定业务数据查询请求进行合并,通过所述clickhouse数据库,获取所述业务数据查询请求对应的业务数据,并将所述业务数据返回至所述用户。
[0035]本申请实施例提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
[0036]根据用户发送的业务处理请求,确定所述业务处理请求对应的请求类型;其中,所述请求类型包括数据变更类型和数据查询类型;
[0037]在所述请求类型为所述数据变更类型的情况下,根据所述业务处理请求,从预设的原始数据库中获取所需的原始数据;其中,所述原始数据至少包括所述业务处理请求对应的数据库变更数据;
[0038]对所述原始数据进行处理,得到处理后的目标数据,并对所述业务处理请求对应的业务数据处理逻辑进行重组,得到重组后的目标业务数据处理逻辑;
[0039]根据所述目标业务数据处理逻辑,将所述目标数据写入至clickhouse数据库中;
[0040]接收所述用户发送的业务数据查询请求,并对所述业务数据查询请求中的指定业务数据查询请求进行合并,通过所述clickhouse数据库,获取所述业务数据查询请求对应的业务数据,并将所述业务数据返回至所述用户。
[0041]通过本申请提出的一种基于clickho本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于clickhouse数据库的业务数据查询方法,其特征在于,所述方法包括:根据用户发送的业务处理请求,确定所述业务处理请求对应的请求类型;其中,所述请求类型包括数据变更类型和数据查询类型;在所述请求类型为所述数据变更类型的情况下,根据所述业务处理请求,从预设的原始数据库中获取所需的原始数据;其中,所述原始数据至少包括所述业务处理请求对应的数据库变更数据;对所述原始数据进行处理,得到处理后的目标数据,并对所述业务处理请求对应的业务数据处理逻辑进行重组,得到重组后的目标业务数据处理逻辑;根据所述目标业务数据处理逻辑,将所述目标数据写入至clickhouse数据库中;接收所述用户发送的业务数据查询请求,并对所述业务数据查询请求中的指定业务数据查询请求进行合并,通过所述clickhouse数据库,获取所述业务数据查询请求对应的业务数据,并将所述业务数据返回至所述用户。2.根据权利要求1所述的一种基于clickhouse数据库的业务数据查询方法,其特征在于,根据所述业务处理请求,从预设的原始数据库中获取所需的原始数据之前,所述方法还包括:对所述clickhouse数据库进行初始化,以将所述原始数据库中的原始数据同步至所述clickhouse数据库中。3.根据权利要求1所述的一种基于clickhouse数据库的业务数据查询方法,其特征在于,对所述原始数据进行处理,得到处理后的目标数据,具体包括:对所述原始数据进行序列化处理,得到对应的原始数据序列;其中,所述原始数据序列中原始数据对应的数据格式至少包括以下任意一项或多项:JSON格式、字典格式;确定所述原始数据序列中各原始数据所在的原始数据表,以及所述原始数据表之间的关联关系,以根据所述关联关系,对所述原始数据序列进行整合和汇总,得到目标数据。4.根据权利要求1所述的一种基于clickhouse数据库的业务数据查询方法,其特征在于,对所述业务处理请求对应的业务数据处理逻辑进行重组,得到重组后的目标业务数据处理逻辑,具体包括:确定所述业务处理请求对应的业务数据处理逻辑类型;其中,所述业务数据处理逻辑类型至少包括业务数据增加逻辑、业务数据删除逻辑和业务数据更新逻辑;在所述业务数据处理逻辑类型为所述业务数据增加逻辑的情况下,对所述目标数据进行合并,以得到合并后的目标业务数据处理逻辑,实现所述目标数据的批量同步;在所述业务数据处理逻辑类型为所述业务数据删除逻辑或所述业务数据更新逻辑的情况下,将所述业务数据删除逻辑或所述业务数据更新逻辑转换为对应的业务数据增加逻辑,得到转换后的目标业务数据处理逻辑。5.根据权利要求1所述的一种基于clickhouse数据库的业务数据查询方法,其特征在于,对所述业务数据查询请求中的指定业务数据查询请求进行合并,具体包括:确定所述业务数据查询请求对应的请求时间;从所述业务数据查询请求中,筛选出请求时间相同的指定业务数据查询请求,并对所述指定业务数据查询请求进行合并。6.根据权利要求1所述的一种基于clickhouse数据库的业务数据查询方法,其特征在

【专利技术属性】
技术研发人员:孙宗亮赵海兴董晨晨黄浩
申请(专利权)人:浪潮卓数大数据产业发展有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1