掌桥专利:专业的专利平台
掌桥专利
首页

一种海量数据存储处理方法、系统、电子设备及存储介质

文献发布时间:2024-04-18 20:02:18


一种海量数据存储处理方法、系统、电子设备及存储介质

技术领域

本申请涉及数据存储技术领域,特别涉及一种海量数据存储处理方法、系统、电子设备及存储介质。

背景技术

目前,现有技术中通常是基于单一结构化数据库,例如MySQL数据库,进行表信息管理及创建来实现数据存储,存在以下技术问题:

1.存储限制问题:海量数据的数据存储需要定制大量存储字段,定制大量存储字段的数据存储对于单表增加及扩展有局限性,数据行存储于数据页中,当字段所占字节超过页大小时,只能拆表或者降低字段长度,增加了后续进行字段搜索的复杂程度和性能下降风险;

2.查询性能问题:对于体量大或者异构数据查询存在不便,IO开销及查询的性能下降。

基于上述技术问题,现有技术无法满足海量数据的数据存储要求。

发明内容

为了解决至少一个上述相关技术中存在的技术问题,本申请实施例提出了一种海量数据存储处理方法、系统、电子设备及存储介质,旨在满足海量数据的数据存储要求,解决海量数据的数据存储限制问题,提高数据存储的扩展性,提升数据查询效率。

一方面,本申请实施例提出了一种海量数据存储处理方法,所述方法包括以下步骤:

获取待存储数据;

获取第一数据库中存储的第一存储管理表信息和第二存储管理表信息;所述第一数据库为结构化数据库;

根据所述第一存储管理表信息和所述第二存储管理表信息,在第二数据库中同步构建多个存储数据表;所述第二数据库为非结构化数据库;

从多个所述存储数据表中确定所述待存储数据对应的目标存储数据表,将所述待存储数据存储至所述目标存储数据表中。

在一些实施例中,在执行所述获取第一数据库中存储的第一存储管理表信息和第二存储管理表信息这一步骤之前,所述方法还包括步骤:

在所述第一数据库中构建所述第一存储管理表和所述第二存储管理表;

获取表结构信息和所述表结构信息对应的字段信息;

将所述表结构信息写入至所述第一存储管理表中,获得所述第一存储管理表信息;

将所述第一存储管理表与所述第二存储管理表建立关联,根据所述第一存储管理表信息,将所述字段信息写入至所述第二存储管理表中,获得所述第二存储管理表信息。

在一些实施例中,所述方法还包括:

对所述第一存储管理表和所述第二存储管理表执行信息同步处理操作,同步更新所述第一存储管理表信息和所述第二存储管理表信息;

根据更新后的所述第一存储管理表信息和更新后的所述第二存储管理表信息,执行数据同步操作,同步更新所述第二数据库中的多个所述存储数据表。

在一些实施例中,所述信息同步处理操作包括信息同步添加操作、信息同步修改操作、信息同步删除操作和信息同步停用操作,所述对所述第一存储管理表和所述第二存储管理表执行信息同步处理操作,同步更新所述第一存储管理表信息和所述第二存储管理表信息这一步骤,具体包括:

当所述信息同步处理操作为所述信息同步添加操作时,获取预添加表结构信息和对应于所述预添加表结构信息的预添加字段信息,将所述预添加表结构信息写入至所述第一存储管理表中,将所述预添加字段信息写入至所述第二存储管理表中,更新所述第一存储管理表信息和所述第二存储管理表信息,获得信息同步添加后的第一存储管理表信息和第二存储管理表信息;

当所述信息同步处理操作为所述信息同步修改操作时,确定第一目标表结构信息和第一目标字段信息,同步修改所述第一目标表结构信息和所述第一目标字段信息,获得信息同步修改后的第一存储管理表信息和第二存储管理表信息;所述第一目标表结构信息为所述第一存储管理表信息中预进行信息修改的所述表结构信息;所述第一目标字段信息为所述第二存储管理表信息中与所述第一目标表结构信息关联的字段信息;

