基于编码查询方式的数据库构建方法及其应用与流程

文档序号:32501117发布日期:2022-12-10 05:28阅读:29来源:国知局
基于编码查询方式的数据库构建方法及其应用与流程

1.本技术涉及数据库技术领域,特别是一种涉及基于编码查询方式的数据库构建方法及其应用。


背景技术:

2.随着现代社会的不断发展,网络的应用越来越广泛,相应的通过网络传输的数据也越来越多。为了对这些数据进行处理、加以利用,通常会将数据保存在数据库中,为了分析用户行为、为了网络的测量和优化、为了进行审计都可能会将网络数据保存在数据库中。尤其是在涉及城市大脑和城市治理技术领域中,数据量将更为庞大,往往会涉及一个城市内多个维度的数据,且多个数据之间往往会存在关联关系,这会导致数据库中存储大量数据,在数据检索或查询时,往往会浪费掉很多的算力,且查询与检索速率慢,导致用户等待时长增加。
3.然而传统技术中,在数据库进行检索与查询时,往往是输入关键词,然后基于关键词对数据进行提取或排序,在关键词横跨多个维度时,会进一步增加相应时长,以查询城市维度工资收入数据库为例检索目标为“男浙江人收入”该检索关键词包括了男、浙江人和收入三个维度的数据,在检索过程中,需要逐一历遍数据库内所有的数据,然后对包含有上述三个维度的数据进行提取,获取初步的查询的数据库,进一步再分析初步的查询数据库才能够获得查询结果,导致查询时间长,算力消耗大。
4.由此可见,由于网络数据的数据量大,并且变化可能也较多,因此需要一个大容量易扩展的数据库进行存储。同时,对于各种需要对数据库进行查询的应用而言,对于大容量数据库的快速查询也是非常重要的。为此亟待基于编码查询方式的数据库构建方法及其应用以解决上述问题。


技术实现要素:

