CN103793439B - 一种实时检索信息获取方法、装置及服务器 - Google Patents

一种实时检索信息获取方法、装置及服务器 Download PDF

Info

Publication number
CN103793439B
CN103793439B CN201210434732.2A CN201210434732A CN103793439B CN 103793439 B CN103793439 B CN 103793439B CN 201210434732 A CN201210434732 A CN 201210434732A CN 103793439 B CN103793439 B CN 103793439B
Authority
CN
China
Prior art keywords
time
real
retrieval
data
searched targets
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
CN201210434732.2A
Other languages
English (en)
Other versions
CN103793439A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201210434732.2A priority Critical patent/CN103793439B/zh
Priority to PCT/CN2013/080071 priority patent/WO2014067298A1/zh
Publication of CN103793439A publication Critical patent/CN103793439A/zh
Priority to US14/702,344 priority patent/US20150234883A1/en
Application granted granted Critical
Publication of CN103793439B publication Critical patent/CN103793439B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G06F16/316Indexing structures
    • G06F16/319Inverted lists
    • 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/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2322Optimistic concurrency control using timestamps
    • 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/24564Applying rules; Deductive queries
    • 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/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2477Temporal data queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Abstract

本发明实施例公开了一种实时检索信息获取方法,所述方法包括:获取实时检索请求中的检索关键词以及检索目标时间;通过数据倒排索引中的时间跳表获取与所述检索目标时间对应的倒排块;根据所述检索关键词在与所述检索目标时间对应的倒排块中进行检索,得到所述实时检索请求的检索结果。本发明实施例还公开了一种实时检索装置以及服务器。采用本发明,实现快速的实时数据检索,进而可以实现有限成本下的数据分布趋势图的实时获取。

Description

一种实时检索信息获取方法、装置及服务器
技术领域
本发明涉及一种数据检索领域,尤其涉及一种实时检索信息获取方法、装置及服务器。
背景技术
随着信息技术的快速发展,人们生活中获取的信息量已几何级数上升,如何在海量信息中获取用户需要的数据,正是数据检索技术所要解决的问题。如今数据检索技术已经被广泛应用在各个行业中,以微博的博文检索应用为例,用户在检索相关关键词的博文的同时会想要知道相关博文的统计数据,例如相关博文历史总数、一段时间的博文数量分布趋势等,现有技术在进行相关统计时通常采用的是根据关键词在所有数据库中进行检索,筛选出对应时间段的数据从而向用户返回检索结果,对于数据分布趋势图由于计算量太过巨大,通常采用的是在检索系统空闲时对数据库中的关键词分别进行离线检索从而生成对应的数据分布趋势图,当用户请求的关键词命中检索系统预先得到的相关数据分布趋势图时才能够返回给用户需要的数据分布趋势图,无法实现实时更新。
发明内容
本发明实施例所要解决的技术问题在于,提供一种实时检索信息获取方法、装置及服务器,以降低实时检索的计算复杂度。
为了解决上述技术问题,本发明实施例提供了一种实时检索信息获取方法,所述方法包括:
获取实时检索请求中的检索关键词以及检索目标时间;
通过数据倒排索引中的时间跳表获取与所述检索目标时间对应的倒排块;
根据所述检索关键词在与所述检索目标时间对应的倒排块中进行检索,得到所述实时检索请求的检索结果。
相应地,本发明实施例还提供了一种实时检索装置,所述实时检索装置包括:
检索请求获取模块,用于获取实时检索请求中的检索关键词以及检索目标时间;
倒排索引模块,用于通过数据倒排索引中的时间跳表获取与所述检索目标时间对应的倒排块;
检索模块,用于根据所述检索关键词在与所述检索目标时间对应的倒排块中进行检索,得到所述实时检索请求的检索结果。
相应的,本发明实施例还提供了一种实时检索服务器,包括上述的实时检索装置。
本发明实施例通过数据倒排索引中新增的时间跳表可以快速的找到与检索目标时间对应的倒排块,从而可以实现快速的实时数据检索,进而可以实现有限成本下的数据分布趋势图的实时获取。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例中的实时检索信息获取方法的流程示意图;
图2是本发明第二实施例中的实时检索信息获取方法的流程示意图;
图3是本发明第三实施例中的实时检索信息获取方法的流程示意图;
图4是本发明实施例中的实时检索装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明第一实施例中的一种实时检索信息获取方法的流程示意图。如图所示本实施例中的实时检索信息获取方法包括以下流程:
S101,获取实时检索请求中的检索关键词以及检索目标时间。具体的,所述检索关键词可以为用户输入的词语,例如“美女”、“保时捷”等,所述检索目标时间包括检索的目标起止时间,可以是用户输入的,也可以是用户根据实时检索装置提供的检索目标时间选项所选择的,也可以是实时检索装置默认的检索目标时间,表示用户希望搜索该时间范围内的与所述检索关键词相关的数据。可选的,在所述获取实时检索请求中的检索关键词以及检索目标时间之前还可以先根据预设的逻辑判断规则所述所述实时检索请求中的检索关键词是否为无效关键词。判断检索关键词为无效关键词的情况包括但不限于以下情况:
1.长度大于20B或小于4B的纯中文关键词
2.长度大于20B或小于2B的其它非纯中文关键词
3.关键词中命中安全敏感词(例如色情、政治敏感词)
4.关键词仅包含超高频词(例如“的”、“是”等超高频词)
若判断得到所述检索关键词为无效关键词,则可以向用户返回特定的结果,例如“输入的关键词有误”、“输入的关键词包含敏感词”,“无效的关键词”等,若判断得到所述检索关键词不是无效关键词,则获取实时检索请求中的检索关键词以及检索目标时间。
S102,通过数据倒排索引中的时间跳表获取与所述检索目标时间对应的倒排块。具体的,本发明实施例中的数据倒排索引中包括一个时间跳表TimeStampSkipList,可以通过数据倒排索引中的该时间跳表找到与所述检索目标时间对应的倒排块,例如用户输入的检索目标时间为9月21日~9月23日这三天内的数据,通过数据倒排索引中的时间跳表就可以找到与9月21日~9月23日对应的倒排块。进一步可选的,可以首先通过数据倒排索引中的时间跳表将所述检索目标时间对应到相应的分级数据库,然后在与所述检索目标时间对应的分级数据库中获取与所述检索目标时间对应的倒排块。所述分级数据库可以为多个分别用于存储不同时间段的倒排块的数据库,例如可以包括:微循环单元,用于保存最近3天的数据;小循环单元,用于保存最近10天至最近3天内的数据;中循环单元,用于保存最近30天至最近10天内的数据;大循环单元,用于保存距离当前30以上的数据,实时检索装置可以通过数据倒排索引中的时间跳表,根据所述检索目标时间找到对应的分级数据库,然后在与所述检索目标时间对应的分级数据库中获取与所述检索目标时间对应的倒排块。例如用户请求的检索目标时间为最近8天,那么可以对应到的分级数据库包括微循环单元和小循环单元,进而可以直接在这两个较小的分级数据库中查找与所述检索目标时间对应的倒排表,从而避免了到数据量巨大分级数据库中进行查找,节省了大量的系统资源。
S103,根据所述检索关键词在与所述检索目标时间对应的倒排块中进行检索,得到所述实时检索请求的检索结果。具体的,可以为根据所述检索关键词在步骤S102中查找到的倒排块中进行检索,查找与包含所述检索关键词的数据,并向用户返回所述实时检索请求的检索结果,结果可以包括查找到的数据,也可以为根据查找到的数据经过计算得到的统计结果,以微博博文检索为例,用户希望检索近3天发布的包含关键词“美女”的博文,那么可以向用户返回3天内所有包含“美女”的博文的列表,还可以向用户返回3天内所有包含“美女”的博文的总数,等等。
图2是本发明第二实施例中的实时检索信息获取方法的流程示意图,本发明可以以微博博文检索为例,详细阐述本发明的实时检索的实现流程。
S201,获取实时检索请求。具体可以为用户通过手机、个人电脑等终端登陆微博账号后,向实时检索装置发送实时检索请求,请求检索感兴趣的博文。
S202,获取实时检索请求中的检索关键词以及检索目标时间。具体的,所述检索关键词可以为用户输入的词语,例如“美女”、“保时捷”等,所述检索目标时间包括检索的目标起止时间,可以是用户输入的,也可以是用户根据实时检索装置提供的检索目标时间选项所选择的,也可以是实时检索装置默认的检索目标时间,表示用户希望搜索该时间范围内的与所述检索关键词相关的数据。
S203,通过数据倒排索引中的时间跳表获取与所述检索目标时间对应的倒排块。具体的,本发明实施例中的数据倒排索引中包括一个时间跳表TimeStampSkipList,可以通过数据倒排索引中的该时间跳表找到与所述检索目标时间对应的倒排块,例如用户输入的检索目标时间为9月21日~9月23日这三天内的数据,通过数据倒排索引中的时间跳表就可以找到与9月21日~9月23日对应的倒排块。
S204,判断是否需要数据分布趋势图。具体的,用户在向实时检索装置发送实时检索请求,可以选择同时请求与检索关键词相关的数据分布趋势图,实时检索装置在获取到实时检索请求时,可以从所述实时检索请求中判断用户是否请求了数据分布趋势图,若是,则执行S205,否则直接跳至执行S208。
S205,获取目标时间分段。具体的,所述目标时间分段可以是所述实时检索请求中由用户自定义的目标时间分段,例如上文中的9月21日~9月23日三天内每天作为一个时间分段,也可以为实时检索装置根据所述实时检索请求中的检索目标时间自动获取对应的目标时间分段,例如若检索目标时间大于10天,则可以自动按照每个自然天作为一个时间分段,若检索目标时间小于10天但大于48小时,那么可以自动按照半个自然天作为一个时间分段,若检索目标时间小于48小时则可以自动按照检索目标时间中每个小时作为一个时间分段。
S206,根据所述检索关键词以及所述目标时间分段在与所述检索目标时间对应的倒排块中获取在所述目标时间分段中的数据分布信息。具体的,可以根据所述检索关键词在步骤S203中查找到的倒排块中进行检索,查找包含所述检索关键词的博文,并将查找到的相关数据统计结果按照所述目标时间分段进行归并划分,从而得到用户请求的数据分布信息,例如得到9月21日发布的包括关键词“美女”的博文为30w帖,9月22日发布的包括关键词“美女”的博文为35w帖,9月24日发布的包括关键词“美女”的博文为40w帖。
S207,根据在所述目标时间分段中的数据分布信息生成数据分布趋势图。具体的,可以采用例如柱状分布趋势图的方式向用户展示所请求的关键词在目标时间分段内的分布信息。
S208,根据所述检索关键词在与所述检索目标时间对应的倒排块中进行检索,得到所述实时检索请求的检索结果。。具体的,可以为根据所述检索关键词在步骤S102中查找到的倒排块中进行检索,查找与包含所述检索关键词的数据,并向用户返回所述实时检索请求的检索结果,结果可以包括查找到的数据,也可以为根据查找到的数据经过计算得到的统计结果,以微博博文检索为例,用户希望检索近3天发布的包含关键词“美女”的博文,那么可以向用户返回3天内所有包含“美女”的博文的列表,还可以向用户返回3天内所有包含“美女”的博文的总数,等等。
图3是本发明第三实施例中的实时检索信息获取方法的流程示意图,如图所示本实施例中的实时检索信息获取方法流程包括:
S301,获取实时检索请求中的检索关键词以及检索目标时间。具体的,所述检索关键词可以为用户输入的词语,例如“美女”、“保时捷”等,所述检索目标时间包括检索的目标起止时间,可以是用户输入的,也可以是用户根据实时检索装置提供的检索目标时间选项所选择的,也可以是实时检索装置默认的检索目标时间,表示用户希望搜索该时间范围内的与所述检索关键词相关的数据。
S302,当所述判断实时检索请求中的检索目标时间是否超过预设时间范围时,获取预设的参考检索目标时间和参考目标时间分段。具体的,所述预设时间范围可以例如20天、30天或60天等,当用户发送的实时检索请求中的检索目标时间超过预设时间范围时,实时检索装置为该次检索可能需要搜索大量的数据,耗费大量的计算资源,因此可以采用精确计算和估算相结合的方法获取用户请求的检索结果,其中对参考检索目标时间内的数据进行精确计算,结合参考目标时间分段得到参考检索目标时间内的数据分布信息,从而可以对用户请求的检索目标时间的检索结果进行可靠估计。所述参考检索目标时间可以为接收到用户提交的实时检索请求之前的近10天、15天或30天,当然选取的参考检索时间越长则带来的估计结果可能与真实结果越接近,所述参考目标时间分段可以为每半天或每一天作为一个时间分段。
S303,通过数据倒排索引中的时间跳表获取与所述参考检索目标时间对应的倒排块。具体的,本发明实施例中的数据倒排索引中包括一个时间跳表TimeStampSkipList,可以通过数据倒排索引中的该时间跳表找到与所述参考检索目标时间对应的倒排块,例如接收到用户提交的实时检索请求为9月20日,参考检索目标时间可以为9月16日~9月20日,可以通过数据倒排索引中的时间跳表就可以找到与9月16日~9月20日这十五天对应的倒排块。
S304,根据所述检索关键词以及所述参考目标时间分段在与所述参考检索目标时间对应的倒排块中获取在所述参考目标时间分段中的数据分布信息。具体的,可以根据所述检索关键词在步骤S303中查找到的倒排块中进行检索,查找包含所述检索关键词的博文,并将查找到的相关数据统计结果按照所述目标时间分段进行归并划分,从而得到在所述参考目标时间分段中的数据分布信息。
S305,根据所述在所述参考目标时间分段中的数据分布信息,估计所述实时检索请求中的检索目标时间的检索结果。具体实现中,例如可以根据所述参考检索目标时间15天中每半天的时间分段中的数据分布信息,估计用户所请求的检索目标时间的检索结果,可选的还可以对其他没有进行检索的时间分段进行采样,例如用户请求的是9月20日之前6个月内的检索结果,S304中已经得到了9月20日之前15天内的参考目标时间分段中的数据分布信息,这时可以在3月20至9月5日之间的每15天的时间分段进行采样,将所述参考目标时间分段中的数据分布信息结合3月20至9月5日之间的每15天中得到的采样检索数据对9月20日之前6个月内的数据进行估计,从而可以实现较好地平衡趋势的准确性和计算资源消耗大的问题。在其他实施例中,还可以采用在一部分分级数据库中进行检索结果的采样从而估计在所有该级别的分级数据库中的检索结果,例如用户请求检索关键词“美女”近10天内的博文,实时检索服务器中包括10个小循环单元,这时可以在其中1~3个小循环单元中进行正常检索,得到的采用数据用于估计所有10个小循环单元中的数据。
图4是本发明实施例中的实时检索装置的结构示意图,如图所示本发明实施例中的实时检索装置至少包括检索请求获取模块401、倒排索引模块402以及检索模块403,其中:
检索请求获取模块401用于获取实时检索请求中的检索关键词以及检索目标时间。具体实现中,具体的,所述检索关键词可以为用户输入的词语,例如“美女”、“保时捷”等,所述检索目标时间包括检索的目标起止时间,可以是用户输入的,也可以是用户根据实时检索装置提供的检索目标时间选项所选择的,也可以是实时检索装置默认的检索目标时间,表示用户希望搜索该时间范围内的与所述检索关键词相关的数据。
倒排索引模块402用于通过数据倒排索引中的时间跳表获取与所述检索目标时间对应的倒排块。具体的,本发明实施例中的数据倒排索引中包括一个时间跳表TimeStampSkipList,可以通过数据倒排索引中的该时间跳表找到与所述检索目标时间对应的倒排块,例如用户输入的检索目标时间为9月21日~9月23日这三天内的数据,通过数据倒排索引中的时间跳表就可以找到与9月21日~9月23日对应的倒排块。进一步所述倒排索引模块402可以包括:
分级数据库对应单元,用于通过数据倒排索引中的时间跳表将所述检索目标时间对应到相应的分级数据库中,所述分级数据库为多个分别用于存储不同时间段的倒排块的数据库。例如所述分级数据库可以包括:微循环单元,用于保存最近3天的数据;小循环单元,用于保存最近10天至最近3天内的数据;中循环单元,用于保存最近30天至最近10天内的数据;大循环单元,用于保存距离当前30以上的数据,分级数据库对应单元可以通过数据倒排索引中的时间跳表,根据所述检索目标时间找到对应的分级数据库。
倒排块获取单元,用于在与所述检索目标时间对应的分级数据库中获取与所述检索目标时间对应的倒排块。例如用户请求的检索目标时间为最近8天,那么可以对应到的分级数据库包括微循环单元和小循环单元,倒排块获取单元可以直接在这两个较小的分级数据库中查找与所述检索目标时间对应的倒排表,从而避免了到数据量巨大分级数据库中进行查找,节省了大量的系统资源。
检索模块403用于根据所述检索关键词在与所述检索目标时间对应的倒排块中进行检索,得到所述实时检索请求的检索结果。具体的,检索模块403可以根据所述检索关键词在倒排索引模块402查找到的倒排块中进行检索,查找与包含所述检索关键词的数据,并向用户返回所述实时检索请求的检索结果,结果可以包括查找到的数据,也可以为根据查找到的数据经过计算得到的统计结果,以微博博文检索为例,用户希望检索近3天发布的包含关键词“美女”的博文,那么可以向用户返回3天内所有包含“美女”的博文的列表,还可以向用户返回3天内所有包含“美女”的博文的总数,等等。
进一步可选的,本发明实施例中的实时检索装置还包括:
时间分段获取模块404,用于根据所述实时检索请求获取目标时间分段。具体的,当用户向实时检索装置提交的实时检索请求中同时请求了数据分布趋势图,那么时间分段获取模块404就根据用户的请求获取所述目标时间分段,所述目标时间分段可以是所述实时检索请求中由用户自定义的目标时间分段,例如上文中的9月21日~9月23日三天内每天作为一个时间分段,也可以为实时检索装置根据所述实时检索请求中的检索目标时间自动获取对应的目标时间分段,例如若检索目标时间大于10天,则可以自动按照每个自然天作为一个时间分段,若检索目标时间小于10天但大于48小时,那么可以自动按照半个自然天作为一个时间分段,若检索目标时间小于48小时则可以自动按照检索目标时间中每个小时作为一个时间分段。
数据分布获取模块405,用于根据所述检索关键词以及所述目标时间分段在与所述检索目标时间对应的倒排块中获取在所述目标时间分段中的数据分布信息。具体的,可以根据所述检索关键词在倒排索引模块402查找到的倒排块中进行检索,查找包含所述检索关键词的博文,并将查找到的相关数据统计结果按照所述目标时间分段进行归并划分,从而得到用户请求的数据分布信息,例如得到9月21日发布的包括关键词“美女”的博文为30w帖,9月22日发布的包括关键词“美女”的博文为35w帖,9月24日发布的包括关键词“美女”的博文为40w帖。
趋势图生成模块406,用于根据在所述目标时间分段中的数据分布信息生成数据分布趋势图。具体的,可以采用例如柱状分布趋势图的方式向用户展示所请求的关键词在目标时间分段内的分布信息。
进一步可选的,本发明实施例中的实时检索装置还可以包括:
参考目标时间获取模块407,用于所述实时检索请求中的检索目标时间超过预设时间范围时,获取参考检索目标时间和参考目标时间分段。具体的,所述预设时间范围可以例如20天、30天或60天等,当用户发送的实时检索请求中的检索目标时间超过预设时间范围时,实时检索装置为该次检索可能需要搜索大量的数据,耗费大量的计算资源,因此可以采用精确计算和估算相结合的方法获取用户请求的检索结果,其中对参考检索目标时间内的数据进行精确计算,结合参考目标时间分段得到参考检索目标时间内的数据分布信息,从而可以对用户请求的检索目标时间的检索结果进行可靠估计。所述参考检索目标时间可以为接收到用户提交的实时检索请求之前的近10天、15天或30天,当然选取的参考检索时间越长则带来的估计结果可能与真实结果越接近,所述参考目标时间分段可以为每半天或每一天作为一个时间分段。
所述倒排索引模块402还用于通过数据倒排索引中的时间跳表获取与所述参考检索目标时间对应的倒排块。
所述数据分布获取模块405还用于根据所述检索关键词以及所述参考目标时间分段在与所述参考检索目标时间对应的倒排块中获取在所述参考目标时间分段中的数据分布信息。
估计模块408,用于根据所述在所述参考目标时间分段中的数据分布信息,估计所述实时检索请求中的检索目标时间的检索结果。具体实现中,例如可以根据所述参考检索目标时间15天中每半天的时间分段中的数据分布信息,估计模块408估计用户所请求的检索目标时间的检索结果,可选的估计模块408还可以对其他没有进行检索的时间分段进行采样,例如用户请求的是9月20日之前6个月内的检索结果,S304中已经得到了9月20日之前15天内的参考目标时间分段中的数据分布信息,这时可以在3月20至9月5日之间的每15天的时间分段进行采样,将所述参考目标时间分段中的数据分布信息结合3月20至9月5日之间的每15天中得到的采样检索数据对9月20日之前6个月内的数据进行估计,从而可以实现较好地平衡趋势的准确性和计算资源消耗大的问题。在其他实施例中,还可以采用在一部分分级数据库中进行检索结果的采样从而估计在所有该级别的分级数据库中的检索结果,例如用户请求检索关键词“美女”近10天内的博文,实时检索服务器中包括10个小循环单元,这时可以在其中1~3个小循环单元中进行正常检索,得到的采用数据用于估计所有10个小循环单元中的数据。
进一步可选的本发明实施例中的实时检索装置还可以包括:
逻辑判断模块409,用于根据预设的逻辑判断规则所述所述实时检索请求中的检索关键词是否为无效关键词。判断检索关键词为无效关键词的情况包括但不限于以下情况:
1.长度大于20B或小于4B的纯中文关键词
2.长度大于20B或小于2B的其它非纯中文关键词
3.关键词中命中安全敏感词(例如色情、政治敏感词)
4.关键词仅包含超高频词(例如“的”、“是”等超高频词)
若判断得到所述检索关键词为无效关键词,则可以向用户返回特定的结果,例如“输入的关键词有误”、“输入的关键词包含敏感词”,“无效的关键词”等,若判断得到所述检索关键词不是无效关键词,则通知检索请求获取模块401获取实时检索请求中的检索关键词以及检索目标时间。
本发明实施例还提供了一种实时检索服务器,包括前文结合图4所描述的实时检索装置。
本发明实施例通过数据倒排索引中新增的时间跳表可以快速的找到与检索目标时间对应的倒排块,从而可以实现快速的实时数据检索,进而可以实现有限成本下的数据分布趋势图的实时获取。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (7)