当所述信息同步处理操作为所述信息同步停用操作时,确定第二目标表结构信息和第二目标字段信息,在所述第一存储管理表中停用所述第二目标表结构信息,并将所述第二目标表结构信息的信息状态设置为已停用,在所述第二存储管理表中停用所述第二目标字段信息,并将所述第二目标表结构信息的信息状态设置为已停用;所述第二目标表结构信息为所述第一存储管理表信息中已完成信息停用的所述表结构信息;所述第二目标字段信息为所述第二存储管理表信息中与所述第二目标表结构信息关联的字段信息;

当所述信息同步处理操作为所述信息同步删除操作时,确定第三目标表结构信息和第三目标字段信息,在所述第一存储管理表中删除所述第三目标表结构信息,在所述第二存储管理表中删除所述第三目标字段信息;所述第二目标表结构信息为所述第一存储管理表信息中预进行信息删除的所述表结构信息;所述第二目标字段信息为所述第二存储管理表信息中与所述第三目标表结构信息关联的字段信息。

在一些实施例中,所述方法还包括:

对所述第二数据库执行信息搜索处理操作,同步查询第四目标字段信息、第四目标表结构信息以及目标存储数据,对所述目标存储数据执行数据处理相关操作;所述第四目标字段结构为所述第二存储管理表信息中被查询的所述字段信息;所述第四目标表结构信息为所述第一存储管理表信息中与所述第四目标字段信息关联的所述第四目标表结构信息。

在一些实施例中,所述对所述第二数据库执行信息搜索处理操作,同步查询第四目标字段信息、第四目标表结构信息以及目标存储数据,对所述目标存储数据执行数据处理相关操作这一步骤,具体包括:

对所述第二数据库执行信息搜索处理操作,获取信息筛选条件;

针对所述第一存储管理表、所述第二存储管理表和所述第二数据库中的各所述存储数据表,执行信息筛选操作,根据所述信息筛选条件,确定所述第四目标字段信息、所述第四目标表结构信息和所述目标存储数据;

对所述目标存储数据执行数据处理相关操作;所述数据处理相关操作至少包括数据修改操作和数据删除操作。

在一些实施例中,所述第一存储管理表信息包括多个实体表信息,所述第二存储管理表信息包括各所述实体表信息对应的字段信息,所述根据所述第一存储管理表信息和所述第二存储管理表信息,在第二数据库中同步构建多个存储数据表这一步骤,具体包括:

根据所述第一存储管理表信息中包含的各所述实体表信息和所述第二存储管理表信息中包含的各所述实体表信息对应的字段信息,确定各所述存储数据表的具体表结构信息;

根据各所述存储数据表的具体表结构信息,在所述第二数据库中构建各所述存储数据表。

另一方面,本申请实施例提出了一种海量数据存储处理系统,所述系统包括:

第一模块,用于获取待存储数据;

第二模块,用于获取第一数据库中存储的第一存储管理表信息和第二存储管理表信息;所述第一数据库为结构化数据库;

第三模块,用于根据所述第一存储管理表信息和所述第二存储管理表信息,在第二数据库中同步构建多个存储数据表;所述第二数据库为非结构化数据库;

第四模块,用于从多个所述存储数据表中确定所述待存储数据对应的目标存储数据表,将所述待存储数据存储至所述目标存储数据表中。

另一方面,本申请实施例提出了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现前面所述的海量数据存储处理方法。

还有一方面,本申请实施例提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现前面所述的海量数据存储处理方法。

本申请提供的一种海量数据存储处理方法、系统、电子设备及存储介质,其通过获取第一数据库中存储的第一存储管理表信息和第二存储管理表信息,根据第一存储管理表信息和第二存储管理表信息,在第二数据库中同步构建多个存储数据表,将待存储数据存储至目标存储数据表中。本申请能够结合结构化数据库和非结构化数据库进行海量数据的数据存储处理,满足海量数据的数据存储要求,解决海量数据存储限制问题,提高数据存储的扩展性,提升数据查询效率。

