CN113505142B - 数据查询方法、装置及服务器 - Google Patents

数据查询方法、装置及服务器 Download PDF

Info

Publication number
CN113505142B
CN113505142B CN202110772830.6A CN202110772830A CN113505142B CN 113505142 B CN113505142 B CN 113505142B CN 202110772830 A CN202110772830 A CN 202110772830A CN 113505142 B CN113505142 B CN 113505142B
Authority
CN
China
Prior art keywords
data
range
queried
type
database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110772830.6A
Other languages
English (en)
Other versions
CN113505142A (zh
Inventor
袁展鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongdian Jinxin Software Co Ltd
Original Assignee
Zhongdian Jinxin Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongdian Jinxin Software Co Ltd filed Critical Zhongdian Jinxin Software Co Ltd
Priority to CN202110772830.6A priority Critical patent/CN113505142B/zh
Publication of CN113505142A publication Critical patent/CN113505142A/zh
Application granted granted Critical
Publication of CN113505142B publication Critical patent/CN113505142B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24535Query rewriting; Transformation of sub-queries or views
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24558Binary matching operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种数据查询方法、装置及服务器,基于数据查询请求所属的目标业务分类,确定目标归档数据库,并在其中查找与待查询数据类型相匹配的待查询范围;再进一步基于待查询数据类型对应的数据范围与待查询范围的交集,得到数据查询请求对应的查询结果。本发明中,针对分类业务,从原始数据库中提取查询过的该分类业务对应的数据,构建归档数据库,并依据数据查询请求所属的目标业务分类,从该目标业务分类对应的归档数据库中进行查询,由于归档数据库仅存储查询过的分类业务对应的数据,且存储的数据为常用于查询的数据,能够满足大多数的查询需求,提高了数据查询速度及查询效率。

Description

数据查询方法、装置及服务器
技术领域
本发明涉及大数据存储技术领域,尤其是涉及一种数据查询方法、装置及服务器。
背景技术
相关技术中,通常采用关系型数据库保存大量数据。关系型数据库一般采用按照数据容量进行分库或分表的方式保存数据。当对这些数据进行统计查询时,可以采用关系型数据库提供的搜索引擎,在所有分库或分表中进行检索,然而由于关系型收据库保存了大量的数据,使得对数据的查询速度较慢,导致查询效率较低。
发明内容
有鉴于此,本发明的目的在于提供一种数据查询方法,以提高数据查询速度,提升查询效率。
第一方面,本发明实施例提供了一种数据查询方法,包括:获取数据查询请求;数据查询请求包括待查询数据类型及待查询数据类型对应的数据范围;确定数据查询请求所属的目标分类业务,在预先设置的各归档数据库中,获取目标分类业务对应的目标归档数据库,归档数据库是依据预先设置的分类业务,从原始数据库中,提取查询过该分类业务对应的数据构建的;在目标归档数据库中,查找与待查询数据类型相匹配的待查询范围;计算数据范围与待查询范围的交集;若交集为数据范围,基于待查询范围获取数据查询请求对应的查询结果;若交集不为数据范围且不为空,基于交集获取第一数据,以及,计算数据范围与交集的补集,基于补集,在原始数据库中进行查询,获取第二数据;合并第一数据以及第二数据,得到数据查询请求对应的查询结果。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,上述目标归档数据库包括数据归档信息;数据归档信息包括归档数据类型及归档数据类型对应的归档范围;在目标归档数据库中,查找与待查询数据类型相匹配的待查询范围的步骤,包括:在数据归档信息中,查找与待查询数据类型匹配的归档数据类型;如果查找到,获取匹配的归档数据类型对应的归档范围,得到待查询范围;如果未查找到,设置待查询范围为空。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述方法还包括:如果交集为空,基于待查询数据类型以及待查询数据类型对应的数据范围,在原始数据库中进行查询,获取第三数据;将第三数据确定为数据查询请求对应的查询结果。
结合第一方面至第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,上述目标归档数据库还包括数据归档存储器,每一数据归档存储器用于存储一归档数据类型对应的归档数据,基于待查询范围获取数据查询请求对应的查询结果,包括:从与待查询数据类型相匹配的数据归档存储器中,获取待查询范围内的归档数据,得到查询结果。
结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,上述方法还包括:如果未查找到,将待查询数据类型作为归档数据类型,将数据范围作为归档数据类型对应的归档范围,保存至数据归档信息中,将第三数据保存至目标归档数据库中归档数据类型对应的数据归档存储器中,构建第三数据与对应的归档范围的映射关系;如果交集为空,依据数据范围更新与待查询数据类型相匹配的归档数据类型对应的归档范围,将第三数据保存至相匹配的归档数据类型对应的数据归档存储器中。
结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,上述方法还包括:基于数据范围与待查询范围的更新与待查询数据类型相匹配的归档数据类型对应的归档范围;将第二数据保存至相匹配的归档数据类型对应的数据归档存储器中。
第二方面,本发明实施例还提供一种数据查询装置,包括:请求获取模块,用于获取数据查询请求;数据查询请求包括待查询数据类型及待查询数据类型对应的数据范围;归档数据库确定模块,用于确定数据查询请求所属的目标分类业务,在预先设置的各归档数据库中,获取目标分类业务对应的目标归档数据库,归档数据库是依据预先设置的分类业务,从原始数据库中,提取查询过该分类业务对应的数据构建的;范围查找模块,用于在目标归档数据库中,查找与待查询数据类型相匹配的待查询范围;交集计算模块,用于计算数据范围与待查询范围的交集;第一查询模块,用于若交集为数据范围,基于待查询范围获取数据查询请求对应的查询结果;第二查询模块,用于若交集不为数据范围且不为空,基于交集获取第一数据,以及,计算数据范围与交集的补集,基于补集,在原始数据库中进行查询,获取第二数据;数据合并模块,用于合并第一数据以及第二数据,得到数据查询请求对应的查询结果。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,上述目标归档数据库包括数据归档信息;数据归档信息包括归档数据类型及归档数据类型对应的归档范围;上述范围查找模块还用于:在数据归档信息中,查找与待查询数据类型匹配的归档数据类型;如果查找到,获取匹配的归档数据类型对应的归档范围,得到待查询范围;如果未查找到,设置待查询范围为空。
第三方面,本发明实施例还提供一种服务器,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述方法。
第四方面,本发明实施例还提供一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述方法。
本发明实施例带来了以下有益效果:
本发明实施例提供了一种数据查询方法、装置及服务器,首先确定获取到的数据查询请求所属的目标业务分类,进而确定目标目标归档数据库;在目标归档数据库中,查找与待查询数据类型相匹配的待查询范围;计算待查询数据类型对应的数据范围与待查询范围的交集;若交集为数据范围,基于待查询范围获取数据查询请求对应的查询结果;若交集不为数据范围且不为空,基于交集获取第一数据,然后计算数据范围与交集的补集,并基于补集,在原始数据库中进行查询,获取第二数据;最后合并第一数据以及第二数据,得到数据查询请求对应的查询结果。该方式中,针对分类业务,从原始数据库中提取查询过的该分类业务对应的数据,构建归档数据库,并依据数据查询请求所属的目标业务分类,从该目标业务分类对应的归档数据库中进行查询,由于归档数据库仅存储查询过的分类业务对应的数据,且存储的数据为常用于查询的数据,能够满足大多数的查询需求,提高了数据查询速度及查询效率。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据查询方法的流程图;
图2为本发明实施例提供的另一种数据查询方法的流程图;
图3为本发明实施例提供的一种数据查询装置的结构示意图;
图4为本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,数据规模越来越大,应用对数据要求越来越高,给存储大量数据的传统数据库带来了巨大的挑战。
基于此,本发明实施例提供的一种数据查询方法、装置以及服务器,可以应用于各种数据查询的场景,如工业数据、商业数据等对数据更新频率不高的场景。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种数据查询方法进行详细介绍。
本发明实施例提供了一种数据查询方法,该方法应用于服务器,服务器与客户端通信连接;如图1所示,该方法包括以下步骤:
步骤S100,获取数据查询请求;数据查询请求包括待查询数据类型及待查询数据类型对应的数据范围。
上述数据查询请求可以为用户通过网页客户端、手机客户端等发送至服务器的。该数据范围通常与数字有关,如日期范围、年龄范围等,具有上限及下限。该数据范围可以为连续的一个范围,也可以为若干个不连续的范围。
步骤S102,确定数据查询请求所属的目标分类业务,在预先设置的各归档数据库中,获取目标分类业务对应的目标归档数据库,归档数据库是依据预先设置的分类业务,从原始数据库中,提取查询过该分类业务对应的数据构建的。
具体应用中,分类业务可依据实际需要进行设置,例如,作为一可选实施例,包括:金融分类业务、通信分类业务、休闲娱乐分类业务、气象预报分类业务等。为每一分类业务设置对应的业务关键词库。通过对数据查询请求中包含的字词,进行关键词提取;其中,该字词可以为待查询数据类型;然后将关键词分别与各分类业务对应的业务关键词库进行匹配,可以得到数据查询请求所属的分类业务,即目标分类业务。
在依据分类业务构建归档数据库的过程中,对于初始的归档数据库,可以是从原始数据库中,首先筛选出该分类业务对应的数据集,再从筛选出的数据集中,按照预先设置的筛选策略筛选出常用于查询的数据,得到用于存储至归档数据库的归档数据。其中,筛选策略可以是词频-逆文本频率(TF-IDF,Term Frequency–Inverse Document Frequency)筛选策略、数据访问次数筛选策略、包含该分类业务的核心关键词筛选策略等,最后,对归档数据进行数据类型分类,分别获取分类的数据类型对应的数据范围,基于数据类型、数据类型对应的数据范围以及数据类型对应的数据,构建初始的归档数据库。
在构建好初始的归档数据库后,后续应用中,若有针对该分类业务的数据查询请求,若在归档数据库中未查询到,而在原始数据库中查询到,则将该从原始数据库中查询到的数据写入该分类业务对应的归档数据库中。这样,针对每一分类业务,从原始数据库中提取查询过的该分类业务对应的数据,构建该分类业务对应的文档数据库。从而可以依据数据查询请求所属的目标业务分类,从该目标业务分类对应的归档数据库中进行查询,由于归档数据库仅存储查询过的分类业务对应的数据,且存储的数据为常用于查询的数据,能够满足大多数的查询需求,数据量较少,提高了数据查询速度及查询效率。
作为另一可选的实施例,对于初始的归档数据库,也可以设置该初始的归档数据库为空,后续应用中,依据在原始数据库中查询到的该分类业务对应的数据,对该分类业务对应的归档数据库进行更新。
在设置归档数据库时,可以采用文档数据库作为归档数据库。文档数据库以文档为单位保存数据,一个文档可以很长、很复杂、也可以无结构,文档和文档之间是独立的。一个文档相当于关系数据库中的一条记录。当归档数据库为文档数据库类型的数据库时,存储被查询过的数据,当存储于归档数据库的数据被再次查询时,基于归档数据库本身的特性,可以很快响应针对于该数据的查询。
步骤S104,在目标归档数据库中,查找与待查询数据类型相匹配的待查询范围。
具体而言,可以在目标归档数据库的数据存储信息中查找与该待查询数据类型相同的归档数据类型,如果没有,则说明目标归档数据库中没有存储该数据查询请求对应的数据,此时将数据查询请求对应的原始数据库确定为目标数据库,可以依据该数据查询请求对原始数据库进行查询。
如果找到与待查询数据类型相同的归档数据类型,可以将归档数据类型对应的归档范围确定为待查询范围。
步骤S106,计算数据范围与待查询范围的交集。
步骤S108,若交集为数据范围,基于待查询范围获取数据查询请求对应的查询结果。
当数据范围与待查询范围的交集为数据范围的时候,说明目标归档数据库中保存有该数据查询请求对应的所有数据。可以以待查询数据类型以及对应的数据范围作为查询条件,从归档数据库中获取数据查询请求对应的数据。
步骤S110,若交集不为数据范围且不为空,基于交集获取第一数据,以及,计算数据范围与交集的补集,基于补集,在原始数据库中进行查询,获取第二数据。
当数据范围与待查询范围的交集不为数据范围且不为空的时候,说明归档数据库中保存有该数据查询请求对应的部分数据。可以先以待查询数据类型,以及数据范围与待查询范围的交集作为查询条件,从归档数据库中获取与数据范围与数据范围的交集对应的数据,即第一数据。然后再计算数据范围与交集的补集,并将待查询数据类型及计算得到的补集作为查询条件,在保存了数据查询请求中的待查询数据类型对应的数据的原始数据库中进行查询,获取与上述补集对应的数据,即第二数据。
上述原始数据库可以为关系数据库,保存有待查询数据类型的对应的数据。由于关系型数据库是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据,其保存的数据之间会有一定的逻辑关系。当关系型数据库保存了大量的数据时,由于关系型数据库本身的特点,相较于文档数据库,其对数据查询请求的响应速度较慢。
步骤S112,合并第一数据以及第二数据,得到数据查询请求对应的查询结果。
基于上述第一数据及第二数据的获取方式可知,第一数据及第二数据都包括部分数据查询请求对应的数据,将二者合并后,可以得到数据查询请求对应的查询结果。
本发明实施例提供了一种数据查询方法,首先确定获取到的数据查询请求所属的目标业务分类,进而确定目标目标归档数据库;在目标归档数据库中,查找与待查询数据类型相匹配的待查询范围;计算待查询数据类型对应的数据范围与待查询范围的交集;若交集为数据范围,基于待查询范围获取数据查询请求对应的查询结果;若交集不为数据范围且不为空,基于交集获取第一数据,然后计算数据范围与交集的补集,并基于补集,在原始数据库中进行查询,获取第二数据;最后合并第一数据以及第二数据,得到数据查询请求对应的查询结果。该方式中,针对分类业务,从原始数据库中提取查询过的该分类业务对应的数据,构建归档数据库,并依据数据查询请求所属的目标业务分类,从该目标业务分类对应的归档数据库中进行查询,由于归档数据库仅存储查询过的分类业务对应的数据,且存储的数据为常用于查询的数据,能够满足大多数的查询需求,提高了数据查询速度及查询效率。
本发明实施例提供了另一种数据查询方法,该方法在图1所示的方法基础上实现。该方法主要描述了在目标归档数据库中,查找与待查询数据类型相匹配的待查询范围的过程,交集为空时,获取数据查询请求对应的数据的过程,以及更新归档数据库的过程。如图2所示,该方法包括以下步骤:
步骤S200,获取数据查询请求;数据查询请求包括待查询数据类型及待查询数据类型对应的数据范围。
步骤S202,确定数据查询请求所属的目标分类业务,在预先设置的各归档数据库中,获取目标分类业务对应的目标归档数据库,归档数据库是依据预先设置的分类业务,从原始数据库中,提取查询过该分类业务对应的数据构建的。
步骤S204,在数据归档信息中,查找与待查询数据类型匹配的归档数据类型;如果未查找到,执行步骤S206;如果查找到,执行步骤S208。
其中,上述数据归档信息可以存储在目标归档数据库中,可以存储在目标归档数据库之外的设定位置;数据归档信息包括目标归档数据库中存储的归档数据类型及归档数据类型对应的归档范围,随着目标归档数据库中的存储数据的更新而更新。
步骤S206,设置待查询范围为空。执行步骤S208。
步骤S208,计算数据范围与待查询范围的交集。如果交集为空,执行步骤S210;如果交集不为空集,执行步骤为S214;
步骤S210,基于待查询数据类型以及待查询数据类型对应的数据范围,在数据查询请求对应的原始数据库中进行查询,获取第三数据。
步骤S212,将第三数据确定为数据查询请求对应的查询结果。
当交集为空,采用上述方式获取得到第三数据后,针对于未查找到待查询数据类型而导致的交集为空的情况,以及查找到待查询数据类型待交集为空的情况,在更新目标归档数据库时有不同的处理。
如果未查找到,将待查询数据类型作为归档数据类型,将数据范围作为归档数据类型对应的归档范围,保存至数据归档信息中,将第三数据保存至目标归档数据库中归档数据类型对应的数据归档存储器中,构建第三数据与对应的归档范围的映射关系。
如果查找到且交集为空,依据数据范围更新与待查询数据类型相匹配的归档数据类型对应的归档范围,将第三数据保存至相匹配的归档数据类型对应的数据归档存储器中。
步骤S214,判断所述交集是否为数据范围;如果是,执行步骤S216;如果不是,执行步骤218。
步骤S216,从与待查询数据类型相匹配的数据归档存储器中,获取待查询范围内的归档数据,得到查询结果。其中,上述数据归档存储器为目标归档数据库的一部分,每一数据归档存储器用于存储一归档数据类型对应的归档数据。
步骤S218,基于交集获取第一数据,以及,计算数据范围与交集的补集,基于补集,在数据查询请求对应的原始数据库中进行查询,获取第二数据。
步骤S220,合并第一数据以及第二数据,得到数据查询请求对应的查询结果。
步骤S222,基于数据范围与待查询范围的并集更新与待查询数据类型相匹配的归档数据类型对应的归档范围。上述并集为数据范围与待查询数据范围的并集,可以将并集确定为待查询数据类型相匹配的归档数据类型对应的归档范围。
步骤S224,将第二数据保存至相匹配的归档数据类型对应的数据归档存储器中。
该方式中,在通过原始数据库进行数据查询之前,确定了能否通过归档数据库进行数据查询,利用了属于文档数据库类型的归档数据库的自身特性以及数据存储量较原始数据库少的特点,提高了数据查询的速度,同时实现了对数据的归档。
本发明实施例还提供了另一种数据查询方法,该方法在图1所示的方法基础上实现。该方法通过在原始数据存储前置层增加海量数据搜索引擎(相当于上述“归档数据库”的搜索引擎)和内存数据库(用于存储索引类型,相当于上述“数据归档信息”,也简称为“索引库”),针对范围和类型搜索,查询原始数据库之前,先通过内存数据库查询索引类型,然后在海量数据存储引擎中增量查询,如果未查询到数据,就从原始数据存储中获取数据,再将查询出来的数据放在海量存储引擎中,并做好索引映射。
该方法用于匹配包含日期、数字及其它个性化条件等类型的范围检索条件的数据查询请求。对于一个查询,该方法需要先查询索引库,判断是否包含该类型的索引,确定索引类型和索引范围;如果类型不存在,就在索引数据库中新增加该类型和对应的索引范围(即将该待查询数据类型及数据范围存储到数据归档信息中),然后直接查询原始数据存储库。得到数据集s1,并将查询出的数据集s1放在海量数据存储库(相当于上述“归档数据库”)中,做好和索引库的映射。如果再有同类型索引的查询,就直接比较索引范围。如果包含该类型的索引,判断是否包含索引范围;如果包含,直接查询,返回数据集。如果该索引范围在索引库中不存在,判断是否和存在的索引范围有交集;如果没有,直接查询原始数据库。如果有,将该类型的索引范围和已有的索引范围做对比,求出差集。用交集作为索引范围,查询海量数据库,得到数据库s1;用差集作为索引范围,查询原始数据库,得到数据集s2,差集也称为增量查询的增量查询条件。最后,将查出来的数据集在海量数据存储引擎中做增量更新,同时做好索引数据库的增量更新,并做好映射。
接下来,举例说明增量查询的全过程:
(1)当数据查询请求中包括标识索引k1——>k2等,对k1和k2参数进行说明:比如以age 20——>30之间的人作为查询条件,其索引类型就为age,索引范围就为20——30;
(2)第一次查询:
先根据索引类型为age查询索引库,索引库中不存在,将该索引类型和范围存入索引库中。再查询海量存储引擎,如果查不到数据集,再查询原始数据存储库,将查询出来的数据集S1,存在海量数据存储引擎中,做增量更新。
(3)、第二次查询:
条件k3—>k4,假如k3=20、k4=35,其索引类型就仍然为age;
先根据索引类型为age查询索引库,索引库中存在该类型,但是范围不存在,就把索引范围跟已经存在做对比,求差集,求出的差集即为30——35。根据索引类型为age,索引范围30——35查询原始数据存储库,将查询出来的数据集S2,存在海量数据存储引擎中,做增量更新,并返回结果集S1+S2,并做好索引映射。
上述方法针对归档统计性数据,提高检索效率,解决数据查询较慢及准确性不高的问题。
对应于上述方法实施例,本发明实施例还提供一种数据查询装置,该装置设置于服务器,服务器与客户端通信连接。如图3所示,该装置包括:
请求获取模块300,用于获取数据查询请求;数据查询请求包括待查询数据类型及待查询数据类型对应的数据范围;
归档数据库确定模块302,用于确定数据查询请求所属的目标分类业务,在预先设置的各归档数据库中,获取目标分类业务对应的目标归档数据库,归档数据库是依据预先设置的分类业务,从原始数据库中,提取查询过该分类业务对应的数据构建的;
范围查找模块304,用于在目标归档数据库中,查找与待查询数据类型相匹配的待查询范围;归档数据库为文档数据库;
交集计算模块306,用于计算数据范围与待查询范围的交集;
第一查询模块308,用于若交集为数据范围,基于待查询范围获取数据查询请求对应的查询结果;
第二查询模块310,用于若交集不为数据范围且不为空,基于交集获取第一数据,以及,计算数据范围与交集的补集,基于补集,在原始数据库中进行查询,获取第二数据;
数据合并模块312,用于合并第一数据以及第二数据,得到数据查询请求对应的查询结果。
进一步地,上述目标归档数据库包括数据归档信息;数据归档信息包括归档数据类型及归档数据类型对应的归档范围;上述范围查找模块还用于:在数据归档信息中,查找与待查询数据类型匹配的归档数据类型;如果查找到,获取匹配的归档数据类型对应的归档范围,得到待查询范围;如果未查找到,设置待查询范围为空。
进一步地,上述目标归档数据库还包括数据归档存储器,每一数据归档存储器用于存储一归档数据类型对应的归档数据,上述第一查询模块还用于:从与待查询数据类型相匹配的数据归档存储器中,获取待查询范围内的归档数据,得到查询结果。
进一步地,上述装置还包括:第一归档数据库更新模块,用于如果未查找到,将待查询数据类型作为归档数据类型,将数据范围作为归档数据类型对应的归档范围,保存至数据归档信息中,将第三数据保存至目标归档数据库中归档数据类型对应的数据归档存储器中,构建第三数据与对应的归档范围的映射关系;
进一步地,第二归档数据库更新模块,用于如果查找到且交集为空,依据数据范围更新与待查询数据类型相匹配的归档数据类型对应的归档范围,将第三数据保存至相匹配的归档数据类型对应的数据归档存储器中。
进一步地,上述装置还包括:归档范围更新模块,用于基于数据范围与待查询范围的并集更新与待查询数据类型相匹配的归档数据类型对应的归档范围;数据归档模块,用于将第二数据保存至相匹配的归档数据类型对应的数据归档存储器中。
本发明实施例提供的数据查询装置,与上述实施例提供的数据查询方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本发明实施例还提供了一种服务器,参见图4所示,该服务器包括处理器130和存储器131,该存储器131存储有能够被处理器130执行的机器可执行指令,该处理器130执行机器可执行指令以实现上述数据查询方法。
进一步地,图4所示的服务器还包括总线132和通信接口133,处理器130、通信接口133和存储器131通过总线132连接。
其中,存储器131可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口133(可以是有线或者无线)实现该***网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线132可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器130可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器130中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器130可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processing,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器131,处理器130读取存储器131中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,该机器可执行指令促使处理器实现上述数据查询方法,具体实现可参见方法实施例,在此不再赘述。
本发明实施例所提供的数据查询方法、装置和服务器的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,网关服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种数据查询方法,其特征在于,包括:
获取数据查询请求;所述数据查询请求包括待查询数据类型及所述待查询数据类型对应的数据范围;
确定所述数据查询请求所属的目标分类业务,在预先设置的各归档数据库中,获取所述目标分类业务对应的目标归档数据库,所述归档数据库是依据预先设置的分类业务,从原始数据库中,提取查询过该分类业务对应的数据构建的;
在所述目标归档数据库中,查找与所述待查询数据类型相匹配的待查询范围;
计算所述数据范围与所述待查询范围的交集;
若所述交集为所述数据范围,基于所述待查询范围获取所述数据查询请求对应的查询结果;
若所述交集不为所述数据范围且不为空,基于所述交集获取第一数据,以及,计算所述数据范围与所述交集的补集,基于所述补集,在所述原始数据库中进行查询,获取第二数据;
合并第一数据以及第二数据,得到所述数据查询请求对应的查询结果。
2.根据权利要求1所述的方法,其特征在于,所述目标归档数据库包括数据归档信息;所述数据归档信息包括归档数据类型及所述归档数据类型对应的归档范围;
在所述目标归档数据库中,查找与所述待查询数据类型相匹配的待查询范围的步骤,包括:
在所述数据归档信息中,查找与所述待查询数据类型匹配的归档数据类型;
如果查找到,获取所述匹配的归档数据类型对应的归档范围,得到所述待查询范围;
如果未查找到,设置所述待查询范围为空。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
如果所述交集为空,基于所述待查询数据类型以及所述待查询数据类型对应的数据范围,在所述原始数据库中进行查询,获取第三数据;
将所述第三数据确定为所述数据查询请求对应的查询结果。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述目标归档数据库还包括数据归档存储器,每一数据归档存储器用于存储一归档数据类型对应的归档数据,所述基于所述待查询范围获取所述数据查询请求对应的查询结果,包括:
从与所述待查询数据类型相匹配的数据归档存储器中,获取所述待查询范围内的归档数据,得到所述查询结果。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
如果未查找到,将所述待查询数据类型作为归档数据类型,将所述数据范围作为所述归档数据类型对应的归档范围,保存至数据归档信息中,将第三数据保存至所述目标归档数据库中所述归档数据类型对应的数据归档存储器中,构建所述第三数据与所述对应的归档范围的映射关系;
如果查找到且所述交集为空,依据所述数据范围更新与所述待查询数据类型相匹配的归档数据类型对应的归档范围,将所述第三数据保存至所述相匹配的归档数据类型对应的数据归档存储器中。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
基于所述数据范围与所述待查询范围的并集更新与所述待查询数据类型相匹配的归档数据类型对应的归档范围;
将所述第二数据保存至所述相匹配的归档数据类型对应的数据归档存储器中。
7.一种数据查询装置,其特征在于,包括:
请求获取模块,用于获取数据查询请求;所述数据查询请求包括待查询数据类型及所述待查询数据类型对应的数据范围;
归档数据库确定模块,用于确定所述数据查询请求所属的目标分类业务,在预先设置的各归档数据库中,获取所述目标分类业务对应的目标归档数据库,所述归档数据库是依据预先设置的分类业务,从原始数据库中,提取查询过该分类业务对应的数据构建的;
范围查找模块,用于在所述目标归档数据库中,查找与所述待查询数据类型相匹配的待查询范围;
交集计算模块,用于计算所述数据范围与所述待查询范围的交集;
第一查询模块,用于若所述交集为所述数据范围,基于所述待查询范围获取所述数据查询请求对应的查询结果;
第二查询模块,用于若所述交集不为所述数据范围且不为空,基于所述交集获取第一数据,以及,计算所述数据范围与所述交集的补集,基于所述补集,在所述原始数据库中进行查询,获取第二数据;
数据合并模块,用于合并第一数据以及第二数据,得到所述数据查询请求对应的查询结果。
8.根据权利要求7所述的装置,其特征在于,所述目标归档数据库包括数据归档信息;所述数据归档信息包括归档数据类型及所述归档数据类型对应的归档范围;
所述范围查找模块还用于:
在所述数据归档信息中,查找与所述待查询数据类型匹配的归档数据类型;
如果查找到,获取所述匹配的归档数据类型对应的归档范围,得到所述待查询范围;
如果未查找到,设置所述待查询范围为空。
9.一种服务器,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1-6任一项所述的方法。
10.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-6任一项所述的方法。
CN202110772830.6A 2021-07-08 2021-07-08 数据查询方法、装置及服务器 Active CN113505142B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110772830.6A CN113505142B (zh) 2021-07-08 2021-07-08 数据查询方法、装置及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110772830.6A CN113505142B (zh) 2021-07-08 2021-07-08 数据查询方法、装置及服务器

Publications (2)

Publication Number Publication Date
CN113505142A CN113505142A (zh) 2021-10-15
CN113505142B true CN113505142B (zh) 2022-06-24

Family

ID=78012158

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110772830.6A Active CN113505142B (zh) 2021-07-08 2021-07-08 数据查询方法、装置及服务器

Country Status (1)

Country Link
CN (1) CN113505142B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114708041A (zh) * 2022-05-16 2022-07-05 北京共识数信科技有限公司 一种基于积分激励的行业数据共享方法、***和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105677685A (zh) * 2014-11-21 2016-06-15 中芯国际集成电路制造(天津)有限公司 数据库***及于数据库***中存储和查询数据的方法
CN106294009A (zh) * 2016-08-05 2017-01-04 北京小米移动软件有限公司 数据库归档方法及***
CN109271355A (zh) * 2018-08-27 2019-01-25 杭州迪普科技股份有限公司 一种清理日志文件缓存的方法及装置
CN110471916A (zh) * 2019-07-03 2019-11-19 平安科技(深圳)有限公司 数据库的查询方法、装置、服务器及介质
CN110837592A (zh) * 2019-11-08 2020-02-25 京东数字科技控股有限公司 数据归档的方法、装置和计算机可读存储介质
CN112860709A (zh) * 2021-03-17 2021-05-28 网易(杭州)网络有限公司 业务指标查询方法、装置、设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9128983B2 (en) * 2010-10-13 2015-09-08 Aol Inc. Systems and methods for query optimization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105677685A (zh) * 2014-11-21 2016-06-15 中芯国际集成电路制造(天津)有限公司 数据库***及于数据库***中存储和查询数据的方法
CN106294009A (zh) * 2016-08-05 2017-01-04 北京小米移动软件有限公司 数据库归档方法及***
CN109271355A (zh) * 2018-08-27 2019-01-25 杭州迪普科技股份有限公司 一种清理日志文件缓存的方法及装置
CN110471916A (zh) * 2019-07-03 2019-11-19 平安科技(深圳)有限公司 数据库的查询方法、装置、服务器及介质
CN110837592A (zh) * 2019-11-08 2020-02-25 京东数字科技控股有限公司 数据归档的方法、装置和计算机可读存储介质
CN112860709A (zh) * 2021-03-17 2021-05-28 网易(杭州)网络有限公司 业务指标查询方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN113505142A (zh) 2021-10-15

Similar Documents

Publication Publication Date Title
US8725730B2 (en) Responding to a query in a data processing system
CN104424258B (zh) 多维数据查询的方法、查询服务器、列存储服务器及***
US20120284270A1 (en) Method and device to detect similar documents
US20070288421A1 (en) Efficient evaluation of object finder queries
EP2812815B1 (en) Web page retrieval method and device
US9465831B2 (en) System and method for optimizing storage of multi-dimensional data in data storage
Chen et al. Top-k term publish/subscribe for geo-textual data streams
CN111008200B (zh) 数据查询方法、装置和服务器
US20140019454A1 (en) Systems and Methods for Caching Data Object Identifiers
US11468031B1 (en) Methods and apparatus for efficiently scaling real-time indexing
CN112115227A (zh) 数据的查询方法、装置、电子设备及存储介质
CN112579898A (zh) 企业信息的管理方法、装置及服务器
CN105005567B (zh) 兴趣点查询方法和***
CN113505142B (zh) 数据查询方法、装置及服务器
CN111488377A (zh) 数据查询方法、装置、电子设备及存储介质
CN113722600B (zh) 应用于大数据的数据查询方法、装置、设备及产品
US9336280B2 (en) Method for entity-driven alerts based on disambiguated features
CN112202889B (zh) 信息的推送方法、装置和存储介质
WO2023151576A1 (zh) 搜索推荐方法、搜索推荐***、计算机设备及存储介质
CN113535966A (zh) 知识图谱的创建方法、信息获取的方法、装置和设备
CN114880329A (zh) 数据查询方法、装置、存储介质及计算机设备
CN114648010A (zh) 数据表标准化方法、装置、设备及计算机存储介质
Lee et al. Supporting efficient distributed skyline computation using skyline views
CN112506953A (zh) 基于结构化查询语言sql的查询方法、装置及存储介质
CN114816219A (zh) 数据写入和读取方法、装置及数据读写***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant