CN116069830A - 信息查询方法、装置、电子设备以及存储介质 - Google Patents
信息查询方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN116069830A CN116069830A CN202310175245.7A CN202310175245A CN116069830A CN 116069830 A CN116069830 A CN 116069830A CN 202310175245 A CN202310175245 A CN 202310175245A CN 116069830 A CN116069830 A CN 116069830A
- Authority
- CN
- China
- Prior art keywords
- document identification
- information
- document
- target
- search
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000012545 processing Methods 0.000 claims description 41
- 230000011218 segmentation Effects 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 14
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- -1 diethyl methyl Chemical group 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 125000002496 methyl group Chemical group [H]C([H])([H])* 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2468—Fuzzy queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Fuzzy Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开公开了信息查询方法、装置、电子设备以及存储介质,涉及计算机技术领域,尤其涉及图数据库技术领域。具体实现方案为:解析待查询语句,得到M个检索词和目标检索类型。针对M个检索词中的每个检索词,根据每个检索词和目标检索类型,通过查询第一索引信息得到与检索词对应的文档标识范围,得到多个文档标识范围。第一索引信息表征检索词、检索类型与文档标识范围的关联关系。从多个文档标识范围中,确定至少两个目标文档标识范围和与目标文档标识范围对应的目标检索词。根据目标检索词和目标检索类型,通过查询第二索引信息得到与相同的文档标识对应的第一目标文档信息。第二检索信息表征检索词、检索类型与文档标识信息的关联关系。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及图数据库技术领域,具体涉及一种信息查询方法、装置、电子设备以及存储介质。
背景技术
图数据库是以点、边为基础存储单元,以高效存储、查询图数据为设计原理的数据管理系统。
由于图数据结构直接存储量节点之间的依赖关系,使得图数据库相较于关系型数据库在关系查询上具有查询效率较高的性能优势,因此,被广泛应用于各个领域。
发明内容
本公开提供了一种信息查询方法、装置、电子设备以及存储介质。
根据本公开的一方面,提供了一种信息查询方法,包括:解析待查询语句,得到M个检索词和目标检索类型,M为大于1的整数。针对M个检索词中的每个检索词,根据每个检索词和目标检索类型,通过查询第一索引信息得到与检索词对应的文档标识范围,得到多个文档标识范围,其中,第一索引信息表征检索词、检索类型与文档标识范围的关联关系。从多个文档标识范围中,确定至少两个目标文档标识范围和与目标文档标识范围对应的目标检索词,其中,至少两个目标文档标识范围具有相同的文档标识。根据目标检索词和目标检索类型,通过查询第二索引信息得到与相同的文档标识对应的第一目标文档信息,其中,第二检索信息表征检索词、检索类型与文档标识信息的关联关系。
根据本公开的另一方面,提供了一种信息查询装置,包括:解析模块、第一查询模块、确定模块和第二查询模块。其中,解析模块,用于解析待查询语句,得到M个检索词和目标检索类型,M为大于1的整数。第一查询模块,用于针对M个检索词中的每个检索词,根据每个检索词和目标检索类型,通过查询第一索引信息得到与检索词对应的文档标识范围,得到多个文档标识范围,其中,第一索引信息表征检索词、检索类型与文档标识范围的关联关系。确定模块,用于从多个文档标识范围中,确定至少两个目标文档标识范围和与目标文档标识范围对应的目标检索词,其中,至少两个目标文档标识范围具有相同的文档标识。第二查询模块,用于根据目标检索词和目标检索类型,通过查询第二索引信息得到与相同的文档标识对应的第一目标文档信息,其中,第二检索信息表征检索词、检索类型与文档标识信息的关联关系。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行如上所述的方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1A示意性示出了根据本公开实施例的应用信息查询方法及装置的示例性系统架构进行信息写入操作的示意图;
图1B示意性示出了根据本公开实施例的应用信息查询方法及装置的示例性系统架构进行信息查询操作的示意图;
图2示意性示出了根据本公开实施例的信息查询方法的流程图;
图3示意性示出了根据本公开实施例的信息查询方法的示意图;
图4示意性示出了根据本公开实施例的对检索字段进行分词处理的示意图;
图5示意性示出了根据本公开实施例的第一索引信息和第二索引信息的索引结构示意图;
图6示意性示出了根据本公开实施例的对多个文档标识数据集进行处理,将多个文档标识数据集中具有相同文档标识的信息确定为第一目标文档信息的示意图;
图7示意性示出了根据本公开另一实施例的信息查询方法的示意图;
图8示意性实处了根据本公开实施例的信息查询装置的框图;以及
图9示意性示出了根据本公开实施例的适于实现信息查询方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
模糊检索是指允许被检索信息和检索语句之间存在一定的差异。根据差异出现的位置可以将模糊检索分为前模糊检索、后模糊检索和前后模糊检索。前模糊检索是指查询字段有固定的前缀的检索。后模糊检索是指查询字段有固定的后缀的检索。前后模糊检索是指查询字段即没有固定的前缀也没有固定的后缀的检索。例如:需要查询一个地址字段,存在一条数据可以是“甲市44乙区”。前模糊检索的查询字段可以是“地址like甲%”。后模糊检索的查询字段可以是“地址like%乙区”。前后模糊检索的查询字段可以是“地址like%乙%”。
对于关系型数据库,一般是通过平衡树(B-Tree)数据结果实现前模糊检索。当进行后模糊检索或前后模糊检索时,需要扫描整个关系型数据库中的数据才能得到检索结果,导致检索效率较低。
对于非关系型数据库,例如:图数据库,一般是依赖于第三方检索服务实现模糊检索的,例如:ElasticSearch全文检索服务。这种检索方式由于涉及到两个数据库系统,存在数据一致性的问题。
鉴于进行模糊检索时查询字段一般是长度不超过50个字符的短文本,本公开实施例提供了一种信息查询方法,包括:解析待查询语句,得到M个检索词和目标检索类型,M为大于1的整数。针对M个检索词中的每个检索词,根据每个检索词和目标检索类型,通过查询第一索引信息得到与检索词对应的文档标识范围,得到多个文档标识范围,其中,第一索引信息表征检索词、检索类型与文档标识范围的关联关系。从多个文档标识范围中,确定至少两个目标文档标识范围和与目标文档标识范围对应的目标检索词,其中,至少两个目标文档标识范围具有相同的文档标识。根据目标检索词和目标检索类型,通过查询第二索引信息得到与相同的文档标识对应的第一目标文档信息,其中,第二检索信息表征检索词、检索类型与文档标识信息的关联关系。通过构建检索词、检索类型于文档标识范围的索引信息,前置化前后模糊检索的求交集过程,缩小数据查询范围,提高检索效率。
图1A示意性示出了根据本公开实施例的应用信息查询方法及装置的示例性系统架构进行信息写入操作的示意图。
如图1所示,在实施例100A中,应用信息查询方法及装置的示例性系统架构可以包括分词模块101、词项字典102、缓存倒排树模块103、不可变倒排树104,倒排索引树模块105、倒排索引模块106。
根据本公开的实施例,待写入信息输入分词模块101中,进行分词,得到多个检索词。词项字典102中可以存储检索词标识与检索词之间的映射关系。可以得到每一个检索词的标识(ID)信息。然后在缓存倒排树模块103中根据待写入信息和检索词标识生成缓存倒排树。缓存倒排树中的索引键可以是检索词标识和检索类型,索引值可以是当前操作数据的类型和与检索词对应的文档标识。操作数据的类型可以是新增或删除。
例如:待写入信息可以包括以下信息:
{“信息ID”:“1”,“公司名称”:“A1”,注册地址:“甲一乙二区”};
{“信息ID”:“2”,“公司名称”:“A2”,注册地址:“甲一市”};
{“信息ID”:“3”,“公司名称”:“A3”,注册地址:“甲一市丙一区”};
{“信息ID”:“4”,“公司名称”:“A3”,注册地址:“甲一市乙二区”};
根据本公开的实施例,通过图数据库生成的与上述待写入信息对应的文档ID,例如:{“信息ID”:“1”,“公司名称”:“A1”,注册地址:“甲一乙二区”}的文档ID可以是“11”。{“信息ID”:“2”,“公司名称”:“A2”,注册地址:“甲一市”}的文档ID可以是“22”。{“信息ID”:“3”,“公司名称”:“A3”,注册地址:“甲一市丙一区”}的文档ID可以是100000。{“信息ID”:“4”,“公司名称”:“A3”,注册地址:“甲一市乙二区”}的文档ID可以是2000000。
根据本公开的实施例,在分词之后,根据每一个检索词对应的文档标识,可以得到表1所示的分词结果:
表1分词结果表
需要说明的是,对于前后模糊检索的信息不需要进行分词处理,前模糊检索的信息保存原始信息,后模糊检索的信息需要进行反转处理,例如:表1中的“区二乙一甲”。
当缓存倒排树模块103中存储数据的数量达到预设值时,可以将缓存倒排树持久化存储在不可变倒排树模块104中。不可变倒排树模块104仅支持数据读取功能,不支持数据写入功能。
倒排索引树模块105可以通过批量读取不可变倒排树模块104中的信息,生成倒排索引树。倒排索引树中的索引键可以是检索词标识和检索类型,索引值可以是文档标识范围。
倒排索引模块106可以根据倒排索引树生成倒排索引信息。倒排索引信息中索引键可以是检索词标识和检索类型,索引值可以是文档标识的集合。
在批量读取不可变倒排树模块104中的信息之后,可以根据读取到的信息对倒排索引树模块105、倒排索引模块106中的索引信息进行更新。例如:读取到的信息在倒排索引树模块105、倒排索引模块106中的索引信息中不存在,可以相应地新增一条索引信息。
图1B示意性示出了根据本公开实施例的应用信息查询方法及装置的示例性系统架构进行信息查询操作的示意图。
如图1B所示,在实施例100B中,当进行模糊检索时,待查询语句输入分词模块101,得到多个检索词。再将每个检索词输入倒排索引树模块106,得到与每个检索词对应的文档标识范围,并初步筛选出存在相同文档标识的文档标识范围。再根据筛选得到的文档标识范围输入倒排索引模块106,查询文档标识的集合,并通过对文档标识的集合求交集,得到与待查询语句相对应的文档标识。
需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
在本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
图2示意性示出了根据本公开实施例的信息查询方法的流程图。
如图2所示,该方法包括操作S210~S240。
在操作S210,解析待查询语句,得到M个检索词和目标检索类型,M为大于1的整数。
在操作S220,针对M个检索词中的每个检索词,根据每个检索词和目标检索类型,通过查询第一索引信息得到与检索词对应的文档标识范围,得到多个文档标识范围,其中,第一索引信息表征检索词、检索类型与文档标识范围的关联关系。
在操作S230,从多个文档标识范围中,确定至少两个目标文档标识范围和与目标文档标识范围对应的目标检索词,其中,至少两个目标文档标识范围具有相同的文档标识。
在操作S240,根据目标检索词和目标检索类型,通过查询第二索引信息得到与相同的文档标识对应的第一目标文档信息,其中,第二检索信息表征检索词、检索类型与文档标识信息的关联关系。
根据本公开的实施例,待查询语句可以包括检索字段和检索式。例如:待查询语句可以是“地址like%甲一市乙二区%”,其中,检索字段可以是“甲一市乙二区”,检索式“%甲一市乙二区%”表示针对该待查询语句的目标检索类型是前后模糊检索。通过解析待查询语句“地址like%甲一市乙二区%”,可以得到检索词:“甲一”、“甲一市”、“乙二区”。
根据本公开的实施例,文档标识范围可以是由最大文档标识和最小文档标识组成的标识区间,在该文档标识范围内,具体的文档标识可以是连续的,也可以是不连续的。
例如:表1中与检索词“甲一”对应的文档标识包括:11,22,100000,2000000。可以看出在与检索词“甲一”对应的文档标识中,最大文档标识是2000000,最小文档标识是11。则在第一索引信息中与检索词“甲一”对应的文档标识范围可以是(11~2000000)。
根据本公开的实施例,检索类型可以包括:前模糊检索、后模糊检索、前后模糊检索和精确检索。针对不同的检索类型,相同的检索词对应的文档标识可以是不同的,因此,在第一索引信息中,可以以检索词和检索类型为索引键,以文档标识范围为索引值。为了进一步节约数据存储空间,第一索引信息中的索引键,还可以由检索词ID和检索类型组成。
根据本公开的实施例,对于前后模糊检索的过程,需要得到是多个检索词对应的文档的交集。针对每个检索词可以通过查询第一索引信息得到至少一个文档标识范围,与M个检索词对应的可以是多个文档标识范围。
例如:检索词“甲一市”对应的文档标识范围可以是(11~20000)检索词“甲一”对应的文档标识范围可以是(30000~90000)。检索词“乙二区”对应的文档标识范围可以是(12~119)。从文档标识范围可以看出(11~20000)与(12~119)中具有相同的文档标识,即存在交集。可以将(11~20000)与(12~119)确定为目标文档标识范围,在进行具体文档标识查询时,则可以不在查询(30000~90000)中的具体文档标识,达到缩小信息查询范围的技术效果。
根据本公开的实施例,第二索引信息的索引键可以是检索词和检索类型,索引值可以是文档标识信息。可以通过与目标文档标识范围对应的目标检索词查询第二索引信息,以得到第一目标文档信息。
例如:目标检索词可以是“甲一市”、“乙二区”。与检索词“甲一市”,目标检索类型为“前后模糊检索”相对应的文档标识信息可以是:(11,22,10000,20000)。与检索词“甲一市”,目标检索类型为“前后模糊检索”相对应的文档标识信息可以是:(12,22,100,119)。在上述文档标识信息中相同的文档标识是“22”,则第一目标文档是文档标识为“22”的文档。第一目标文档信息可以是文档标识信息,也可以是文档中存储的其他属性信息。
根据本公开的实施例,通过第一索引信息得到与检索词对应的多个文档标识范围,可以根据文档标识范围初步判断存在交集的文档标识范围,将前后模糊检索中对具体文档标识进行求取交集的过程前置化,从而缩小查询第二索引信息时的信息查询的范围,提高检索效率。
下面参考图3~图6,结合具体实施例对图2所示的方法做进一步说明。
图3示意性示出了根据本公开实施例的信息查询方法的示意图。
如图3所示,该实施例300中,待查询语句可以是“注册地址like%甲一市乙二区%”。检索字段可以是“甲一市乙二区”301,目标检索类型可以是前后模糊检索。对“甲一市乙二区”301进行分词,得到检索词:“甲一市”302、“一市乙”303、“市乙二”304、“乙二区”305。通过查询第一索引信息,得到多个文档标识范围分别是:与“甲一市”302对应的文档标识范围“ID:1024~2011”(306),与“一市乙”303对应的文档标识范围“ID:281~359”(307),与“市乙二”304对应的文档标识范围“ID:3125~3328”(308),与“乙二区”305对应的文档标识范围“ID:1120~2211”(309)。
根据本公开的实施例,根据文档标识范围,可以将存在交集的文档标识范围筛选出来,得到目标文档标识范围和与目标文档标识范围对应的目标检索词(310):“ID:1024~2011和甲一市”、“ID:1120~2211和乙二区”。
根据本公开的实施例,根据目标检索词“甲一市”(302)、“乙二区”(305),通过查询第二索引信息,得到两个具体文档标识:“ID:1024/1025/1121/2011”(311)、“ID:1120/1121/2011/2211”(312)。将具有相同文档标识的文档标识“ID:1121/2011”(313)确定为本次信息查询的目标文档标识,即第一目标文档信息。
根据本公开的实施例,上述操作S210可以包括如下操作:
根据所述检索式,确定目标检索类型。对检索字段进行分词处理,得到M个检索词。
根据本公开的实施例,对于不同的检索场景,可以通过配置信息设定针对不同检索场景的检索式。例如:检索式“XX like A%”可以表示前模糊检索场景,则该检索式对应的目标检索类型是前模糊检索类型。检索式“XX like%A%”可以表示前后模糊检索场景,则该检索式对应的目标检索类型是前后模糊检索类型。检索式“XX=A”可以标识精确检索场景,则该检索式对应的目标检索类型是精确检索类型。
根据本公开的实施例,对检索字段进行分词处理,可以直接对检索字段通过源码分析器(IK分析器)进行分词处理。例如:检索字段是“甲一市乙二区”,以3个字符为分词步长,对检索字段进行分词处理,可以得到检索词“甲一市”、“乙二区”。
由于针对图数据库进行模糊检索时,检索字段一般是长度不超过50个字符的短文本,直接对检索字段进行切词,受限于检索字段的长度,得到的检索词较少,导致模糊检索的结果准确率较低。
根据本公开的实施例,对检索字段进行分词处理,得到M个检索词可以包括如下操作:
在检索字段中的预定位置插入空字符,得到待处理字段。按照预定步长对待处理字段进行分词处理,得到M个检索词。
图4示意性示出了根据本公开实施例的对检索字段进行分词处理的示意图。
如图4所示,该实施例400中,检索字段是“甲一市乙二区”410,在检索字段的前、后各插入2个空字符,得到待处理字段411。预定步长可以是3个字符,对待处理字段411进行分词,从左侧起第一个虚线框中包括2个空字符和“甲”,则得到的检索词是“甲”412。第二个虚线框中包括1个空字符、“甲”和“一”,则得到的检索词是“甲一”413。以此类推,最后一个虚线框中包括“区”和2个空字符,则得到的检索词是“区”419。
根据本公开的实施例,对待处理字段411进行分词处理之后,得到的检索词包括:“甲”412、“甲一”413、“甲一市”414、“一市乙”415、“市乙二”416、“乙二区”417、“二区”418、“区”419。检索词的数量为8个。与直接对检索字段进行分词相比,在分词步长相同的情况下,检索词的数量增加了6个,可以提高检索到更符合检索意图的检索结果,有效提高模糊检索结果的准确率。
根据本公开的实施例,本公开实施例通过插入空字符的方式增加分词处理之后得到的检索词的数量,以提高模糊检索的结果准确率。
根据本公开的实施例,多个文档标识范围为N个,N为大于1的整数,从多个文档标识范围中,确定至少两个目标文档标识范围和与目标文档标识范围对应的目标检索词,可以包括如下操作:
根据第n个文档标识范围,得到第一起始文档标识和第一终止文档标识,n为大于等于1且小于N的整数。根据第n+1个文档标识范围,得到第二起始文档标识和第二终止文档标识。根据第一起始文档标识、第二起始文档标识、第一终止文档标识和第二终止文档标识,确定目标文档标识范围和目标检索词。
根据本公开的实施例,对于第n个文档标识范围,第一起始文档标识可以是第n个文档标识范围内的全部文档标识中的最小文档标识,第一终止文档标识可以是第n个文档标识范围内全部文档标识中的最大文档标识。
例如:第n个文档标识范围可以是(11~200000),第一起始文档标识可以是“11”,第一终止文档标识可以是“200000”。
根据本公开的实施例,第二起始文档标识与第一起始文档标识表征的含义相同、第二终止文档标识与第二终止文档标识表征的含义相同,在此不做赘述。
根据本公开实施例,可以将文档标识范围存在交集的文档标识范围确定为目标文档标识范围。
根据本公开的实施例,根据第一起始文档标识、第二起始文档标识、第一终止文档标识和第二终止文档标识,确定目标文档标识范围和目标检索词,可以包括如下操作:
在确定第二起始文档标识大于等于第一起始文档标识,且小于等于第一终止文档标识的情况下,确定第n个文档标识范围和第n+1个文档标识范围为目标文档标识范围。在确定第二终止文档标识小于等于第一终止文档标识,且大于等于第一起始文档标识的情况下,确定第n个文档标识范围和第n+1个文档标识范围为目标文档标识范围。根据目标文档标识范围,通过查询第一索引信息,得到目标检索词。
例如:与检索词“甲一”对应的文档标识范围R1可以是(11~2000);与检索词“甲一市”对应的文档标识范围R2可以是(3000~9000);与检索词“乙二区”对应的文档标识范围R3可以是(22~119)。
根据本公开的实施例,文档标识范围R1的最小文档标识是“11”,最大文档标识是“2000”。文档标识范围R2的最小文档标识是“3000”,最大文档标识是“9000”。文档标识范围R2的最小文档标识大于文档标识范围R1的最大文档标识,可以确定文档标识范围R1与文档标识范围R2之间不存在交集,即不具有相同标识的文档。
根据本公开的实施例,文档标识范围R3的最小文档标识是“22”,文档标识范围R3的最大文档标识是“119”。文档标识范围R3的最小文档标识是“22”大于文档标识范围R1的最小文档标识是“11”,且小于文档标识范围R1的最大文档标识是“2000”,可以确定文档标识范围R3与文档标识范围R1存在交集,即具有相同标识的文档。
根据本公开的实施例,可以将文档标识范围R3与文档标识范围R1确定为目标文档标识范围。将与文档标识范围R3对应的检索词“乙二区”和与文档标识范围R1对应的检索词“甲一市”确定为目标检索词。
根据本公开的实施例,通过文档标识范围可以初步筛选出具有相同文档标识的文档标识范围,可以缩小对具体文档标识查询过程中的信息查询范围,提高检索效率。
由于图数据的存储结构是基于RockDB结构实现的,单次读写操作性能的最优字符数范围是2K~8K。而对于存储数据达到百万亿别,甚至千万级别的图数据库,若以实际文档标识构建索引信息,导致索引键值对的字符数过大,影响图数据库的读写性能。
有鉴于此,本公开实施例提出了以索引起始文本标识、起始文档的标识缩放信息、起始文档偏移信息、终止文档的标识缩放信息和终止文档偏移信息构建的数据结构。
根据本公开的实施例,第n个文档标识范围包括索引起始文档标识、第一标识缩放信息,第一文档偏移信息、第二标识缩放信息和第二文档偏移信息。根据第n个文档标识范围,得到第一起始文档标识和第一终止文档标识,可以包括如下操作:
根据索引起始文档标识、第一标识缩放信息和第一文档偏移信息,得到第一起始文档标识。根据索引起始文档标识、第二标识缩放信息和第二文档偏移信息,得到第一终止文档标识。
根据本公开的实施例,第一标识缩放信息表征起始标识缩放信息,第一文档偏移信息表征起始文档偏移信息。第二标识缩放信息表征终止标识缩放信息,第二文档偏移信息表征终止文档偏移信息。标识缩放信息表征相对于索引起始文档标识的缩放信息。
根据本公开的实施例,第一起始文档标识可以按式(1)得到:
第一起始文档标识=索引起始文档标识×第一标识缩放信息+第一文档偏移信息(1)。
根据本公开的实施例,第一终止文档标识可以按式(2)得到:
第一终止文档标识=索引起始文档标识×第二标识缩放信息+第二文档偏移信息(2)
图5示意性示出了根据本公开实施例的第一索引信息和第二索引信息的索引结构示意图。
如图5所示,该实施例500中包括第一索引信息510和第二索引信息520。第一索引信息510包括索引键5101、索引键5103。与索引键5101相对应的是索引值5102,与索引键5103相对应的是索引值5104。
根据本公开的实施例,在第一索引信息中,索引结构如下:索引键可以是“检索词检索类型索引起始文档标识”。索引值可以是“(第一文档标识范围)|(第二文档标识范围)|...|(第N文档标识范围)”。
根据本公开的实施例,索引起始文档标识即可以作为索引键,也可以作为索引值,本公开实施例对此不做具体限定。
如图5所示的第一索引信息中,索引起始文档标识在索引键中,索引值中的文档标识范围可以包括仅第一标识缩放信息、第一文档偏移信息、第二标识缩放信息、第二文档偏移信息。文档标识范围可以表示为(第一标识缩放信息,第一文档偏移信息,第二标识缩放信息,第二文档偏移信息)
例如:在索引键510_1“1_0_1024”中检索词可以是“1”、检索类型可以是“0”、索引起始文档标识可以是“1024”。在索引值5103中可以包括3个文档标识范围。其中,第一文档标识范围可以是(1,1,1,200)、第二文档标识范围可以是(2,1,2,300)第三文档标识范围可以是(10,4,10,200)。
例如:在第一文档标识范围(1,1,1,200)中,第一个“1”表示第一标识缩放信息,第二个“1”表示第一文档偏移信息,第三个“1”表示第二标识缩放信息,“200”表示第二文档标识范围。
根据本公开的实施例,按照式(1)所示的公式可以得到在第一文档标识范围(1,1,1,200)中,最小文档标识是1024×1+1=1025。按照是(2)所示的公式可以得到在第一文档标识范围(1,1,1,200)中最大文档标识是1024×1+200=1224。则(1,1,1,200)表示文档标识大于等于1025且小于等于1224的文档标识集合。
根据本公开的实施例,第二索引信息也可以包括索引键和索引值。在第一索引信息中,索引结构如下:索引键可以是“检索词检索类型索引起始文档标识”。索引值可以是“第一文档标识|第二文档标识|...|第N文档标识”。
例如:与第一文档标识范围(1,1,1,200)对应的是大于等于1025且小于等于1224文档标识集合,索引值可以是1025|1026|...|1224|。
需要说明的是,属于第一文档标识范围内的具体文档标识可以是不连续的。例如:与第一文档标识范围(1,1,1,200)对应的是大于等于1025且小于等于1224文档标识集合,可以仅包括文档标识为1025、1026、1224的三个文档。
根据本公开的实施例,为了缩小索引信息的字符数,具体文档标识也可以利用索引起始文档标识和文档偏移信息的数据结构进行表示。
如图5所示,在第二索引信息520中,索引键520_1“1_0_1024”中“1”表示检索词,“0”表示检索类型,“1024”表示索引起始文档标识。索引值520_2“1|2|101|...|200”中“1”、“2”、“101”、“200”均表示文档偏移信息。
根据本公开的实施例,可以按照式(3)根据索引起始文档标识和文档偏移信息得到具体文档标识:
具体文档标识=索引起始文档标识+文档偏移信息 (3)
例如:对于索引键520_1“1_0_1024”、索引值5202“1|2|101|...|200”这一对索引信息,索引起始文档标识是“1024”,文档偏移信息分别是“1”、“2”、“101”、...、“200”。因此,索引值5202表示的具体文档标识为:“1025”、“1026”、“1127”、...、“1224”。
根据本公开的实施例,利用索引起始文档标识、起始标识缩放信息、起始标识偏移信息、终止标识缩放信息和终止标识偏移信息的数据结构,存储文档标识范围,可以有效缩小索引信息的字符数,提高图数据库的检索性能。
根据本公开的实施例,上述操作S240可以包括如下操作:
根据目标检索词和目标检索类型,通过查询第二索引信息,得到多个文档标识数据集。对多个文档标识数据集进行处理,将多个文档标识数据集中具有相同文档标识的信息确定为第一目标文档信息。
根据本公开的实施例,文档标识数据集可以是由具体文档标识组成的数据集。
例如:目标检索词可以是“甲一市”和“乙二区”,目标检索类型可以是前后模糊检索,通过查询第二索引信息,得到的与检索词“甲一市”相对应的文档标识数据集可以是(11/22/1024/2000),与检索词“乙二区”相对应的文档标识数据集可以是(11/22/1024/3000)。则可以确定第一目标文档信息为文档标识“11”、文档标识“22”和文档标识“1024”。
在实际的应用场景中,用户可以指定检索结果的数量。例如:待查询的信息可以是查询注册地址在甲一市乙二区的100家公司。在图数据库中,注册地址在甲一市乙二区的公司可能存在1000家。而仅需要查询其中的100家公司。在这种情况下,采用传统的模糊检索方式进行检索时,需要将全部的1000家公司查询出来之后,再从中选择100家公司。
根据本公开的实施例,对多个文档标识数据集进行处理,将多个文档标识数据集中具有相同文档标识的信息确定为第一目标文档信息可以包括如下操作:
确定单次查询数量信息和目标数量。根据单次查询数量信息,对多个文档标识数据集中的部分文档标识数据集进行处理,得到具有相同文档标识的第一文档的信息。在确定第一文档的数量满足目标数量的情况下,将第一文档的信息确定为第一目标文档信息。
根据本公开的实施例,目标数量可以表征用户指定的检索结果数量。单次查询数量信息可以表征单次处理文档标识数据集的个数。例如:具有相同文档标识的文档标识数据集可以有10个,单次查询数量信息可以是2,第一次可以仅从10个文档标识数据集中随机抽取2个文档标识数据集进行求交集,得到这2个文档标识数据集中具有相同文档标识的第一文档的信息。
根据本公开的实施例,当第一文档的数量已满足目标数量时,可以不再处理其他8个文档标识数据集,则将第一文档的信息确定为第一目标文档信息。当第一文档的数量未满足目标数量时,可以按照单次查询数量信息再从其余的8个文档标识数据集中随机抽取2个文档标识数据集进行求交集,得到具有相同文档标识的第二文档的信息。当第一文档的数量和第二文档的数量之和已满足目标数量时,可以不再处理其余的6个文档标识数据集。
图6示意性示出了根据本公开实施例的对多个文档标识数据集进行处理,将多个文档标识数据集中具有相同文档标识的信息确定为第一目标文档信息的示意图。
如图6所示,该实施例600中,单次查询数据可以是2,可以将2个文档标识数据集作为一个文件块进行处理。
例如:文件块641包括文档标识数据集(ID:1024/1025/.../2010/2011)和(ID:1120/1121/.../2210/2211)。文件块642包括文档标识数据集(ID:1120/1121/.../2210/2211)和(ID:1189/1190/.../2202/2203)。文件块643包括文档标识数据集(ID:1189/1190/.../2202/2203)和(ID:1035/1036/.../1988/1989)。
根据本公开的实施例,对文件块641中的文档标识数据集进行求交集,得到第一文档的标识集合644。对文件块642中的文档标识数据集进行求交集,得到第二文档的标识集合645。第一文档的标识集合644中文档的数量和第二文档的标识集合645中文档的数量达到目标数量的情况下,得到第一目标文档的信息646,即第一目标文档的信息中包括第一文档的标识集合644和第二文档的标识集合645中的全部文档标识。
根据本公开的实施例,通过确定单次查询数量信息和目标数量,可以在满足用户检索需求的情况下,减少冗余的检索次数,提高检索效率。
由于在对图数据库进行信息写入操作时,写入的信息先进行缓存,生成缓存倒排树。当缓存倒排树中的字符数达到预设值时,才生成不可变缓存倒排树,再依次生成倒排索引树中的第一索引信息和倒排索引表中的第二索引信息。而在进行信息查询时,是根据检索词直接查询倒排索引树和倒排索引表中的信息。因此,当在信息写入之后的较短时间内进行信息查询,可能存在第一索引信息和第二索引信息未及时更新,导致数据不一致的问题。
为了解决数据不一致的问题,可以根据检索词对检索类型再对缓存倒排树和不可变缓存倒排树中的信息进行查询,以及时更新检索结果中的第一目标文档标识信息。
根据本公开的实施例,上述信息查询方法还包括:
根据每个检索词和目标检索类型,通过查询第三索引信息,得到第二目标文档信息和数据操作类型信息,其中,第三索引信息表征检索词、文档标识信息、数据操作类型与检索类型的关联关系,第二索引信息是对第三索引信息进行合并处理得到的。根据第二目标文档信息和数据操作类型信息对第一目标文档信息进行处理,得到第三目标文档标识信息。
根据本公开的实施例,数据操作类型可以包括新增操作和删除操作。
图7示意性示出了根据本公开另一实施例的信息查询方法的示意图。
如图7所示,在第三索引信息704中,索引键可以是“检索词文档标识信息”,索引值可以是“数据操作类型检索类型”。例如:索引键“1123456”中“1”表示检索词,“123456”表示文档标识信息。索引值“13”中“1”表示数据操作类型,“3”表示检索类型。
根据本公开的实施例,根据检索词+检索类型703、第一索引信息702和第二索引信息701按照前文所述的信息查询方法得到第一目标文档信息705。根据检索词+检索类型703和第三索引信息704得到第二文档信息706和针对文档标识的数据操作类型信息707,得到第三目标文档信息708。
例如:第一目标文档信息可以包括文档标识“11”、“123456”、“2000”。通过查询第三索引信息得到的第二文档标识信息可以是文档标识“123456”,与文档标识“123456”相对应的数据操作类型可以是删除操作,则可以将第一目标文档信息中的文档标识“123456”进行删除,得到的第三目标文档信息可以包括文档标识“11”、“2000”。
根据本公开的实施例,按照第三索引信息中的数据操作类型和第二目标文档信息对第一目标文档信息进行及时更新,可以有效解决第二索引信息和第一索引信息的滞后更新导致的信息不一致问题。
图8示意性示出了根据本公开实施例的信息查询装置的框图。
如图8所示,该信息查询装置800可以包括解析模块810、第一查询模块820、确定模块830和第二查询模块840。
解析模块810,用于解析待查询语句,得到M个检索词和目标检索类型,M为大于1的整数。
第一查询模块820,用于针对M个检索词中的每个检索词,根据每个检索词和目标检索类型,通过查询第一索引信息得到与检索词对应的文档标识范围,得到多个文档标识范围,其中,第一索引信息表征检索词、检索类型与文档标识范围的关联关系。
确定模块830,用于从多个文档标识范围中,确定至少两个目标文档标识范围和与目标文档标识范围对应的目标检索词,其中,至少两个目标文档标识范围具有相同的文档标识。
第二查询模块840,用于根据目标检索词和目标检索类型,通过查询第二索引信息得到与相同的文档标识对应的第一目标文档信息,其中,第二检索信息表征检索词、检索类型与文档标识信息的关联关系。
根据本公开的实施例,解析模块810可以包括第一确定子模块和分词子模块。其中,第一确定子模块,用于根据检索式,确定目标检索类型。分词子模块,用于对检索字段进行分词处理,得到M个检索词。
根据本公开的实施例,分词子模块可以包括插入单元和分词单元。其中,插入单元,用于在检索字段中的预定位置插入空字符,得到待处理字段。分词单元,用于按照预定步长对待处理字段进行分词处理,得到M个检索词。
根据本公开的实施例,多个文档标识范围为N个,N为大于1的整数,确定模块可以包括:第一获得子模块、第二获得子模块和第二确定子模块。其中,第一获得子模块,用于根据第n个文档标识范围,得到第一起始文档标识和第一终止文档标识,n为大于等于1且小于N的整数。第二获得子模块,用于根据第n+1个文档标识范围,得到第二起始文档标识和第二终止文档标识。第二确定子模块,用于根据第一起始文档标识、第二起始文档标识、第一终止文档标识和第二终止文档标识,确定目标文档标识范围和目标检索词。
根据本公开的实施例,第n个文档标识范围包括索引起始文档标识、第一标识缩放信息,第一文档偏移信息、第二标识缩放信息和第二文档偏移信息,第一获得子模块可以包括:第一获得单元和第二获得单元。其中,第一获得单元,用于根据索引起始文档标识、第一标识缩放信息和第一文档偏移信息,得到第一起始文档标识。第二获得单元,用于根据索引起始文档标识、第二标识缩放信息和第二文档偏移信息,得到第一终止文档标识。
根据本公开的实施例,第二确定子模块可以包括:第一确定单元、第二确定单元和第三获得单元。其中,第一确定单元,用于在确定第二起始文档标识大于等于第一起始文档标识,且小于等于第一终止文档标识的情况下,确定第n个文档标识范围和第n+1个文档标识范围为目标文档标识范围。第二确定单元,用于在确定第二终止文档标识小于等于第一终止文档标识,且大于等于第一起始文档标识的情况下,确定第n个文档标识范围和第n+1个文档标识范围为目标文档标识范围。第三获得单元,用于根据目标文档标识范围,通过查询第一索引信息,得到目标检索词。
根据本公开的实施例,第二查询模块240可以包括:查询子模块和处理子模块。其中,查询子模块,用于根据目标检索词和目标检索类型,通过查询第二索引信息,得到多个文档标识数据集。处理子模块,用于对多个文档标识数据集进行处理,将多个文档标识数据集中具有相同文档标识的信息确定为第一目标文档信息。
根据本公开的实施例,处理子模块可以包括:第三确定单元、处理单元和第四确定单元。其中,第三确定单元,用于确定单次查询数量信息和目标数量。确定单元,用于根据单次查询数量信息,对多个文档标识数据集中的部分文档标识数据集进行处理,得到具有相同文档标识的第一文档的信息。第四确定单元,用于在确定第一文档的数量满足目标数量的情况下,将第一文档的信息确定为第一目标文档信息。
根据本公开的实施例,上述信息查询装置800还可以包括第三查询模块和获得模块。其中,第三查询模块,用于根据每个检索词和目标检索类型,通过查询第三索引信息,得到第二目标文档信息和数据操作类型信息,其中,第三索引信息表征检索词、文档标识信息、数据操作类型与检索类型的关联关系,第二索引信息是对第三索引信息进行合并处理得到的。获得模块,用于根据第二目标文档信息和数据操作类型信息对第一目标文档信息进行处理,得到第三目标文档标识信息。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
根据本公开的实施例,一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如上所述的方法。
根据本公开的实施例,一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行如上所述的方法。
根据本公开的实施例,一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现如上所述的方法。
图9示出了可以用来实施本公开的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图9所示,设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如信息查询方法。例如,在一些实施例中,信息查询方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序加载到RAM 903并由计算单元901执行时,可以执行上文描述的信息查询方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行信息查询方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以是分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种信息查询方法,包括:
解析待查询语句,得到M个检索词和目标检索类型,M为大于1的整数;
针对所述M个检索词中的每个检索词,根据每个检索词和所述目标检索类型,通过查询第一索引信息得到与所述检索词对应的文档标识范围,得到多个文档标识范围,其中,所述第一索引信息表征检索词、检索类型与文档标识范围的关联关系;
从所述多个文档标识范围中,确定至少两个目标文档标识范围和与所述目标文档标识范围对应的目标检索词,其中,所述至少两个目标文档标识范围具有相同的文档标识;以及
根据所述目标检索词和所述目标检索类型,通过查询第二索引信息得到与所述相同的文档标识对应的第一目标文档信息,其中,所述第二检索信息表征检索词、检索类型与文档标识信息的关联关系。
2.根据权利要求1所述的方法,其中,所述待查询语句包括检索字段和检索式;所述解析待查询语句,得到M个检索词和目标检索类型,包括:
根据所述检索式,确定所述目标检索类型;以及
对所述检索字段进行分词处理,得到所述M个检索词。
3.根据权利要求2所述的方法,其中,所述对所述检索字段进行分词处理,得到所述M个检索词,包括:
在所述检索字段中的预定位置插入空字符,得到待处理字段;以及
按照预定步长对所述待处理字段进行分词处理,得到所述M个检索词。
4.根据权利要求1所述的方法,其中,所述多个文档标识范围为N个,N为大于1的整数,所述从所述多个文档标识范围中,确定至少两个目标文档标识范围和与所述目标文档标识范围对应的目标检索词,包括:
根据第n个文档标识范围,得到第一起始文档标识和第一终止文档标识,n为大于等于1且小于N的整数;
根据第n+1个文档标识范围,得到第二起始文档标识和第二终止文档标识;以及
根据所述第一起始文档标识、所述第二起始文档标识、所述第一终止文档标识和所述第二终止文档标识,确定所述目标文档标识范围和所述目标检索词。
5.根据权利要求4所述的方法,其中,所述第n个文档标识范围包括索引起始文档标识、第一标识缩放信息,第一文档偏移信息、第二标识缩放信息和第二文档偏移信息,所述根据第n个文档标识范围,得到第一起始文档标识和第一终止文档标识,包括:
根据所述索引起始文档标识、所述第一标识缩放信息和第一文档偏移信息,得到所述第一起始文档标识;以及
根据所述索引起始文档标识、所述第二标识缩放信息和所述第二文档偏移信息,得到所述第一终止文档标识。
6.根据权利要求4所述的方法,其中,所述根据所述第一起始文档标识、所述第二起始文档标识、所述第一终止文档标识和所述第二终止文档标识,确定所述目标文档标识范围和所述目标检索词,包括:
在确定所述第二起始文档标识大于等于所述第一起始文档标识,且小于等于所述第一终止文档标识的情况下,确定所述第n个文档标识范围和所述第n+1个文档标识范围为所述目标文档标识范围;
在确定所述第二终止文档标识小于等于所述第一终止文档标识,且大于等于所述第一起始文档标识的情况下,确定所述第n个文档标识范围和所述第n+1个文档标识范围为所述目标文档标识范围;以及
根据所述目标文档标识范围,通过查询所述第一索引信息,得到所述目标检索词。
7.根据权利要求1所述的方法,其中,所述根据所述目标检索词和所述目标检索类型,通过查询第二索引信息得到与所述相同的文档标识对应的第一目标文档信息,包括:
根据所述目标检索词和所述目标检索类型,通过查询所述第二索引信息,得到多个文档标识数据集;以及
对所述多个文档标识数据集进行处理,将所述多个文档标识数据集中具有相同文档标识的信息确定为所述第一目标文档信息。
8.根据权利要求7所述的方法,其中,所述对所述多个文档标识数据集进行处理,将所述多个文档标识数据集中具有相同文档标识的信息确定为所述第一目标文档信息包括:
确定单次查询数量信息和目标数量;
根据所述单次查询数量信息,对所述多个文档标识数据集中的部分文档标识数据集进行处理,得到具有相同文档标识的第一文档的信息;以及
在确定所述第一文档的数量满足所述目标数量的情况下,将所述第一文档的信息确定为所述第一目标文档信息。
9.根据权利要求1所述的方法,还包括:
根据所述每个检索词和所述目标检索类型,通过查询第三索引信息,得到第二目标文档信息和数据操作类型信息,其中,所述第三索引信息表征所述检索词、文档标识信息、数据操作类型与检索类型的关联关系,所述第二索引信息是对所述第三索引信息进行合并处理得到的;以及
根据所述第二目标文档信息和所述数据操作类型信息对所述第一目标文档信息进行处理,得到第三目标文档标识信息。
10.一种信息查询装置,包括:
解析模块,用于解析待查询语句,得到M个检索词和目标检索类型,M为大于1的整数;
第一查询模块,用于针对所述M个检索词中的每个检索词,根据每个检索词和所述目标检索类型,通过查询第一索引信息得到与所述检索词对应的文档标识范围,得到多个文档标识范围,其中,所述第一索引信息表征检索词、检索类型与文档标识范围的关联关系;
确定模块,用于从所述多个文档标识范围中,确定至少两个目标文档标识范围和与所述目标文档标识范围对应的目标检索词,其中,所述至少两个目标文档标识范围具有相同的文档标识;以及
第二查询模块,用于根据所述目标检索词和所述目标检索类型,通过查询第二索引信息得到与所述相同的文档标识对应的第一目标文档信息,其中,所述第二检索信息表征检索词、检索类型与文档标识信息的关联关系。
11.根据权利要求10所述的装置,其中,所述解析模块包括:
第一确定子模块,用于根据所述检索式,确定所述目标检索类型;以及
分词子模块,用于对所述检索字段进行分词处理,得到所述M个检索词。
12.根据权利要求11所述的装置,其中,所述分词子模块包括:
插入单元,用于在所述检索字段中的预定位置插入空字符,得到待处理字段;以及
分词单元,用于按照预定步长对所述待处理字段进行分词处理,得到所述M个检索词。
13.根据权利要求10所述的装置,其中,所述多个文档标识范围为N个,N为大于1的整数,所述确定模块包括:
第一获得子模块,用于根据第n个文档标识范围,得到第一起始文档标识和第一终止文档标识,n为大于等于1且小于N的整数;
第二获得子模块,用于根据第n+1个文档标识范围,得到第二起始文档标识和第二终止文档标识;以及
第二确定子模块,用于根据所述第一起始文档标识、所述第二起始文档标识、所述第一终止文档标识和所述第二终止文档标识,确定所述目标文档标识范围和所述目标检索词。
14.根据权利要求13所述的装置,其中,所述所述第n个文档标识范围包括索引起始文档标识、第一标识缩放信息,第一文档偏移信息、第二标识缩放信息和第二文档偏移信息,所述第一获得子模块包括:
第一获得单元,用于根据所述索引起始文档标识、所述第一标识缩放信息和第一文档偏移信息,得到所述第一起始文档标识;以及
第二获得单元,用于根据所述索引起始文档标识、所述第二标识缩放信息和所述第二文档偏移信息,得到所述第一终止文档标识。
15.根据权利要求13所述的装置,其中,所述第二确定子模块包括:
第一确定单元,用于在确定所述第二起始文档标识大于等于所述第一起始文档标识,且小于等于所述第一终止文档标识的情况下,确定所述第n个文档标识范围和所述第n+1个文档标识范围为所述目标文档标识范围;
第二确定单元,用于在确定所述第二终止文档标识小于等于所述第一终止文档标识,且大于等于所述第一起始文档标识的情况下,确定所述第n个文档标识范围和所述第n+1个文档标识范围为所述目标文档标识范围;以及
第三获得单元,用于根据所述目标文档标识范围,通过查询所述第一索引信息,得到所述目标检索词。
16.根据权利要求10所述的装置,其中,所述第二查询模块包括:
查询子模块,用于根据所述目标检索词和所述目标检索类型,通过查询所述第二索引信息,得到多个文档标识数据集;以及
处理子模块,用于对所述多个文档标识数据集进行处理,将所述多个文档标识数据集中具有相同文档标识的信息确定为所述第一目标文档信息。
17.根据权利要求16所述的装置,其中,所述处理子模块包括:
第三确定单元,用于确定单次查询数量信息和目标数量;
处理单元,用于根据所述单次查询数量信息,对所述多个文档标识数据集中的部分文档标识数据集进行处理,得到具有相同文档标识的第一文档的信息;以及
第四确定单元,用于在确定所述第一文档的数量满足所述目标数量的情况下,将所述第一文档的信息确定为所述第一目标文档信息。
18.根据权利要求10所述的装置,还包括:
第三查询模块,用于根据所述每个检索词和所述目标检索类型,通过查询第三索引信息,得到第二目标文档信息和数据操作类型信息,其中,所述第三索引信息表征所述检索词、文档标识信息、数据操作类型与检索类型的关联关系,所述第二索引信息是对所述第三索引信息进行合并处理得到的;以及
获得模块,用于根据所述第二目标文档信息和所述数据操作类型信息对所述第一目标文档信息进行处理,得到第三目标文档标识信息。
19.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9中任一项所述的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-9中任一项所述的方法。
21.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310175245.7A CN116069830A (zh) | 2023-02-24 | 2023-02-24 | 信息查询方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310175245.7A CN116069830A (zh) | 2023-02-24 | 2023-02-24 | 信息查询方法、装置、电子设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116069830A true CN116069830A (zh) | 2023-05-05 |
Family
ID=86180143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310175245.7A Pending CN116069830A (zh) | 2023-02-24 | 2023-02-24 | 信息查询方法、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116069830A (zh) |
-
2023
- 2023-02-24 CN CN202310175245.7A patent/CN116069830A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019174132A1 (zh) | 数据处理方法、服务器及计算机存储介质 | |
US20180181646A1 (en) | System and method for determining identity relationships among enterprise data entities | |
CN111708805B (zh) | 数据查询方法、装置、电子设备及存储介质 | |
CN110597844B (zh) | 异构数据库数据统一访问方法及相关设备 | |
CN113722600A (zh) | 应用于大数据的数据查询方法、装置、设备及产品 | |
CN111553151A (zh) | 一种基于字段相似度计算的问题推荐方法、装置和服务器 | |
CN111611241A (zh) | 一种字典数据操作方法、装置、可读存储介质及终端设备 | |
CN114676678B (zh) | 结构化查询语言数据的解析方法、装置和电子设备 | |
CN113408660B (zh) | 图书聚类方法、装置、设备和存储介质 | |
CN113220710A (zh) | 数据查询方法、装置、电子设备以及存储介质 | |
CN112507133A (zh) | 基于金融产品知识图谱实现关联搜索的方法、装置、处理器及其存储介质 | |
CN113191145A (zh) | 关键词的处理方法、装置、电子设备和介质 | |
CN112989235A (zh) | 基于知识库的内链构建方法、装置、设备和存储介质 | |
CN113821533B (zh) | 数据查询的方法、装置、设备以及存储介质 | |
CN111639099A (zh) | 全文索引方法及系统 | |
CN114861608B (zh) | 一种数据处理方法、装置、设备和存储介质 | |
CN115878661A (zh) | 一种查询方法、装置、电子设备及存储介质 | |
CN116069830A (zh) | 信息查询方法、装置、电子设备以及存储介质 | |
CN116955856A (zh) | 信息展示方法、装置、电子设备以及存储介质 | |
CN116383340A (zh) | 信息搜索方法、装置、电子设备和存储介质 | |
CN115328917A (zh) | 一种查询方法、装置、设备及存储介质 | |
CN114218431A (zh) | 视频搜索方法、装置、电子设备以及存储介质 | |
CN114138951B (zh) | 问答处理方法、装置、电子设备及存储介质 | |
CN116680367B (zh) | 数据匹配方法、数据匹配装置及计算机可读存储介质 | |
CN116610782B (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 |