附图说明

图1是本申请实施例提供的一种海量数据存储处理方法的流程图;

图2(a)是本申请实施例中对第一存储管理表和第二存储管理表执行信息同步添加操作的示意图;

图2(b)是本申请实施例中对第一存储管理表和第二存储管理表执行信息同步添加操作的另一示意图;

图3是本申请实施例中在第二数据库中同步构建多个存储数据表的示意图;

图4是本申请实施例提供的一种海量数据存储处理系统的结构示意图;

图5是本申请实施例提供的一种电子设备的硬件结构示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。

需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

首先,对本申请中涉及的若干名词进行解析:

MySQL:MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性;MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择MySQL作为网站数据库。

Mongodb:MongoDB是一个基于分布式文件存储的数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

目前,现有技术中通常是基于单一结构化数据库,例如MySQL数据库,进行表信息管理及创建来实现数据存储,处理流程如下:

1、表名配置写入结构化MySQL数据库的plm_dynamic_entity表数据行中;

2、表字段配置写入结构化MySQL数据库的plm_dynamic_field表数据行中;

3、实体表创建时先查询plm_dynamic_entity表中表名数据信息,根据表名信息关联查询plm_dynamic_field表中具体字段信息、索引信息、主键信息,组装拼成表创建语句,在结构化mysql数据库执行表创建语句;

4、实体表数据存储逻辑,根据表名查询plm_dynamic_field表中配置的所有数据表字段并显示数据录入界面,数据提交根据plm_dynamic_field表中配置字段拼装为实体表插入语句,数据进行插入,同时实现修改及删除逻辑;

5、实体表查询逻辑,根据待查询业务表名、字段查询plm_dynamic_field表中数据是否存在,不存在提示暂无数据;存在根据表名、字段名查询实现表,并用待查询字段为条件进行数据查询返回显示数据。

上述基于单一结构化数据库实现数据存储的现有技术,存在以下不足之处:

1、查询性能问题,结构化数据库MySQL采用行的形式存储数据,数据以行的形式存储在磁盘或者内存数据页中,每张表由多个行组成,每行包含不同列,表的列是按顺序存储在行中,每列对应一个值。当执行查询操作时,数据库接受到查询查询请求并解析查询条伯,根据查询条件选择最合适的索引,便于确定搜索的数据范围,没有合适的索引时,数据库可能进行全表扫描找到符合条件的数据。数据读取时在索引定位到匹配键值对时,数据库获取包含该行数据的物理位置信息,数据库从磁盘或者内存中获取相应行数据,并将其加载到内存中进行数据返回处理。数据库返回数据时将读取到的行数据根据查询语句的要求进行处理,结果可以是单行或者多行集合,包含所需行数据或列数据,具体根据查询语句选择,返回满足结果集给查询者,总之整个数据存储与搜索包括数据的物理存储、索引处理、数据读取及结果返回等步骤,对于体量大或者异构数据查询存在不便,IO开销及查询的性能下降。

2、存储限制问题:定制过多存储字段的数据存储对于单表增加及扩展有局限性,数据行存储于数据页中,当字段所占字节超过页大小时,只能拆表或者降低字段长度,增加了后续进行字段搜索的复杂程度和性能下降风险。过多存储字段存储在同一张表容易存在异构数据,不同业务数据列不同,结构化数据存储处理会导致非常多冗余字段的出现。

基于上述技术问题,现有的数据存储处理技术无法满足定制过多存储字段的数据存储要求。

基于此,本申请实施例提出了一种海量数据存储处理方法、系统、电子设备及存储介质,旨在满足海量数据的数据存储要求,解决海量数据的数据存储限制问题,提高数据存储的扩展性,提升数据查询效率。

参照图1,图1是本申请实施例提供的一种海量数据存储处理方法的一个可选的流程图,该方法可以包括但不限于包括步骤S101至步骤S104:

步骤S101,获取待存储数据;

步骤S102,获取第一数据库中存储的第一存储管理表信息和第二存储管理表信息;第一数据库为结构化数据库;

