JDBC制造技术

技术编号:39493425 阅读:7 留言:0更新日期:2023-11-24 11:19
本申请涉及金融科技领域,公开了一种

【技术实现步骤摘要】
JDBC层数据的存储方法、系统、装置、设备及介质


[0001]本申请涉及数据库及金融科技
,尤其涉及一种
JDBC
层数据的存储方法

系统

装置

设备及介质


技术介绍

[0002]当今的数据处理主要集中于空间占用,单次查询量

降低
IO
频次等

由于开发者水平不一,导致数据的使用和管理不能得到一致性较好解决

目前,对于量大的查询,习惯性会采用语言内置的存储结构进行存储

而原生内置的存储结构在存储上并未考虑数据对内存的占用以及
IO
使用次数

大量数据查询时必然会多次使用
IO
来获取数据,严重时可能带来内存溢出的风险

[0003]虽然有着一些优秀数据处理程序的出现,但这些程序并未从源头解决问题,而是从使用层和通讯层来解决问题,但本质上都是使用原生内置的数据结构,因此依然还是避免不了大量数据查询带来的影响

[0004]在
JAVA
领域也存在着一种技术
JDBC
,它是与数据库交互的门面且每天处理着大量数据,然而它的数据处理,它还是使用原生对象结构的方式来存储数据,这种做法的好处在于类型明确,简单易懂,但缺点是由于
JDBC
对内部处理代码的封闭性,开发者不能方便的操作数据,每次都要将内部数据以其它结构形式复制一份

对内存空间而言相当于是被动的占双份,且无法在单次查询中获取更多数据,被动的增加
IO
次数,严重时可能会导致内存告警

尤其在金融科技领域,例如银行

保险等行业,数据查询量巨大,对于内存占用情况更加严峻


技术实现思路

[0005]本申请的主要目的在于提供一种
JDBC
层数据的存储方法

系统

装置

设备及介质,可以解决现有技术中的
JDBC
层数据大量占用内存的技术问题

[0006]为实现上述目的,本申请第一方面提供一种
JDBC
层数据的存储方法,该方法包括:
[0007]响应待查询语句,从数据库中读取数据;
[0008]对从数据库中读取到的目标数据进行拦截;
[0009]若检测到数据读取完成,则断开与数据库的连接;
[0010]若读取到的目标数据的数据总量超过第一数量阈值,则对目标数据进行压缩重组后

以可供应用层使用的存储形式存储

[0011]为实现上述目的,本申请第二方面提供一种
JDBC
层数据的存储装置,该装置包括:
[0012]读取模块,用于响应待查询语句,从数据库中读取数据;
[0013]拦截模块,用于对从数据库中读取到的目标数据进行拦截;
[0014]连接断开模块,用于若检测到数据读取完成,则断开与数据库的连接;
[0015]存储模块,用于若读取到的目标数据的数据总量超过第一数量阈值,则对目标数据进行压缩重组后

以可供应用层使用的存储形式存储

[0016]为实现上述目的,本申请第三方面提供一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
[0017]响应待查询语句,从数据库中读取数据;
[0018]对从数据库中读取到的目标数据进行拦截;
[0019]若检测到数据读取完成,则断开与数据库的连接;
[0020]若读取到的目标数据的数据总量超过第一数量阈值,则对目标数据进行压缩重组后

以可供应用层使用的存储形式存储

[0021]为实现上述目的,本申请第四方面提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
[0022]响应待查询语句,从数据库中读取数据;
[0023]对从数据库中读取到的目标数据进行拦截;
[0024]若检测到数据读取完成,则断开与数据库的连接;
[0025]若读取到的目标数据的数据总量超过第一数量阈值,则对目标数据进行压缩重组后

以可供应用层使用的存储形式存储

[0026]采用本申请实施例,具有如下有益效果:
[0027]本申请在保持
JDBC
驱动程序原有功能基础上,扩展了
JDBC
驱动程序可以容纳更多数据且空间占用小的功能

