数据存储方法、查询方法及设备的制造方法

文档序号:9687452阅读:437来源:国知局
数据存储方法、查询方法及设备的制造方法【专利说明】数据存储方法、查询方法及设备【
技术领域
】[0001]本发明涉及网络
技术领域
,尤其涉及一种数据存储方法、查询方法及设备。【【
背景技术
】】[0002]随着非关系型数据库(N0SQL)在业界的推广,传统的关系型数据库巧elationalDat油aseManagementSystem,畑BIVB)受到很大挑战。虽然N0SQL支持键值对化巧-value)存储方式,但在很多场景下依然会像RDBMS郝样定义表(table),为表设计多个列(column),为除主键W外的其他列创建次级索引;之后S化会像使用畑BMS郝样使用该N0S化产品。[0003]当表中数据行较多时,为表中的多个列创建并维护次级索引会严重影响存储系统的性能,导致存储和查询速度较低。【【
发明内容】】[0004]本发明的多个方面提供一种数据存储方法、查询方法及设备,用W提高数据存储和查询速度,提高存储系统的性能。[0005]本发明的一方面,提供一种数据存储方法,包括:[0006]接收待存储的数据记录;[0007]在所述数据记录包括时间戳、在所述时间戳所标识的时间点产生的数值W及可W标识所述数值的第一标识值组合时,根据用户的查询需求对所述数据记录进行预处理,获得满足所述查询需求的目标数值和目标时间W及作为查询条件的第二标识值组合,将表征所述第二标识值组合的存储标识、所述目标时间和所述目标数值对应存储到第二信息表中,并将所述第一标识值组合存储到第一信息表中;[0008]其中,与时间无关的多维标识字段的一种取值构成所述第一标识值组合。[0009]本发明的另一方面,提供一种数据存储设备,包括:[0010]接收模块,用于接收待存储的数据记录;[0011]第一存储模块,用于在所述数据记录包括时间戳、在所述时间戳所标识的时间点产生的数值和可W标识所述数值的第一标识值组合时,根据用户的查询需求对所述数据记录进行预处理,获得满足所述查询需求的目标数值和目标时间W及作为查询条件的第二标识值组合,将表征所述第二标识值组合的存储标识、所述目标时间和所述目标数值存储到第二信息表中,并将所述第一标识值组合存储到第一信息表中;[0012]其中,与时间无关的多维标识字段的一种取值构成所述第一标识值组合。[0013]本发明的又一方面,提供一种数据查询方法,包括:[0014]接收查询请求;[0015]在所述查询请求包括作为查询条件的过滤条件但不包括目标时间时,根据所述过滤条件在第一信息表存储的多个第一标识值组合中进行查询,获取满足所述过滤条件的第一标识值组合;其中,与时间无关的多维标识字段的一种取值构成一个第一标识值组合,所述过滤条件包括部分标识字段的取值;[0016]在所述查询请求包括作为查询条件的第二标识值组合和目标时间时,根据表征所述第二标识值组合的存储标识和所述目标时间在第二信息表中进行查询,获取对应于所述目标时间和所述存储标识的目标数值。[0017]本发明的又一方面,提供一种数据查询设备,包括:[0018]接收模块,用于接收查询请求;[0019]第一查询模块,用于在所述查询请求包括作为查询条件的过滤条件但不包括目标时间时,根据所述过滤条件在第一信息表存储的多个第一标识值组合中进行查询,获取满足所述过滤条件的第一标识值组合;其中,与时间无关的多维标识字段的一种取值构成一个第一标识值组合,所述过滤条件包含部分标识字段的取值;[0020]第二查询模块,用于在所述查询请求包括作为查询条件的第二标识值组合和目标时间时,根据表征所述第二标识值组合的存储标识和所述目标时间在第二信息表中进行查询,获取对应于所述目标时间和所述存储标识的目标数值。[0021]在本发明技术方案中,通过对待存储数据记录中的内容进行分类,将与时间无关的内容,例如多维标识字段的取值存储到第一信息表中,送样第一信息表中存储的是与时间无关的内容,数据量相对较少,创建和维护次级索引的工作量大大降低了;对于与时间有关的内容,根据用户的查询需求对数据记录进行预处理直接获得满足用户的查询需求的信息,即目标数值、目标时间和表征查询条件的存储标识,通过预处理一定程度上可W减少第二信息表中的数据量,另外通过存储目标数值、目标时间和存储标识使得第二信息表不需要建立次级索引。与现有技术相比,本发明技术方案创建和维护次级索引的工作量极大的降低了,并且存储的数据量也有所降低,因此可W提高数据存储速度,提高存储系统的性能;相应的,在进行数据查询时,直接查询第二信息表时不再依赖次级索引,有利于提高查询速度,即使需要查询第一信息表,但由于第一信息表所维护的次级索引较少,所W与现有技术相比查询速度也有所提高。【【附图说明】】[0022]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可W根据送些附图获得其他的附图。[0023]图la为本发明一实施例提供的数据存储方法的流程示意图;[0024]图化为本发明另一实施例提供的数据存储方法的流程示意图;[00巧]图2为本发明一实施例提供的数据查询方法的流程示意图;[0026]图3a为本发明一实施例提供的数据存储设备的结构示意图;[0027]图3b为本发明另一实施例提供的数据存储设备的结构示意图;[0028]图4为本发明一实施例提供的数据查询设备的结构示意图。【【具体实施方式】】[0029]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0030]在对本发明技术方案进行说明之前,结合具体的应用场景说明一下现有存储方案存在的缺陷。[0031]表1[0032][0034]表1是在数据分析领域常见的一种应用场景,表1中的内容是对第Η方支付公司交易系统的各种各样行为的记录。在表1中,接口、方法就是面向服务的体系结构(Service-OrientedArchitecUire,S0A)领域中常用的服务标识,接口代表某种服务,方法代表送种服务下的一种具体行为,create和pay分别代表此服务下的订单创建业务和订单支付业务;来源表示此笔业务的调用方是来自化obao(淘宝网站)还是Tmall(天猫网站),结果顾名思义Y/N分别代表了此笔业务的最终结果是成功还是失败;金额是一个数值,表示此笔交易的金额。[0035]根据应用需求可W基于表1进行各种信息的查询。例如,可W查询2013-11-1100:00送个时刻下,各种[接口,方法,来源,结果]组合下的金额分别是多少。又例如还可W查询2013-11-1100:00送个时刻下,[接口=TradeFacade,方法=create或pay]的总金额。又例如还可W查询交易服务下的订单创建业务到底有多少种可能的来源,该来源在表1中对应的是化obao和Tmall。[0036]由上述可见,需要为表1中的接口、方法、来源、结果各列建立并维护次级索引,W避免查询过程中遍历全表。但是表1中的数据行会随着时间不断累积,当表1中数据行较多时,为多个列创建并维护次级索引将是一项代价巨大的工作,会严重影响存储系统的性能,降低存储和查询速度。[0037]针对上述问题,图la为本发明一实施例提供的数据存储方法的流程示意图,如图la所示,该方法包括:[0038]101、接收待存储的数据记录。[0039]102、在上述数据记录包括时间戳、在时间戳所标识的时间点产生的数值和可W标识该数值的第一标识值组合时,根据用户的查询需求对上述数据记录进行预处理,获得满足查询需求的目标数值和目标时间W及作为查询条件的第二标识值当前第1页1 2 3 4 5 
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1