步骤S103,根据第一存储管理表信息和第二存储管理表信息,在第二数据库中同步构建多个存储数据表;第二数据库为非结构化数据库;

步骤S104,从多个存储数据表中确定待存储数据对应的目标存储数据表,将待存储数据存储至目标存储数据表中。

在一些实施例中,可选地,上述第一数据库为MySQL数据库,上述第二数据库为Mongodb数据库,第一数据库不用于存储具体数据,用于存储表结构信息和对应的字段信息,第二数据库用于根据第一数据库中存储的表结构信息和对应的字段信息,创建多个存储数据表来存储具体数据。

本申请实施例提供的一种海量数据存储处理方法,其通过使用结构化数据库MySQL管理表结构信息,用非结构化的文档数据库Mongodb用于处理实体表及表数据(字段信息),Mongodb数据是文档的形式存储在数据库中,每个文档是一个键值对的集合,它的文档模型可以减少数据关联和连接操作,文件使用二进制json格式数据结构来存储数据,适合处理大量非结构化或半结构化数据的场景,具有横向扩展能力,适合大规模数据存储和高吞吐量的写操作特性,同时采用灵活的模式设计,允许在一个集合中存储具有不同结构的文档,每个文档可以包含任意数量的字段(列),并且这些字段可以是不同的类型,这种灵活性使得Mongodb数据库适用于处理具有变化或动态结构的数据。

在一些实施例中,在执行步骤S102之前,还可以包括但不限于包括步骤S201至步骤S204:

步骤S201,在第一数据库中构建第一存储管理表和第二存储管理表;

步骤S202,获取表结构信息和表结构信息对应的字段信息;

步骤S203,将表结构信息写入至第一存储管理表中,获得第一存储管理表信息;

步骤S204,将第一存储管理表与第二存储管理表建立关联,根据第一存储管理表信息,将字段信息写入至第二存储管理表中,获得第二存储管理表信息。

在一些实施例的步骤S201至步骤S204中,具体地,通过第一存储管理表管理数据库用于存储特定类型数据的结构化表名信息,该表的关键字段包括模板名、主键ID、表名称、表状态、表类型、表描述字段信息;通过第二存储管理表管理第一存储管理表信息中表的具体属性字段(字段信息),关键字段包括主键ID、关联第一存储管理表中的ID、字段名、字段中文、字段描述、字段类型、属性类型、字段长度、小数点位、字段排序值、字段默认值、是否主键、允许为空,第二存储管理表为第一存储管理表的子关联表。

利用MySQL数据库的特点,可以不断增加行数据以扩展第一存储管理表和第二存储管理表。

示例性地,第一存储管理表信息中的其中一行数据(表结构信息)为模板名:1、主键ID:2、表名称:XX、表状态:启用、表描述字段信息:字段A至字段E的描述信息,则该行数据对应的字段信息包括字段A至字段E的具体字段信息,建立关联,将字段A至字段E的具体字段信息都与第一存储管理表中的主键ID进行关联,获得字段关联ID(第一存储管理表中的主键ID),然后将字段关联ID与字段A至字段E的具体字段信息都配对写入第二存储管理表,其中在第二存储管理表中字段A对应的一行数据为主键ID:10、关联第一存储管理表中的ID:2、字段名:字段A名字、字段中文:字段A中文、字段描述:字段A描述信息、字段类型:字段A类型、属性类型:字段A属性类型、字段长度:字段A长度、小数点位::字段A小数点位、字段排序值:字段A属性类型、字段默认值:1、是否主键:否、允许为空:允许。

在一些实施例中,上述方法还可以包括但不限于包括步骤S301至步骤S302:

步骤S301,对第一存储管理表和第二存储管理表执行信息同步处理操作,同步更新第一存储管理表信息和第二存储管理表信息;

步骤S302,根据更新后的第一存储管理表信息和更新后的第二存储管理表信息,执行数据同步操作,同步更新第二数据库中的多个存储数据表。