1.一种实时检索信息获取方法,其特征在于,所述方法包括:
获取实时检索请求中的检索关键词以及检索目标时间,当实时检索请求中的检索目标时间超过预设时间范围时,获取预设的参考检索目标时间和参考目标时间分段;
通过数据倒排索引中的时间跳表将所述参考检索目标时间对应到相应的分级数据库中,所述分级数据库为多个分别用于存储不同时间段的倒排块的数据库,其中存储时间段越接近当前时间的数据库存储的倒排块的数据量越小;
在与所述参考检索目标时间对应的分级数据库中获取与所述参考检索目标时间对应的倒排块;
根据所述检索关键词以及所述参考目标时间分段在与所述参考检索目标时间对应的倒排块中获取在所述参考目标时间分段中的数据分布信息;
根据所述在所述参考目标时间分段中的数据分布信息,估计所述实时检索请求中的检索目标时间的检索结果。
2.如权利要求1所述的实时检索信息获取方法,其特征在于,所述方法还包括:
根据所述实时检索请求获取目标时间分段;
根据所述检索关键词以及所述目标时间分段在与所述检索目标时间对应的倒排块中获取在所述目标时间分段中的数据分布信息;
根据在所述目标时间分段中的数据分布信息生成数据分布趋势图。
3.如权利要求1~2中任一项所述的实时检索信息获取方法,其特征在于,所述获取实时检索请求中的检索关键词以及检索目标时间之前还包括:
根据预设的逻辑判断规则判断所述实时检索请求中的检索关键词是否为无效关键词;
若判断得到所述检索关键词不是无效关键词,则获取实时检索请求中的检索关键词以及检索目标时间。
4.一种实时检索装置,其特征在于,所述实时检索装置包括:
检索请求获取模块,用于获取实时检索请求中的检索关键词以及检索目标时间;
参考目标时间获取模块,用于所述实时检索请求中的检索目标时间超过预设时间范围时,获取参考检索目标时间和参考目标时间分段;
倒排索引模块,用于通过数据倒排索引中的时间跳表获取与所述参考检索目标时间对应的倒排块;
数据分布获取模块,用于根据所述检索关键词以及所述参考目标时间分段在与所述参考检索目标时间对应的倒排块中获取在所述参考目标时间分段中的数据分布信息;
估计模块,用于根据所述在所述参考目标时间分段中的数据分布信息,估计所述实时检索请求中的检索目标时间的检索结果;
所述倒排索引模块包括分级数据库对应单元和倒排块获取单元,其中:
分级数据库对应单元,用于通过数据倒排索引中的时间跳表将所述参考检索目标时间对应到相应的分级数据库中,所述分级数据库为多个分别用于存储不同时间段的倒排块的数据库,其中存储时间段越接近当前时间的数据库存储的倒排块的数据量越小;
倒排块获取单元,用于在与所述参考检索目标时间对应的分级数据库中获取与所述参考检索目标时间对应的倒排块。
5.如权利要求4所述的实时检索装置,其特征在于,所述实时检索装置还包括:
时间分段获取模块,用于根据所述实时检索请求获取目标时间分段;
数据分布获取模块,用于根据所述检索关键词以及所述目标时间分段在与所述检索目标时间对应的倒排块中获取在所述目标时间分段中的数据分布信息;
趋势图生成模块,用于根据在所述目标时间分段中的数据分布信息生成数据分布趋势图。
6.如权利要求4~5中任一项所述的实时检索装置,其特征在于,所述实时检索装置还包括:
逻辑判断模块,用于根据预设的逻辑判断规则判断所述实时检索请求中的检索关键词是否为无效关键词;
若判断得到所述检索关键词不是无效关键词,则获取实时检索请求中的检索关键词以及检索目标时间。
7.一种实时检索服务器,其特征在于,包括如权利要求4~6中任一项所述的实时检索装置。
CN201210434732.2A 2012-11-05 2012-11-05 一种实时检索信息获取方法、装置及服务器 Active CN103793439B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201210434732.2A CN103793439B (zh) 2012-11-05 2012-11-05 一种实时检索信息获取方法、装置及服务器
PCT/CN2013/080071 WO2014067298A1 (zh) 2012-11-05 2013-07-25 实时检索信息获取方法、装置及服务器
US14/702,344 US20150234883A1 (en) 2012-11-05 2015-05-01 Method and system for retrieving real-time information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210434732.2A CN103793439B (zh) 2012-11-05 2012-11-05 一种实时检索信息获取方法、装置及服务器