对从数据库中读取到的目标数据进行拦截,在拦截到的总数据量超过第一数量阈值的情况下,基于分析与压缩技术对目标数据进行压缩重组后

以可供应用层使用的存储形式存储,可以有效降低
JDBC
层数据对内存的无效占用和浪费,提高内存可用空间,提升单次可查询的数据量,进而降低
IO
频次,提高了数据查询的效率

尤其在金融科技领域,例如对于银行

保险等行业中的大数据系统

监控系统

计算系统等数据量庞大的系统的数据的查询,可以有效降低
JDBC
层数据对内存的占用,降低
IO
次数,以少量
IO
查询获取大量数据,不仅可以提升系统性能,还可以减少不必要的关联数据,对大数据系统起到如虎添翼的作用

附图说明
[0028]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图

[0029]其中:
[0030]图1为本申请实施例中
JDBC
层的数据存储方法的应用环境图;
[0031]图2为本申请实施例中
JDBC
层的数据存储方法的流程图;
[0032]图3为本申请实施例中
AST
抽象语法树的示意图;
[0033]图4为本申请实施例中
JDBC
层的数据存储系统的结构图;
[0034]图5为本申请实施例中
JDBC
层的数据存储装置的结构框图;
[0035]图6为本申请实施例中计算机设备的结构框图

具体实施方式
[0036]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚

完整地描述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种
JDBC
层数据的存储方法,其特征在于,所述方法包括:响应待查询语句,从数据库中读取数据;对从数据库中读取到的目标数据进行拦截;若检测到数据读取完成,则断开与数据库的连接;若读取到的目标数据的数据总量超过第一数量阈值,则对所述目标数据进行压缩重组后

以可供应用层使用的存储形式存储
。2.
根据权利要求1所述的方法,其特征在于,在断开与数据库的连接之前,所述方法还包括:对拦截到的目标数据进行初步分析,得到初步分析结果,其中,所述初步分析结果用于指示所述目标数据中是否存在可压缩数据和
/
或重复数据;所述对所述目标数据进行压缩重组后

以可供应用层使用的存储形式存储,包括:根据所述目标数据的字节序和所述初步分析结果,对所述目标数据的关键属性进行分析,确定所述目标数据中可高效压缩的数据

可普通压缩的数据

不可压缩的数据,其中,所述关键属性包括数据是否重复

顺序数据的正反顺序

数据相似度;对所述目标数据中可高效压缩的数据进行第一数据处理后进行压缩保存,并记录第一数据处理详情,其中,所述第一数据处理包括合并

去重

拆分重组

数据类型转换中的至少一种;对所述目标数据中可普通压缩的数据进行压缩保存
。3.
根据权利要求2所述的方法,其特征在于,所述可高效压缩的数据包括高相似度数据

重复数据

特殊类型数据和顺序数据;所述对所述目标数据中可高效压缩的数据进行第一数据处理后进行压缩保存,并记录第一数据处理详情,包括:记录高相似度数据中行数据相同的重复行号

列数据相同的重复列号以及字段类型,对所述高相似度数据去重

合并

重组后对不重复数据进行压缩存储;记录重复数据中值相同的重复数据的行号和列号以及字段类型,对所述重复数据去重

合并

重组后对不重复数据进行压缩存储;将特殊类型数据转换为占用内存更小的其他数据类型数据后存储;记录顺序数据的起始值

终止值和长度后进行重组保存,将重组保存后的数据以
List
结构或
ZipList
结构进行保存
。4.
根据权利要求1所述的方法,其特征在于,若检测到数据读取完成,则断开与数据库的连接,包括:统计响应所述待查询语句之后获取到的目标数据的累计数据量;若所述累计数据量超过第二数量阈值,则判定数据读取完成,断开与...

【专利技术属性】
技术研发人员:杜杨
申请(专利权)人:平安银行股份有限公司
类型:发明
国别省市:

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

1