一种外包数据库中的空间文本TOPK查询的验证方法及系统.pdf

上传人:n****g 文档编号:1899659 上传时间:2018-07-23 格式:PDF 页数:10 大小:824.34KB
返回 下载 相关 举报
摘要
申请专利号:

CN201410743705.2

申请日:

2014.12.08

公开号:

CN104536984A

公开日:

2015.04.22

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 17/30申请日:20141208|||公开

IPC分类号:

G06F17/30

主分类号:

G06F17/30

申请人:

北京邮电大学

发明人:

程祥; 苏森; 闫晗; 徐鹏; 王玉龙; 双锴; 张忠宝; 杨放春

地址:

100876北京市海淀区西土城路10号北京邮电大学

优先权:

专利代理机构:

北京路浩知识产权代理有限公司11002

代理人:

李相雨

PDF下载: PDF下载
内容摘要

本发明涉及一种外包数据库中的空间文本Top-k查询的验证方法及系统,包括:构建IR树,将IR树与Merkle哈希树相结合构建MIR树;将MIR树分离成一棵MR树和多棵关键词树;对与输入的关键词相关的关键词树进行剪枝,生成剪枝后的关键词树;通过遍历MR树和剪枝后的关键词树,生成验证对象;通过遍历验证对象恢复MR树和关键词树根节点的哈希值,与原始数据库中的哈希值进行比较,若相同,则表示查询结果完整,否则查询结果不完整;计算验证对象中每个对象的评分,进行排序,与查询出的k个结果的顺序进行比较,若相同,则表示查询结果正确,否则查询结果错误。本发明的方法通过森林索引和条目剪枝的方法,减少了验证对象中的冗余信息,降低了通信开销和计算开销。

权利要求书

权利要求书
1.  一种外包数据库中的空间文本Top-k查询的验证方法,其特征 在于,所述方法包括:
S1、将外包数据库中的空间文本数据构建成IR树,并将所述IR 树与Merkle哈希树相结合构建成MIR树;
S2、将所述MIR树分离成一棵MR树和多棵关键词树,每棵所述 关键词树对应于所述空间文本数据中的一个关键词;
S3、对与输入的关键词相关的关键词树进行剪枝,生成剪枝后的 关键词树;
S4、通过遍历所述MR树和剪枝后的关键词树,生成验证对象;
S5、通过遍历验证对象恢复MR树和关键词树的根节点的哈希值, 与原始数据库中的哈希值进行比较,若相同,则表示查询结果完整, 否则查询结果不完整;
S6、计算所述验证对象中每个对象的评分,进行排序,然后与查 询出的k个结果的顺序进行比较,若相同,则表示查询结果正确,否 则查询错误。

2.  根据权利要求1所述的外包数据库中的空间文本Top-k查询的 验证方法,其特征在于,所述步骤S3具体包括:
S31、将所述与输入的关键词相关的关键词树进行结构修改;
S32、遍历修改后的关键词树,获得k个查询结果,并在遍历的过 程中形成生成树;
S33、记录第k个结果的评分,然后将所述第k个结果的评分减去 所述生成树的每个节点中的距离评分最好的评分,将结果作为剪枝的 评分阈值;
S34、在生成树中进行剪枝,将小于所述评分阈值的节点除掉。

3.  根据权利要求1所述的外包数据库中的空间文本Top-k查询的 验证方法,其特征在于,所述步骤S31具体包括:
S311、将所述与输入的关键词相关的关键词树的节点中的条目的 权值进行从大到小的排序;
S312、在排序后的所述与输入的关键词相关的关键词树的每个节 点中构建一棵嵌入式Merkle哈希树。

4.  根据权利要求3所述的外包数据库中的空间文本Top-k查询的 验证方法,其特征在于,所述嵌入式Merkle哈希树为以所述排序后的 与输入的关键词相关的关键词树的节点中的所有条目为叶子节点构 建的一棵二叉Merkle哈希树。

5.  一种外包数据库中的空间文本Top-k查询的验证系统,所述系 统包括:
MIR树生成单元,用于将外包数据库中的空间文本数据构建成IR 树,并将所述IR树与Merkle哈希树相结合形成MIR树;
MIR树分离单元,用于将所述MIR树分离成一棵MR树和多棵关 键词树,每棵所述关键词树对应于所述空间文本数据中的一个关键 词;
剪枝单元,用于对与输入的关键词相关的关键词树进行剪枝,生 成剪枝后的关键词树;
遍历单元,用于通过遍历所述MR树和剪枝后的关键词树,生成 验证对象;
完整性验证单元,用于通过遍历验证对象恢复MR树和关键词树 的根节点的哈希值,与原始数据库中的哈希值进行比较,若相同,则 表示查询结果完整,否则查询结果不完整;
正确性验证单元,用于计算所述验证对象中每个对象的评分,进 行排序,然后与查询出的k个结果的顺序进行比较,若相同,则表示 查询结果正确,否则查询错误。

说明书

说明书一种外包数据库中的空间文本Top-k查询的验证方法及系统
技术领域
本发明涉及数据库信息查询技术领域,尤其涉及一种外包数据库 中的空间文本Top-k查询的验证方法及系统。
背景技术
近些年来,带有定位功能的设备(比如:智能手机)的大量普 及以及移动互联网的蓬勃发展,基于位置的服务(Location-based  Services,LBS)已经成为我们日常生活中的一个重要的组成部分。 LBS基于用户的位置提供给用户位置感知的查询体验。空间文本 Top-k查询受到了学术界和工业界的广泛关注。在一个空间文本数据 库中,每一个对象都包含两个属性:位置属性和文本属性。给定一 个空间文本数据库,空间文本Top-k查询会去寻找位置相对查询点 更近并且文本与用户输入的关键词更相似的k个对象,例如,一个 用户可能希望去查询一个“有烤肉和啤酒的餐厅”,并且这个餐厅还 要离用户的位置比较近。
空间文本数据库的数据拥有者需要花费大量费用才能维护大量 的空间文本数据并提供高效的空间文本Top-k查询,比如建立基础 设施、雇佣专业的人才以及在网上做广告等。因此,为了更好的利 用这些空间文本数据,空间文本数据库的数据拥有者将数据库外包 给第三方基于位置的服务提供商(Location-based Services Provider, LBSP)是一个很好的选择。
然而,这样的数据库外包会带来巨大挑战,即第三方基于位置 的服务提供商有可能会返回不正确的查询结果。导致这一问题的原 因有以下几个:第一、LBSP有可能因为个人的利益去篡改查询的结 果以满足某些付费商家的需求;第二、即使LBSP是可信的,但是 他的服务器仍有可能受到攻击者的攻击,进而攻击者有可能会返回 错误的查询结果。
因此,上述的原因促使我们有必要去研究用户可验证的空间文 本Top-k查询方法。具体的来讲,用户需要验证两个方面,第一是 完整性,即原始的空间文本数据没有被第三方的基于位置的服务提 供商所篡改;第二是正确性,即前k个结果的顺序是正确的并且正 确的结果都没有被遗漏。
本发明研究并实现了外包数据库中的空间文本Top-k查询的验 证方法。已有的相关工作要么针对空间查询验证,要么针对文本查 询验证。然而在空间文本数据库中,每个对象都有空间和文本两个 属性,并且空间文本Top-k查询不仅需要考虑查询点和对象之间的 空间上距离的远近,还要考虑对象所包含的文本与查询者输入关键 词的相似程度,因此,已有的工作无法解决空间文本Top-k查询的 验证问题。解决该问题的直观的想法是简单的将IR树(到目前为止 解决空间文本Top-k查询问题最好的索引结构)和Merkle哈希树(一 个可用于验证问题的经典的索引结构)相结合形成MIR树,通过最 好优先遍历的算法查询前k个结果,同时用于验证的验证对象 (Verification Object,VO)也基于树遍历过程中访问到的节点而产 生。当用户收到k个结果以及验证对象之后,用户可以通过恢复MIR 树根节点的哈希值的办法来验证原始空间文本数据的完整性,而正 确性则可以通过重新计算验证对象中每个对象的评分,进而让用户 进行重排序后与k个结果的顺序相比较来完成验证。但是,该方法 有很严重的问题,MIR树中用于索引每个对象文本信息的倒排文件, 被包含在验证对象中,而倒排文件规模巨大,因此验证对象在第三 方的基于位置的服务提供商返回给用户时,会造成大量的通信开销。 同时,用户在利用验证对象进行验证的时候,需要遍历每个倒排文 件以计算验证对象中每个对象的评分,这也会导致很大的计算开销。 因此,空间文本Top-k查询的验证问题仍是一个难题。
发明内容
本发明提供一种外包数据库中的空间文本Top-k查询的验证方 法及系统,通过森林索引和条目剪枝的方法,将验证对象中冗余的 信息进行删除,减小了验证对象的大小,从而降低了通信开销和计 算开销。
根据上述目的,本发明提供了一种外包数据库中的空间文本 Top-k查询的验证方法,所述方法包括:
S1、将外包数据库中的空间文本数据构建成IR树,并将所述IR 树与Merkle哈希树相结合构建成MIR树;
S2、将所述MIR树分离成一棵MR树和多棵关键词树,每棵所述 关键词树对应于所述空间文本数据中的一个关键词;
S3、对与输入的关键词相关的关键词树进行剪枝,生成剪枝后的 关键词树;
S4、通过遍历所述MR树和剪枝后的关键词树,生成验证对象;
S5、通过遍历验证对象恢复MR树和关键词树的根节点的哈希值, 与原始数据库中的哈希值进行比较,若相同,则表示查询结果完整, 否则查询结果不完整;
S6、计算所述验证对象中每个对象的评分,进行排序,然后与查 询出的k个结果的顺序进行比较,若相同,则表示查询结果正确,否 则查询错误。
其中,所述步骤S3具体包括:
S31、将所述与输入的关键词相关的关键词树进行结构修改;
S32、遍历修改后的关键词树,获得k个查询结果,并在遍历的过 程中形成生成树;
S33、记录第k个结果的评分,然后将所述第k个结果的评分减去 所述生成树的每个节点中的距离评分最好的评分,将结果作为剪枝的 评分阈值;
S34、在生成树中进行剪枝,将小于所述评分阈值的节点除掉。
其中,所述步骤S31具体包括:
S311、将所述与输入的关键词相关的关键词树的节点中的条目的 权值进行从大到小的排序;
S312、将排序后的所述与输入的关键词相关的关键词树的节点中 构建一棵嵌入式Merkle哈希树。
其中,所述嵌入式Merkle哈希树为以所述排序后的与输入的关键 词相关的关键词树的节点中的所有条目为叶子节点构建的一棵二叉 Merkle哈希树。
根据本发明的另一个方面,提供一种外包数据库中的空间文本 Top-k查询的验证系统,所述系统包括:
MIR树生成单元,用于将外包数据库中的空间文本数据构建成IR 树,并将所述IR树与Merkle哈希树相结合形成MIR树;
MIR树分离单元,用于将所述MIR树分离成一棵MR树和多棵关 键词树,每棵所述关键词树对应于所述空间文本数据中的一个关键 词;
剪枝单元,用于对与输入的关键词相关的关键词树进行剪枝,生 成剪枝后的关键词树;
遍历单元,用于通过遍历所述MR树和剪枝后的关键词树,生成 验证对象;
完整性验证单元,用于通过遍历验证对象恢复MR树和关键词树 的根节点的哈希值,与原始数据库中的哈希值进行比较,若相同,则 表示查询结果完整,否则查询结果不完整;
正确性验证单元,用于计算所述验证对象中每个对象的评分,进 行排序,然后与查询出的k个结果的顺序进行比较,若相同,则表示 查询结果正确,否则查询错误。
本发明的外包数据库中的空间文本Top-k查询的验证方法及系 统,通过森林索引和条目剪枝的方法,将验证对象中冗余的信息进 行删除,降低了验证对象的大小,从而降低了通信开销和计算开销。
附图说明
通过参考附图会更加清楚的理解本发明的特征和优点,附图是示 意性的而不应理解为对本发明进行任何限制,在附图中:
图1示出了本发明的外包数据库中的空间文本Top-k查询的验 证方法的流程图。
图2示出了本发明的外包数据库中的空间文本Top-k查询的验证 系统的结构框图。
图3A示出了本发明的实施例的方法与现有的方法的构建索引 的时间与对象数量的变化的比较曲线图。
图3B示出了本发明的实施例的方法与现有的方法的构建索引 的大小与对象数量的变化的比较曲线图。
图4A示出了本发明的实施例的森林索引与条目剪枝的查询时间 与关键词数量变化的比较曲线图。
图4B示出了本发明的实施例的森林索引与条目剪枝的查询时间 与k的大小变化的比较曲线图。
图5A示出了本发明的实施例的森林索引与条目剪枝的验证对象 大小与关键词数量变化的比较曲线图。
图5B示出了本发明的实施例的森林索引与条目剪枝的验证对象 大小与k的大小变化的比较曲线图。
图6A示出了本发明的实施例的森林索引与条目剪枝的验证时间 与关键词的数量变化的曲线图。
图6B示出了本发明的实施例的森林索引与条目剪枝的验证时间 与k的大小变化的曲线图。
具体实施方式
下面将结合附图对本发明的实施例进行详细描述。
图1示出了本发明的外包数据库中的空间文本Top-k查询的验 证方法的流程图。
参照图1,本发明是外包数据库中的空间文本Top-k查询的验证方 法,所述方法包括:
S1、将数据库中的空间文本数据构建成IR树,并将所述IR树与 Merkle哈希树相结合构建成MIR树;
S2、将所述MIR树分离成一棵MR树和多棵关键词树,每棵所述 关键词树对应于所述空间文本数据中的一个关键词;
在验证过程中,由于验证对象中包含了用于索引对象文本信息的 倒排文件,而这些倒排文件规模巨大,当验证对象返回给用户时,会 造成大量的通信开销,并且当用户对查询进行验证时,这些倒排文件 又会带来大量的计算开销。因此,对于MIR树,提出了一种基于森林 索引的方案,即将MIR树分离成一棵MR树(用于空间查询验证的索 引结构)和多棵关键词树(Merkle Term,MT),每棵MT树对应于 一个关键词,MR树不仅用于每个对象空间属性的验证,还用于计算 查询点到对象间的空间距离。类似的,每棵MT树不仅用于每个对象 文本属性的验证,还用于计算用户输入的关键词相对于对象文本信息 的相似度。
通过上述处理,在查询时只涉及一棵MR树和几棵(少量的)与 户输入关键词相关的MT树,验证对象中虽然包含多个条目,但是不 再包含倒排文件,因此验证对象的大小将会大幅降低,通信开销和计 算开销也随之大幅降低。
S3、对与输入的关键词相关的关键词树进行剪枝,生成剪枝后的 关键词树;
在每棵MT树的节点中会包含大量的条目,而其中只有一小部分 会包含结果对象。为了进一步减小验证对象的大小,从而进一步降低 通信开销,对每棵MT树中的冗余的条目信息通过条目剪枝的方法进 行删减。
在进行剪枝前,对与输入的关键词相关的MT树的结构做一些修 改。首先,将每棵MT树节点中的条目的权值从大到小进行排序;然 后在每棵MT树的节点中构建一棵嵌入式的Merkle哈希树,即以这个 节点中的所有的条目为叶子节点构建一棵二叉Merkle哈希树。此处将 这个修改过的MT树称作MT*树。
然后遍历MT*树,将遍历的过程记录下来,形成一些生成树,然 后,对这些生成树中的节点的条目进行剪枝,其剪枝的主要思想是记 录第k个结果的评分,然后减去每个节点中距离评分最好的那个评分, 作为文本评分的阈值,然后在生成树中进行文本剪枝。
S4、通过遍历所述MR树和剪枝后的关键词树,生成验证对象;
S5、通过遍历验证对象恢复MR树和关键词树的根节点的哈希值, 与原始数据库中的哈希值进行比较,若相同,则表示查询结果完整, 即如果在第三方基于位置的服务提供商的数据库中,则表示第三方数 据库没有篡改原始空间文本数据,即验证了完整性。否则查询结果不 完整;
S6、计算所述验证对象中每个对象的评分,进行排序,然后与查 询的k个结果的顺序进行比较,若相同,则表示查询结果正确,否则 查询错误。
图2示出了本发明的外包数据库中的空间文本Top-k查询的验证 系统的结构框图。
参照图2,外包数据库中的空间文本Top-k查询的验证系统具体包 括:
MIR树生成单元10,用于将外包数据库中的空间文本数据构建成 IR树,并将所述IR树与Merkle哈希树相结合构建成MIR树;
MIR树分离单元20,用于将所述MIR树分离成一棵MR树和多棵 关键词树,每棵所述关键词树对应于所述空间文本数据中的一个关键 词;
剪枝单元30,用于对与输入的关键词相关的关键词树进行剪枝, 生成剪枝后的关键词树;
遍历单元40,用于通过遍历所述MR树和剪枝后的关键词树,生 成验证对象;
完整性验证单元50,用于通过遍历验证对象恢复MR树和关键词 树的根节点的哈希值,与原始数据库中的哈希值进行比较,若相同, 则表示查询结果完整,否则查询结果不完整;
正确性验证单元60,用于计算所述验证对象中每个对象的评分, 进行排序,然后与查询的k个结果的顺序进行比较,若相同,则表示 查询结果正确,否则查询错误。
本发明的外包数据库中的空间文本Top-k查询的验证方法及系统 可以应用于各种数据库的空间文本验证,为了描述简便,以下实施例 主要针对外包数据库的空间文本的Top-k查询的正确性和完整性在使 用本发明所述的方法与现有的方法的比较来分析本发明的方法的优 越性。
下述是从据拥有者的开销、第三方基于位置的服务提供商的开 销、第三方基于位置的服务提供商和用户之间的通信开销以及用户的 计算开销上来本发明的方法的优劣性。
实验设计如下,本实施例采用美国加利福尼亚州洛杉矶街道中 的点作为对象的集合,共有131461个对象,然后从20Newsgroups 的文档中随机选取文档作为每个对象的文档。
1.数据拥有者的开销
图3A示出了本发明的实施例的方法与现有的方法的构建索引 的时间与对象数量的变化的比较曲线图。
图3B示出了本发明的实施例的方法与现有的方法的构建索引 的大小与对象数量的变化的比较曲线图。
如图3A和3B所示,基于森林索引的方案的索引大小比现有的 方案如IR和MIR的索引大小要大,构建的时间也要长。这是因为 它要计算更多的哈希值,而基于条目剪枝的方案的索引大小要比森 林索引方案的索引大小要大,构建时间也要长,因为它涉及到了嵌 入式的Merkle哈希树的计算。然而,基于森林索引的方案和基于条 目剪枝的方案带来的开销仍然在数据拥有者可接受的范围内。
2.第三方基于位置的服务提供商的开销
图4A示出了本发明的实施例的森林索引与条目剪枝的查询时间 与关键词数量变化的比较曲线图。
图4B示出了本发明的实施例的森林索引与条目剪枝的查询时间 与k的大小变化的比较曲线图。
如图4A和4B所示,基于森林索引的方案的查询时间要比基于条 目剪枝的方案的查询时间要短,因为后者涉及了查询和剪枝两个步 骤。尽管如此,二者的查询时间都是在1秒以内,这也说明了我们方 法的有效性。此处没有画出简单方案如MIR的查询时间曲线,因为简 单方案的查询时间远远大于基于森林索引的方案和基于条目剪枝的 方案的查询时间。
3.第三方基于位置的服务提供商和用户之间的通信开销
图5A示出了本发明的实施例的森林索引与条目剪枝的验证对象 大小与关键词数量变化的比较曲线图。
图5B示出了本发明的实施例的森林索引与条目剪枝的验证对象 大小与k的大小变化的比较曲线图。
如图5A和5B所示,基于森林索引的方案的验证对象的大小要比 基于条目剪枝的方案的验证对象要大。这是因为后者进一步剪枝降低 了验证对象的大小。二者的验证对象的大小都是在50KB以内,是我 们可以接受的范围,也说明了我们方法的有效性。我们在这里没有画 出简单方案如MIR的验证对象大小的曲线,因为简单方案的验证对象 的大小远远大于基于森林索引的方案和基于条目剪枝的方案的验证 对象的大小。
4.用户的计算开销
图6A示出了本发明的实施例的森林索引与条目剪枝的验证时间 与关键词的数量变化的曲线图。
图6B示出了本发明的实施例的森林索引与条目剪枝的验证时间 与k的大小变化的曲线图。
如图6A和6B所示,基于森林索引的方案的验证时间要比基于条 目剪枝的方案的验证时间要小,因为后者首先要恢复嵌入式Merkle哈 希树根节点的哈希值,然后再恢复整棵树根节点的哈希值。二者的验 证时间都在1秒内,这说明了我们方法的有效性。我们在这里没有画 出简单方案如MIR的验证时间的曲线,因为简单方案的验证时间远远 大于基于森林索引的方案和基于条目剪枝的方案的验证时间。
例如,用户输入的关键词为“有烤肉和啤酒的餐厅”,k的大小是 1,以及用户的位置坐标。服务提供商在整个地图中搜索离用户位置 相对较近并且更满足用户输入关键词的对象。搜索完成后,将结果和 验证对象一起返回给用户,用户通过验证对象可以验证结果的完整性 和正确性。验证方法可以以浏览器插件的形式在用户端运行,如果验 证正确,浏览器提示正确,如果验证失败,浏览器提示验证没有通过。
本发明的外包数据库中的空间文本Top-k查询的验证方法及系 统,通过森林索引和条目剪枝的方法,将验证对象中冗余的信息进 行删除,降低了验证对象的大小,从而降低了通信开销和计算开销。
虽然结合附图描述了本发明的实施方式,但是本领域技术人员可 以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样 的修改和变型均落入由所附权利要求所限定的范围之内。

一种外包数据库中的空间文本TOPK查询的验证方法及系统.pdf_第1页
第1页 / 共10页
一种外包数据库中的空间文本TOPK查询的验证方法及系统.pdf_第2页
第2页 / 共10页
一种外包数据库中的空间文本TOPK查询的验证方法及系统.pdf_第3页
第3页 / 共10页
点击查看更多>>
资源描述

《一种外包数据库中的空间文本TOPK查询的验证方法及系统.pdf》由会员分享,可在线阅读,更多相关《一种外包数据库中的空间文本TOPK查询的验证方法及系统.pdf(10页珍藏版)》请在专利查询网上搜索。

本发明涉及一种外包数据库中的空间文本Top-k查询的验证方法及系统,包括:构建IR树,将IR树与Merkle哈希树相结合构建MIR树;将MIR树分离成一棵MR树和多棵关键词树;对与输入的关键词相关的关键词树进行剪枝,生成剪枝后的关键词树;通过遍历MR树和剪枝后的关键词树,生成验证对象;通过遍历验证对象恢复MR树和关键词树根节点的哈希值,与原始数据库中的哈希值进行比较,若相同,则表示查询结果完整,否。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1