Publications (2)

Publication Number Publication Date
CN103793439A CN103793439A (zh) 2014-05-14
CN103793439B true CN103793439B (zh) 2019-01-15

Family

ID=50626407

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210434732.2A Active CN103793439B (zh) 2012-11-05 2012-11-05 一种实时检索信息获取方法、装置及服务器

Country Status (3)

Country Link
US (1) US20150234883A1 (zh)
CN (1) CN103793439B (zh)
WO (1) WO2014067298A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101496179B1 (ko) * 2013-05-24 2015-02-26 삼성에스디에스 주식회사 데이터 부재 태깅 기반의 정보 검색 시스템 및 방법
CN105956194A (zh) * 2016-06-18 2016-09-21 张阳康 一种电能网络数据的处理方法
CN106484817B (zh) * 2016-09-26 2020-06-26 广州致远电子有限公司 一种数据搜索方法及系统
CN108446288B (zh) * 2017-08-01 2023-10-17 北京四维新世纪信息技术有限公司 一种面向遥感瓦片数据的一次全覆盖检索方法
CN110516157B (zh) * 2019-08-30 2022-04-01 盈盛智创科技(广州)有限公司 一种文献检索方法、设备和存储介质
WO2021090374A1 (ja) * 2019-11-06 2021-05-14 三菱電機ビルテクノサービス株式会社 建物管理装置、建物管理システム及びプログラム
CN114661666B (zh) * 2022-03-03 2023-01-24 北京城市网邻信息技术有限公司 数据搜索方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101604340A (zh) * 2009-07-20 2009-12-16 腾讯科技(深圳)有限公司 一种获得查询的时新性的方法
US20090319518A1 (en) * 2007-01-10 2009-12-24 Nick Koudas Method and system for information discovery and text analysis
CN101847161A (zh) * 2010-06-02 2010-09-29 苏州搜图网络技术有限公司 搜索网页的方法和建立数据库的方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8781989B2 (en) * 2008-01-14 2014-07-15 Aptima, Inc. Method and system to predict a data value
US20120137367A1 (en) * 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis
US9275093B2 (en) * 2011-01-28 2016-03-01 Cisco Technology, Inc. Indexing sensor data
CN102194015B (zh) * 2011-06-30 2013-11-13 重庆新媒农信科技有限公司 根据检索信息热度统计实现检索的方法
WO2013030133A1 (en) * 2011-08-31 2013-03-07 University College Dublin, National University Of Ireland Search and discovery system
US8745014B2 (en) * 2011-10-19 2014-06-03 Pivotal Software, Inc. Time series data mapping into a key-value database
CN102426610B (zh) * 2012-01-13 2014-05-07 中国科学院计算技术研究所 微博搜索排名方法及微博搜索引擎
BR112015003293B1 (pt) * 2012-08-17 2022-04-19 Twitter, Inc Sistema e método para pesquisa em tempo real em uma plataforma de mensagens e meio legível por computador não transitório

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090319518A1 (en) * 2007-01-10 2009-12-24 Nick Koudas Method and system for information discovery and text analysis
CN101604340A (zh) * 2009-07-20 2009-12-16 腾讯科技(深圳)有限公司 一种获得查询的时新性的方法
CN101847161A (zh) * 2010-06-02 2010-09-29 苏州搜图网络技术有限公司 搜索网页的方法和建立数据库的方法

