一种数据库访问方法、装置、存储介质和计算机设备制造方法及图纸

技术编号:25890351 阅读:22 留言:0更新日期:2020-10-09 23:31
本发明专利技术提供了一种数据库访问方法、装置、存储介质和计算机设备。涉及计算机技术,解决了现有访问方式过程繁琐、访问效率低下、不能满足时序数据时效要求的问题。该方法包括:通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据;将所述时序数据转换为目标格式并输出。本发明专利技术提供的技术方案适用于实时数据管理,实现了简化高效的数据库访问机制。

【技术实现步骤摘要】
一种数据库访问方法、装置、存储介质和计算机设备
本专利技术涉及计算机技术,尤其涉及一种数据库访问方法、装置、存储介质和计算机设备。
技术介绍
时序数据库是存储基于时间点的实时数据,即时间序列数据,简称时序数据。其特点是每个数据测点所产生的实时数据比较单一且都带有时间标签。由于数据测点多且信息量大,在相同的时间点上即可产生成千上万的时序数据,也有可能达到上千万、上亿的级别。并需要实时且高效率高并发的读写大量的数据来为第三方系统服务,比如监控系统,需要汇总、分类、异常发现等等处理。现有的数据库访问方式原理如图1所示,由于数据库采用C语言编写,为了提供访问和写入数据库的效率,采用本地动态链接库方式(dll或so)对外提供数据的读写操作。当使用Java技术来读写时序数据时,需采用Java本地访问技术(JavaNativeAccess,即JNA)来访问本地动态链接库,然后再封装Java支持的数据访问模型,比如远程过程调用(RemoteProcedureCall,即RPC)来提供对外的数据网络访问服务,还有Restful方式通过将数据打包封装成标准的网络传输JSON格式。从中看出当访问时序数据库时,需经历数据库层、本地层、代理层、服务层这样四层架构,由于时序数据在经历每层的传输后,读写时序数据的效率势必逐层衰减。严重不能满足时序数据高吞吐、高并发、低延迟的一般需求。
技术实现思路
本专利技术旨在解决上面描述的问题。根据本专利技术的第一方面,提供了一种数据库访问方法,包括:通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据;将所述时序数据转换为目标格式并输出。优选的,通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据的步骤包括:读取至少一条原始数据中的必要字段信息;将所述必要字段信息填入所述统一代理层格式的数据对象,生成时序数据。优选的,将所述必要字段信息填入所述统一代理层格式的数据对象,生成时序数据的步骤包括:将动态内存划分给多个数据对象数组,各个所述数据对象数组的大小相同,每个数据对象数组中的一个数据对象对应一条原始数据;将读取的原始数据拆分成多个相同数量的序列,序列长度与所述数据对象数组的大小相同,每个序列对应一空闲的数据对象数组;读取各个序列内的原始数据中的必要字段信息,将所述必要字段信息填入统一代理层格式的所述数据对象,保存至对应的数据对象数组中。优选的,读取原始数据中的必要字段信息,将所述必要字段信息填入统一代理层格式的所述数据对象的步骤之后,还包括:在数据对象数组使用完毕后,清除所述数据对象数组中的内容,释放所述数据对象数组。优选的,将所述时序数据转换为目标格式并输出的步骤之前还包括:配置输出数据的目标格式。优选的,将所述时序数据转换为目标格式时,通过原生的内置JNA服务直接进行转换。根据本专利技术的另一方面,还提供了一种数据库访问装置,包括:统一代理模块,用于通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据;统一服务模块,用于将所述时序数据转换为目标格式并输出。8、根据权利要求7所述的数据库访问装置,其特征在于,所述统一代理模块包括:信息提取单元,用于读取至少一条原始数据中的必要字段信息;时序数据生成单元,用于将所述必要字段信息填入所述统一代理层格式的数据对象,生成时序数据。根据本专利技术的另一方面,还提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被执行时实现如下步骤:通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据;将所述时序数据转换为目标格式并输出。根据本专利技术的另一方面,还提供了一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据;将所述时序数据转换为目标格式并输出。本专利技术提供了一种数据库访问方法、装置、存储介质和计算机设备,通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据,将所述时序数据转换为目标格式并输出。解决了现有访问方式过程繁琐、访问效率低下、不能满足时序数据时效要求的问题,简化了数据库访问系统中代理层与服务层的结构,提高了数据库访问效率。参照附图来阅读对于示例性实施例的以下描述,本专利技术的其他特性特征和优点将变得清晰。附图说明并入到说明书中并且构成说明书的一部分的附图示出了本专利技术的实施例,并且与描述一起用于解释本专利技术的原理。在这些附图中,类似的附图标记用于表示类似的要素。下面描述中的附图是本专利技术的一些实施例,而不是全部实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他的附图。图1示例性地示出了现有的一种数据库访问系统的原理;图2示例性地示出了本专利技术的一实施例提供的一种数据库访问方法的流程;图3示例性地示出了图2中步骤201的流程;图4示例性地示出了图3中步骤302的流程;图5示例性地示出了本专利技术的实施例所提供的技术方案的实现原理;图6示例性地示出了本专利技术的一实施例提供的一种数据库访问装置的结构;图7示例性地示出了图6中统一代理模块601的结构;图8示例性地示出了本专利技术的一实施例提供的一种计算机设备的结构。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。现有时序数据库服务器端均基于C语言编写,但无法灵活方便的应对第三方系统,并提供持续的数据服务。当访问时序数据库时,需经历数据库层、本地层、代理层、服务层这样四层架构,由于时序数据在经历每层的传输后,读写时序数据的效率势必逐层衰减。严重不能满足时序数据高吞吐、高并发、低延迟的一般需求。为了解决上述问题,本专利技术的实施例提供了一种数据库访问方法、装置、存储介质和计算机设备,通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据,将所述时序数据转换为目标格式并输出。简化了数据库访问系统中代理层与服务层的结构,提高了数据库访问效率。通过Java技术提供高效快捷的读写时序数据库的方法,方便灵活的接入第三方系统,减少开发维护成本,提高工作效率。本专利技术的一实施例提供了一种数据库访问方法,使用该方法完成对时序数据的数据库访问的流程如图2所示,包括:步骤201、通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据本文档来自技高网...

【技术保护点】
1.一种数据库访问方法,其特征在于,包括:/n通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据;/n将所述时序数据转换为目标格式并输出。/n

【技术特征摘要】
1.一种数据库访问方法,其特征在于,包括:
通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据;
将所述时序数据转换为目标格式并输出。


2.根据权利要求1所述的数据库访问方法,其特征在于,通过标准代理服务读取数据库中的原始数据,生成统一代理层格式的时序数据的步骤包括:
读取至少一条原始数据中的必要字段信息;
将所述必要字段信息填入所述统一代理层格式的数据对象,生成时序数据。


3.根据权利要求2所述的数据库访问方法,其特征在于,将所述必要字段信息填入所述统一代理层格式的数据对象,生成时序数据的步骤包括:
将动态内存划分给多个数据对象数组,各个所述数据对象数组的大小相同,每个数据对象数组中的一个数据对象对应一条原始数据;
将读取的原始数据拆分成多个相同数量的序列,序列长度与所述数据对象数组的大小相同,每个序列对应一空闲的数据对象数组;
读取各个序列内的原始数据中的必要字段信息,将所述必要字段信息填入统一代理层格式的所述数据对象,保存至对应的数据对象数组中。


4.根据权利要求3所述的数据库访问方法,其特征在于,读取原始数据中的必要字段信息,将所述必要字段信息填入统一代理层格式的所述数据对象的步骤之后,还包括:
在数据对象数组使用完毕后,清除所述数据对象数组中的内容,释放所述数据对象数组。


5.根据权利要...

【专利技术属性】
技术研发人员:辜国强周国梁赵鹏
申请(专利权)人:北京数聚鑫云信息技术有限公司
类型:发明
国别省市:北京;11

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

1