5.本技术实施例提供了基于编码查询方式的数据库构建方法及其应用,针对目前技术存在的计算资源消耗大以及数据量大等问题。
6.本发明核心技术主要是包括三个方向:1数据库的建立;2数据库的扩容;3数据库的查询。
7.第一方面,本技术提供了基于编码查询方式的数据库构建方法,所述方法包括以下步骤:s00、遍历原始数据并进行解析,以获取原始数据中每个数据的维度关键词;s01、对每个维度关键词进行编码,以使得编码与维度关键词一一对应关联;s02、以维度关键词之间的映射关系,构建数据库的映射网格关系;s03、以编码与维度关键词之间的对应关系,修正数据库的映射网格关系并确定数据库的数据集存储方式;s04、基于数据库的数据集存储方式的结构构建查询密钥;
其中查询密钥由每个维度关键词对应的编码组成;s05、将原始数据以确定的数据集存储方式存储于数据库中。
8.进一步地,还包括用于对数据库扩容的步骤,具体包括以下步骤:s10、接收并解析数据库需要存储的扩容数据,以获得扩容数据的扩容维度关键词;s11、将扩容维度关键词与数据库中原有的维度关键词进行比对,以获得两者之间的差异;s12、判断两者之间的差异大小;s13、若差异大于阈值,则将扩容维度关键词进行编码,以构建新的编码,并以新的编码与扩容维度关键词之间的对应关系并更新数据库的数据集存储方式,同时更新查询密钥,使扩容数据以更新后的数据集存储方式存入数据库中,完成扩容;若差异小于等于阈值,则将扩容维度关键词整合入原有的维度关键词中,使扩容数据以原有的数据集存储放入存入数据库中,完成扩容。
9.进一步地,还包括用于对数据库查询的步骤,具体包括以下步骤:s20、接收并解析输入的查询密钥,以获取查询密钥中包含的维度关键词;s21、基于获取到的维度关键词确认对应的查询编码;其中查询编码为查询用的编码;s22、根据查询编码提取数据库中与查询编码相关的数据。
10.进一步地,步骤s00中,每个维度关键词均输出,以供用户预览审阅,并接受用户的修改或删除或新增。
11.进一步地,还包括步骤s06、基于机器学习提取维度关键词。
12.进一步地,步骤s01中,以数字形式对每个维度关键词进行编码。
13.进一步地,步骤s02中,对能够上位概括的维度关键词进行上位,以得到上位维度关键词,以使得下位的维度关键词与上位维度关键词之间形成映射关系。
14.第二方面,本技术提供了一种基于编码查询方式的数据库查询扩容装置,包括:建立模块,用于遍历原始数据并进行解析,以获取原始数据中每个数据的维度关键词;对每个维度关键词进行编码,以使得编码与维度关键词一一对应关联;以维度关键词之间的映射关系,构建数据库的映射网格关系;以编码与维度关键词之间的对应关系,修正数据库的映射网格关系并确定数据库的数据集存储方式;基于数据库的数据集存储方式的结构构建查询密钥;将原始数据以确定的数据集存储方式存储于数据库中;扩容模块,用于接收并解析数据库需要存储的扩容数据,以获得扩容数据的扩容维度关键词;将扩容维度关键词与数据库中原有的维度关键词进行比对,以获得两者之间的差异;判断两者之间的差异大小;若差异大于阈值,则将扩容维度关键词进行编码,以构建新的编码,并以新的编码与扩容维度关键词之间的对应关系并更新数据库的数据集存储方式,同时更新查询密钥,使扩容数据以更新后的数据集存储方式存入数据库中,完成扩容;若差异小于等于阈值,则将扩容维度关键词整合入原有的维度关键词中,使扩容数据以原有的数据集存储放入存入数据库中,完成扩容;查询模块,用于接收并解析输入的查询密钥,以获取查询密钥中包含的维度关键词;基于获取到的维度关键词确认对应的查询编码;
输出模块,用于输出查询的数据。
15.第三方面,本技术提供了一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述的基于编码查询方式的数据库构建方法。
16.第四方面,本技术提供了一种可读存储介质,可读存储介质中存储有计算机程序,计算机程序包括用于控制过程以执行过程的程序代码,过程包括根据上述的基于编码查询方式的数据库构建方法。
17.本发明的主要贡献和创新点如下:1、与现有技术相比,本技术在数据库构建过程中,通过对原始数据进行分析,构建基于编码建立的数据集存储方式和查询密钥,使得数据的录入具备一定的关联关系,便于数据的有序化存储,替代传统技术中的数据堆叠存储,存储更加科学,特别是在数据量庞大时,数据的存储有序,便于数据库的快速构建;2、与现有技术相比,本技术在数据库的扩容过程中,考虑到了随着数据库的使用时间的增长,数据的关键词可能会发生变化,原始数据库未必能够涵盖再后的维度关键词,因此在扩容过程中,可以识别新的数据的扩容维度关键词,并对扩容维度关键词进行编码,将新的编码加入到数据集存储方式中,可以更新数据的存储方式;3、与现有技术相比,本技术在数据的查询过程中,可以基于查询关键词获取查询关键词的维度信息,基于维度信息可以获取到与维度信息对应的编码,通过编码在数据库内可以快速提取数据,同时可以提取不同数据之间的关联关系,能够提高数据查询的响应效率。
18.本技术的一个或多个实施例的细节在以下附图和描述中提出,以使本技术的其他特征、目的和优点更加简明易懂。
附图说明
19.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:图1是根据本技术实施例的基于编码查询方式的数据库构建方法的流程图;图2是数据库扩容的流程图;图3是数据库查询的流程图;图4是根据本技术实施例的电子装置的硬件结构示意图。
具体实施方式
20.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
21.需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进
行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
22.由于网络数据的数据量大,并且变化可能也较多,因此需要一个大容量易扩展的数据库进行存储。同时,对于各种需要对数据库进行查询的应用而言,对于大容量数据库的快速查询也是非常重要的。
23.基于此,本发明基于关键词建立数据库来解决现有技术存在的问题。
24.实施例一具体地,本技术实施例提供了基于编码查询方式的数据库构建方法,具体地,参考图1,所述方法包括:s00、遍历原始数据并进行解析,以获取原始数据中每个数据的维度关键词;在本实施例中,原始数据为已知数据,在对原始数据进行解析过程中,按照语言类型对所述查询字段所包含的内容进行片断拆分,得到多个维度关键词,该语言类型包括了断句顺序,和同一数据中字间关联度。
25.优选地,在生成了维度关键词之后,可以具备预览功能,即将所有的维度关键词进行预览以供用户审阅,用户可以基于审阅结果接入到维度关键词的修订中,如可以删除维度关键词或补入维度关键词会修改维度关键词。
26.优选地,可以将原始数据库的构建与深度学习技术相结合,实现维度关键词的自动化提取,随着数据量的增加,维度关键词的提取将更为准确。
27.s01、对每个维度关键词进行编码,以使得编码与维度关键词一一对应关联;优选地,可以以数字的方式对每个维度关键词进行编码,以进一步简化编码的构建,便于数据集存储方式和查询密钥的建立。
28.如英文字母与数字的对应关系为例:a(1)、b(2)、c(3)、d(4)、e(5)、f(6)、g(7)、h(8)、i(9)、j(210)、k(211)、l(212)、m(213)、n(214)、o(215)、p(216)、q(217)、r(218)、s(219)、t(220)、u(221)、v(222)、w(223)、x(224)、y(225)、z(226)。
29.s02、以维度关键词之间的映射关系,构建数据库的映射网格关系;在本实施例中,如以“男浙江人收入”为例,原始数据库中还可以包括“女浙江人收入”,即男、女、浙江人及收入为四个维度关键词,该四个维度关键词之间为平行映射的关系,还可以对男和女进行上位,以获取上位维度关键词,上位维度关键词可以为性别,性别与浙江人和收入即为交叉映射的关系,男、女与性别即为从属映射的关系。
30.s03、以编码与维度关键词之间的对应关系,修正数据库的映射网格关系并确定数据库的数据集存储方式;在本实施例中,将映射网格关系中的维度关键词替换为编码,即可构建数据集存储方式和查询密钥,构建数据集存储方式和查询密钥为网格化的数据化的。
31.s04、基于数据库的数据集存储方式的结构构建查询密钥;其中查询密钥由每个维度关键词对应的编码组成;s05、将原始数据以确定的数据集存储方式存储于数据库中。
32.在本实施例中,如基于英文字母表,构建加密数字库,每个英文字母对应有一个加密数字,在基于维度关键词来确定编码的过程中,提取每个关键词的首个字符和末尾字符的拼音的首字母,基于关键词的首个字符和末尾字符首字母和加密数字来确定编码,如关
键词为男性,n对应的数字为214,x对应的数字为224,那么男性这一关键词对应的编码即为214224。进一步地,在确定关键词对应的编码之后,可以对已经确认的编码进行存储,构建编码映射关系,在确定下一个关键词对应的编码时,需要将新的编码与编码映射关系进行比对,确定新的编码与编码映射关系是否存在重复,如果重复这再取关键词的首字符的第二个拼音字母对关键词进行加密,如此循环直到新的编码与编码映射关系之间不重复,基于此即可完成关键词的编码化。
33.可以理解的是,如此设置便于关键词的编码化,同时也实现了对关键词的加密,也便于破译编码的编写。
34.其中,如图2所示,扩容步骤包括:s10、接收并解析数据库需要存储的扩容数据,以获得扩容数据的扩容维度关键词;在本实施例中,随着数据库的使用时间的增长,数据的关键词可能会发生变化,原始数据库未必能够涵盖再后的维度关键词,同样以“男浙江人收入”为例,后续数据的录入过程中出现了大量的“男浙江人工资收入”、“男浙江人理财工资收入”,这种情况下,如若强行将新的数据按照以前的数据集存储方式存储在数据库中,将会导致数据录入的不准确,数据存储不清晰,因此确定扩容数据的扩容维度关键词。
35.s11、将扩容维度关键词与数据库中原有的维度关键词进行比对,以获得两者之间的差异;s12、判断两者之间的差异大小;优选地,这里可以采用相似度算法来判断或者说计算差异大小,或者其他机器学习模型来计算相似度或差异大小。
36.s13、若差异大于阈值,则将扩容维度关键词进行编码,以构建新的编码,并以新的编码与扩容维度关键词之间的对应关系并更新数据库的数据集存储方式,同时更新查询密钥,使扩容数据以更新后的数据集存储方式存入数据库中,完成扩容;若差异小于等于阈值,则将扩容维度关键词整合入原有的维度关键词中,使扩容数据以原有的数据集存储放入存入数据库中,完成扩容。
37.在本实施例中,可以理解的是,在比对扩容维度关键词与数据量中的维度关键词进行比对的过程中,还可以基于扩容维度关键词与维度关键词的差异数量、重合数量的角度确定比对结果,如对在重合数量极少的情况下,该新的扩容数据不易存储在该数据库中,应当建议建立新的数据库;如若重合度大于第一阈值(如取值大于30%),且差异数量大于2个,这种情况下可以认为二者之间差异较大,如若重合度大于第一阈值(如取值大于30%),且差异数量小于或等于2个,则可以认为二者之间差异较小。
38.其中,如图3所示,查询步骤(适用于未扩容的数据库和已扩容的数据库)包括:s20、接收并解析输入的查询密钥,以获取查询密钥中包含的维度关键词;s21、基于获取到的维度关键词确认对应的查询编码;其中查询编码为查询用的编码;s22、根据查询编码提取数据库中与查询编码相关的数据。
39.在本实施例中,以“男浙江人收入”为例,在数据库的构建过程中男对应有编码001,浙江对有关有编码002,收入对应有编码003,在查询过程中,可以直接基于001002003
提取数据库中的数据,同时提取数据库中的查询密钥,并通过映射网格的方式展现提取出的数据,可以进行数据的快速查询,同时利于精准分析。
40.优选地,在编码过程中,可以通过escape(string)函数、ncodeuri(uristring)函数进行编码,可以通过encodeuricomponent(uristring)解析查询密钥,对数据进行快速提取。
41.优选地,本技术还适用于对城市维度的大数据进行处理,可以用户财务信息和交通数据的存储,在对财务信息进行存储时,财务信息包括:性别、年龄、公司性质等;在涉及交通信息的存储时,信息可以包括流速、车辆数量和车速。如可以服务于需要打车出行的乘客端、司机端和政府的交通管制部门。
42.其中,以应用在乘客端为例,数据库可以对乘客的目的地、始发地和时间段作为关键词进行统计,而目的地和始发地之下可以再包括多个关键词,如关键词可以涉及购物地、交通枢纽地和公益服务地(如学校),基于此即可构建目的地、始发地和时间段相关的数据库;以该数据库应用到司机端为例,司机可以通过查询该数据库,快速获知到不同时段的客户往来方向,基于此该数据库可以促进司机的等客位置适配于客户发出起始地,能够提高乘客搭乘汽车的效率,也能够提高司机端的运客效率。
43.同样的该数据库也可以服务于政府机构,政府机构可以获知到乘客、司机的位置信息,而这种情况下司机可以包括出租车司机和私家车司机,通过快速高效地对数据进行存储和查询,可以使数据库的容量更大,数据库的数据涵盖范围更广,由于进行了编码统计,数据的脉络会更加清晰,政府职能部门即可基于数据的脉络来进行城市维度的规划,如道路修建和维护的规划,学校、商场区域的划分等等。
44.实施例二基于相同的构思,本技术还提出了一种基于编码查询方式的数据库查询扩容装置,包括:建立模块,用于遍历原始数据并进行解析,以获取原始数据中每个数据的维度关键词;对每个维度关键词进行编码,以使得编码与维度关键词一一对应关联;以维度关键词之间的映射关系,构建数据库的映射网格关系;以编码与维度关键词之间的对应关系,修正数据库的映射网格关系并确定数据库的数据集存储方式;基于数据库的数据集存储方式的结构构建查询密钥;将原始数据以确定的数据集存储方式存储于数据库中;扩容模块,用于接收并解析数据库需要存储的扩容数据,以获得扩容数据的扩容维度关键词;将扩容维度关键词与数据库中原有的维度关键词进行比对,以获得两者之间的差异;判断两者之间的差异大小;若差异大于阈值,则将扩容维度关键词进行编码,以构建新的编码,并以新的编码与扩容维度关键词之间的对应关系并更新数据库的数据集存储方式,同时更新查询密钥,使扩容数据以更新后的数据集存储方式存入数据库中,完成扩容;若差异小于等于阈值,则将扩容维度关键词整合入原有的维度关键词中,使扩容数据以原有的数据集存储放入存入数据库中,完成扩容;查询模块,用于接收并解析输入的查询密钥,以获取查询密钥中包含的维度关键词;基于获取到的维度关键词确认对应的查询编码;输出模块,用于输出查询的数据。
45.实施例三本实施例还提供了一种电子装置,参考图4,包括存储器404和处理器402,该存储器404中存储有计算机程序,该处理器402被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
46.具体地,上述处理器402可以包括中央处理器(cpu),或者特定集成电路(applicationspecificintegratedcircuit,简称为asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
47.其中,存储器404可以包括用于数据或指令的大容量存储器404。举例来说而非限制,存储器404可包括硬盘驱动器(harddiskdrive,简称为hdd)、软盘驱动器、固态驱动器(solidstatedrive,简称为ssd)、闪存、光盘、磁光盘、磁带或通用串行总线(universalserialbus,简称为usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器404可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器404可在数据处理装置的内部或外部。在特定实施例中,存储器404是非易失性(non-volatile)存储器。在特定实施例中,存储器404包括只读存储器(read-onlymemory,简称为rom)和随机存取存储器(randomaccessmemory,简称为ram)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(programmableread-onlymemory,简称为prom)、可擦除prom(erasableprogrammableread-onlymemory,简称为eprom)、电可擦除prom(electricallyerasableprogrammableread-onlymemory,简称为eeprom)、电可改写rom(electricallyalterableread-onlymemory,简称为earom)或闪存(flash)或者两个或更多个以上这些的组合。在合适的情况下,该ram可以是静态随机存取存储器(staticrandom-accessmemory,简称为sram)或动态随机存取存储器(dynamicrandomaccessmemory,简称为dram),其中,dram可以是快速页模式动态随机存取存储器404(fastpagemodedynamicrandomaccessmemory,简称为fpmdram)、扩展数据输出动态随机存取存储器(extendeddateoutdynamicrandomaccessmemory,简称为edodram)、同步动态随机存取内存(synchronousdynamicrandom-accessmemory,简称sdram)等。
48.存储器404可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器402所执行的可能的计算机程序指令。
49.处理器402通过读取并执行存储器404中存储的计算机程序指令,以实现上述实施例中的任意基于编码查询方式的数据库构建方法。
50.可选地,上述电子装置还可以包括传输设备406以及输入输出设备408,其中,该传输设备406和上述处理器402连接,该输入输出设备408和上述处理器402连接。
51.传输设备406可以用来经由一个网络接收或者发送数据。上述的网络具体实例可包括电子装置的通信供应商提供的有线或无线网络。在一个实例中,传输设备包括一个网络适配器(network interface controller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备406可以为射频(radio frequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。
52.输入输出设备408用于输入或输出信息。在本实施例中,输入的信息可以是需要存储的数据或者查询密钥等,输出的信息可以是需要查询的数据等。
53.实施例四
本实施例还提供了一种可读存储介质,可读存储介质中存储有计算机程序,计算机程序包括用于控制过程以执行过程的程序代码,过程包括根据实施例一的基于编码查询方式的数据库构建方法。
54.需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
55.通常,各种实施例可以以硬件或专用电路、软件、逻辑或其任何组合来实现。本发明的一些方面可以以硬件来实现,而其他方面可以由控制器、微处理器或其他计算设备执行的固件或软件来实现,但是本发明不限于此。尽管本发明的各个方面可以被示出和描述为框图、流程图或使用一些其他图形表示,但是应当理解,作为非限制性示例,本文中描述的这些框、装置、系统、技术或方法可以以硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备或其某种组合来实现。
56.本发明的实施例可以由计算机软件来实现,该计算机软件由移动设备的数据处理器诸如在处理器实体中可执行,或者由硬件来实现,或者由软件和硬件的组合来实现。包括软件例程、小程序和/或宏的计算机软件或程序(也称为程序产品)可以存储在任何装置可读数据存储介质中,并且它们包括用于执行特定任务的程序指令。计算机程序产品可以包括当程序运行时被配置为执行实施例的一个或多个计算机可执行组件。一个或多个计算机可执行组件可以是至少一个软件代码或其一部分。另外,在这一点上,应当注意,如图中的逻辑流程的任何框可以表示程序步骤、或者互连的逻辑电路、框和功能、或者程序步骤和逻辑电路、框和功能的组合。软件可以存储在诸如存储器芯片或在处理器内实现的存储块等物理介质、诸如硬盘或软盘等磁性介质、以及诸如例如dvd及其数据变体、cd等光学介质上。物理介质是非瞬态介质。
57.本领域的技术人员应该明白,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
58.以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1