Also Published As

Publication number Publication date
US20150234883A1 (en) 2015-08-20
CN103793439A (zh) 2014-05-14
WO2014067298A1 (zh) 2014-05-08

Similar Documents

Publication Publication Date Title
CN103793439B (zh) 一种实时检索信息获取方法、装置及服务器
CN107784010B (zh) 一种用于确定新闻主题的热度信息的方法与设备
US9448999B2 (en) Method and device to detect similar documents
Du et al. An improved focused crawler based on semantic similarity vector space model
US10146775B2 (en) Apparatus, system and method for string disambiguation and entity ranking
US20140365452A1 (en) Discovering Trending Content of a Domain
CN107506490B (zh) 滑动窗口下基于位置top-k关键词查询的优先查询算法及系统
CN111241389A (zh) 基于矩阵的敏感词过滤方法、装置、电子设备、存储介质
CN108694188B (zh) 一种索引数据更新的方法以及相关装置
CN109885656B (zh) 基于量化热度的微博转发预测方法及装置
CN110546633A (zh) 文档的基于命名实体的类别标签添加
EP4109293A1 (en) Data query method and apparatus, electronic device, storage medium, and program product
US20150199357A1 (en) Selecting primary resources
CN104615723B (zh) 查询词权重值的确定方法和装置
CN107748801B (zh) 新闻推荐方法、装置、终端设备及计算机可读存储介质
CN105677664B (zh) 基于网络搜索的紧密度确定方法及装置
CN113407818A (zh) 自动信息检索
US20180336278A1 (en) System and method for enabling related searches for live events in data streams
CN111031118B (zh) 信息推送方法、装置、电子设备及计算机可读取存储介质
CN113868373A (zh) 一种词云生成方法、装置、电子设备及存储介质
US10262035B2 (en) Estimating data
CN107315780B (zh) 应用软件推送方法及装置
CN104392000A (zh) 确定移动站点抓取配额的方法和装置
CN112016017A (zh) 确定特征数据的方法和装置
CN114579573B (zh) 信息检索方法、装置、电子设备以及存储介质

Legal Events

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