在一些实施例中,第二数据库为第一存储管理表与第二存储管理表维护的具体表实例化存储和维护数据的库,负责记录第一存储管理表中各表的详细数据,由实体模型管理功能进行表同步操作,实现第一存储管理表和第二存储管理表的修改同步到第二数据库中对应的表,第二数据库中对存储数据表的表数据相关操作不会影响下第一存储管理表信息和第二存储管理表信息。

在一些实施例中,信息同步处理操作包括信息同步添加操作、信息同步修改操作、信息同步删除操作和信息同步停用操作,步骤S301可以包括但不限于包括步骤S401至步骤S404:

步骤S401,当信息同步处理操作为信息同步添加操作时,获取预添加表结构信息和对应于预添加表结构信息的预添加字段信息,将预添加表结构信息写入至第一存储管理表中,将预添加字段信息写入至第二存储管理表中,更新第一存储管理表信息和第二存储管理表信息,获得信息同步添加后的第一存储管理表信息和第二存储管理表信息;

步骤S402,当信息同步处理操作为信息同步修改操作时,确定第一目标表结构信息和第一目标字段信息,同步修改第一目标表结构信息和第一目标字段信息,获得信息同步修改后的第一存储管理表信息和第二存储管理表信息;第一目标表结构信息为第一存储管理表信息中预进行信息修改的表结构信息;第一目标字段信息为第二存储管理表信息中与第一目标表结构信息关联的字段信息;

步骤S403,当信息同步处理操作为信息同步停用操作时,确定第二目标表结构信息和第二目标字段信息,在第一存储管理表中停用第二目标表结构信息,并将第二目标表结构信息的信息状态设置为已停用,在第二存储管理表中停用第二目标字段信息,并将第二目标表结构信息的信息状态设置为已停用;第二目标表结构信息为第一存储管理表信息中已完成信息停用的表结构信息;第二目标字段信息为第二存储管理表信息中与第二目标表结构信息关联的字段信息;

步骤S404,当信息同步处理操作为信息同步删除操作时,确定第三目标表结构信息和第三目标字段信息,在第一存储管理表中删除第三目标表结构信息,在第二存储管理表中删除第三目标字段信息;第二目标表结构信息为第一存储管理表信息中预进行信息删除的表结构信息;第二目标字段信息为第二存储管理表信息中与第三目标表结构信息关联的字段信息。

在一些实施例中,海量数据存储和相关的搜索处理通过实体模型管理功能实现,实体模型管理功能包括对第一存储管理表与第二存储管理表的信息新增、修改、停用、删除、查询及表同步操作,通过实体模型管理功能分别操作第一数据库与第二数据库。

在一些实施例的步骤S401中,示例性地,连接第一数据库,通过实体模型管理功能添加第二存储管理表信息时需要同步添加第二存储管理表信息,参照图2(a)和图2(b),图2(a)和图2(b)是本申请实施例中对第一存储管理表和第二存储管理表执行信息同步添加操作的可选的示意图,其中,参照图2(a),通过实体模型管理功能配置预添加表结构信息,预添加表结构信息包括模板名称、表名称、表描述、表类型和数据源等信息;参照图2(b),通过实体模型管理功能配置对应的预添加字段信息,预添加字段信息包括序号、中文名称、字段名称、字段描述、字段类型、属性信息、字段长度、小数点位、是否主键、允许空值、默认值等信息,需要补充字段信息可以通过预设的新增按钮增加,然后提交数据进行处理,预添加表结构信息通过业务逻辑处理生成数据插入至第一存储管理表中,同时自动生成预添加表结构信息的主键ID,预添加字段信息通过业务逻辑处理生成数据插入至第二存储管理表中,同时该预添加字段信息自动与第一存储管理表中对应表结构信息的主键ID(上述预添加表结构信息的主键ID)形成关联。

在一些实施例的步骤S402中,可选地,连接第一数据库,获取第一存储管理表、第二存储管理表的字段,判断第一存储管理表中字段基本信息包含的表状态字段值,表状态字段值为2未同步或3已同步,在第二存储管理表中对应于表状态字段值为3已同步的字段信息不可删除和修改,在第二存储管理表中对应于表状态字段值为3未同步的字段信息可以删除和修改。通过实体模型管理功能可以选择修改第一存储管理表中的属性模板名、表描述等信息,通过实体模型管理功能在第二存储管理表可以选择修改字段名称、描述、类型、长度、小数点、空值、小数点等信息,提交修改后的数据时通过业务逻辑处理生成数据修改语句,同步修改第一存储管理表与第二存储管理表的信息。

在一些实施例中,上述方法还包括步骤S501:

步骤S501,对第二数据库执行信息搜索处理操作,同步查询第四目标字段信息、第四目标表结构信息以及目标存储数据,对目标存储数据执行数据处理相关操作;第四目标字段结构为第二存储管理表信息中被查询的字段信息;第四目标表结构信息为第一存储管理表信息中与第四目标字段信息关联的第四目标表结构信息。

在一些实施例中,步骤S501可以包括但不限于包括步骤S601至步骤S602:

步骤S601,对第二数据库执行信息搜索处理操作,获取信息筛选条件;

步骤S602,针对第一存储管理表、第二存储管理表和第二数据库中的各存储数据表,执行信息筛选操作,根据信息筛选条件,确定第四目标字段信息、第四目标表结构信息和目标存储数据;

步骤S603,对目标存储数据执行数据处理相关操作;数据处理相关操作至少包括数据修改操作和数据删除操作。

在一些实施例的步骤S601至步骤S603中,可选地,执行信息搜索处理操作,获取信息筛选条件,例如{"col1":value1},其中,col1为字段属性类型,value1为字段属性具体值,首先根据信息筛选条件查询第一数据库中第一存储管理表信息及第二存储管理表信息中的字段属性数据,判断信息筛选条件中包含的value1数据对应的预筛选字段数据是否为第一存储管理表与第二存储管理表中已经关联的数据,若预筛选字段数据为非关联数据,提示数据不存在,若预筛选字段数据为关联数据,确定第四目标字段信息和第四目标表结构信息,连接第二数据库,根据第四目标字段信息和第四目标表结构信息,在第二数据库中的各存储数据表进行筛选,确定目标存储数据,然后对目标存储数据进行数据修改操作或数据删除操作。

在一些实施例中,第一存储管理表信息包括多个实体表信息,第二存储管理表信息包括各实体表信息对应的字段信息,步骤S103可以包括但不限于包括步骤S701至步骤S702:

步骤S701,根据第一存储管理表信息中包含的各实体表信息和第二存储管理表信息中包含的各实体表信息对应的字段信息,确定各存储数据表的具体表结构信息;

步骤S702,根据各存储数据表的具体表结构信息,在第二数据库中构建各存储数据表。

在一些实施例中,参照图3,图3是本申请实施例中在第二数据库中同步构建多个存储数据表的一个可选的示意图,其中,在MySQL数据库中存储建立关联的第一存储管理表和第二存储管理表,第一存储管理表中存储了多个存储数据表的实体表信息(包括表基础信息和表ID),第二存储管理表存储了各实体表信息对应的字段信息和与各字段关联的第一存储管理表中的表ID(字段关联ID),根据第一存储管理表信息和第二存储管理表信息,执行数据同步操作,在Mongodb数据库中构建多个存储数据表,存储数据表用于存储具体的数据,存储数据表1的表名1为与第一存储管理表信息中表ID1对应的表名,ID1通过Mongodb自动生成。

在一些实施例中,本申请实施例提供的一种海量数据存储处理方法,其通过第一数据库中的第一存储管理表和第二存储管理表动态管理数据库表及字段信息,第二存储管理表将列数据管理转为行数据管理,提升属性列扩展,同步创建多个存储数据表至到第二数据库,通过非结构化数据库存储及管理数据,改进了使用单一的结构化数据库的不足之处。

本申请实施例提供的一种海量数据存储处理方法,具有以下优点:

1、数据库表及其字段灵活创建,根据实际需求,灵活地定义数据结构,自由添加、删除或者修改存储字段信息,可以灵活定制存储字段,以适应不断变化的数据要求,从而创建与业务逻辑和流程完全匹配的数据结构。自由创建数据库表和字段能够轻松扩展和调整数据模型,确保一致性,可以定义字段的数据类型、长度、约束和关联关系,以提高数据的完整性和准确性。

2、数据表字段无限制创建。通过无限制创建数据表字段,可以根据具体需求自定义数据结构轻松适应不断变化的业务需求。无限制创建数据表字段能力使得系统具备良好的可扩展性,实现更细致的数据表示,从而提供更全面和准确的数据视图。同时可以轻松与其它系统或数据库进行集成,这种灵活性实现了无缝的数据交换和互操作性,提高了数据管理流程的整体效率。

3、数据表字段查询效率提升。将表名和表结构等信息存储在结构化数据库MySQL,并将具体的存储数据表和存储数据存储在非结构化数据库Mongodb中。Mongodb使用了索引和查询优化技术,以提供高性能的数据查询操作,支持丰富的查询操作和条件表达式,以满足特定的数据检索需求,可以使用查询操作符进行条件过滤、范围查询、模糊匹配等操作,还可以使用聚合管道对数据进行分组、排序、聚合计算等操作,同时支持实时查询和实时更新,即使在数据写入的同时也可以进行查询操作,以支持实时决策和业务需求。

参照图4,图4是本申请实施例提供的一种海量数据存储处理系统的一个可选的结构示意图,该系统包括:

第一模块,用于获取待存储数据;

第二模块,用于获取第一数据库中存储的第一存储管理表信息和第二存储管理表信息;第一数据库为结构化数据库;

第三模块,用于根据第一存储管理表信息和第二存储管理表信息,在第二数据库中同步构建多个存储数据表;第二数据库为非结构化数据库;

第四模块,用于从多个存储数据表中确定待存储数据对应的目标存储数据表,将待存储数据存储至目标存储数据表中。

该海量数据存储处理系统的具体实施方式与上述海量数据存储处理方法的具体实施例基本相同,在此不再赘述。

本申请实施例还提供了一种电子设备,电子设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述海量数据存储处理方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。

请参阅图5,图5示意了另一实施例的电子设备的硬件结构,电子设备包括:

处理器901,可以采用通用的CPU(CentralProcessingUnit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;

存储器902,可以采用只读存储器(ReadOnlyMemory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(RandomAccessMemory,RAM)等形式实现。存储器902可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器902中,并由处理器901来调用执行本申请实施例的海量数据存储处理方法;

输入/输出接口903,用于实现信息输入及输出;

通信接口904,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;

总线905,在设备的各个组件(例如处理器901、存储器902、输入/输出接口903和通信接口904)之间传输信息;

其中处理器901、存储器902、输入/输出接口903和通信接口904通过总线905实现彼此之间在设备内部的通信连接。

本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述海量数据存储处理方法。

存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

本申请实施例提供的一种海量数据存储处理方法、系统、电子设备及存储介质,其通过获取第一数据库中存储的第一存储管理表信息和第二存储管理表信息,根据第一存储管理表信息和第二存储管理表信息,在第二数据库中同步构建多个存储数据表,将待存储数据存储至目标存储数据表中。本申请能够结合结构化数据库和非结构化数据库进行海量数据的数据存储处理,满足海量数据的数据存储要求,解决海量数据存储限制问题,提高数据存储的扩展性,提升数据查询效率。

本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。

本领域技术人员可以理解的是,图中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。

以上参照附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。

相关技术
  • 海量数据存储方法、装置、存储介质及电子设备
  • 一种日志处理方法、系统及电子设备和存储介质
  • 一种数据存储系统、数据处理方法、电子设备和存储介质
  • 一种数据存储系统、数据处理方法、电子设备和存储介质
技术分类

06120116585806