用于针对基于位置的服务生成数据集结构的方法以及用于向移动设备提供基于位置的服...的制作方法

文档序号:8532145阅读:323来源:国知局
用于针对基于位置的服务生成数据集结构的方法以及用于向移动设备提供基于位置的服 ...的制作方法
【专利说明】用于针对基于位置的服务生成数据集结构的方法以及用于 向移动设备提供基于位置的服务的方法和系统
[0001] 本发明的第一方面涉及一种用于针对基于位置的服务生成数据集结构的方法。本 发明的第二方面涉及一种使用通过根据本发明第一方面的方法生成的数据集结构在地理 区域内向移动设备提供基于位置的服务的方法和系统。
[0002] 在移动性越来越高的世界中,源自移动设备的大量信息都可供应用程序开发人员 利用。然而,对原始数据的访问几乎都是不够的,并且可能显得过于繁琐。尤其是在基于位 置的服务(LBS)方面,对原始位置数据的处理可能复杂而庞大,使得这种处理不应由资源 有限的移动设备来执行。通常,应用程序开发人员依赖于对数据提供某种预处理的框架,从 而实现了更高水平的抽象以及更丰富的应用。
[0003] 地理围栏就是一种这样的更高水平的抽象。考虑到两次连续位置更新PL (先前位 置)和CL(当前位置),地理围栏问题在于,确定在两个位置之间退出的兴趣区域集合以及 进入的兴趣区域集合以便生成与这些进入和退出的区域有关的动作。
[0004] 图1示出了地理围栏问题的基本概念。在第一位置更新时,移动设备位于区域1 内的先前位置PL处。在于第一位置更新之后执行的第二位置更新时,移动设备位于区域2 内的当前位置CL处。这就意味着,移动设备已从PL移动到CL并且从区域1移动到区域2。 地理围栏系统将以正被退出的形式触发区域1并且以正被进入的形式触发区域2。
[0005] -种用于计算退出和进入的地理围栏的简单算法是,首先获得其中包含先前位置 PL的地理围栏集合(先前集合)以及其中包含当前位置CL的地理围栏集合(当前集合)。 退出和进入集合(是指退出和进入的地理围栏)可以如下方式确定:
[0006] If, = _ it if ;= {jf & ;S fI {jf ^ .? 1
[0007] 3 Λ = T^if - # lit := {jf e it Il I Jr ? :4i i:f)
[0008] 这就意味着,进入集合包含当前集合的不包含在先前集合中的每个地理围栏。
[0009] 随着利用地理标记数据的基于位置的服务激增,以及启用这些服务的移动设备的 数量与日俱增,需要采用策略来处理所涉及的大量数据。此外,必须生成对大量查询的响 应。地理标记数据编索引的现有技术采用了某种分区机制来更好地分配数据和平衡负荷。
[0010] Jinbao Wang et al. "Indexing multidimensional data in a cloud system"(SIGMOD 10, 2010)(王金宝等人,"在云系统中对多维数据编索引",数据管理专业 委员会会议,2010年)中公开了一种方法,这种方法使用基于RT-CAN(CAN中基于R树的索 弓丨)的方法。将全局索引散布到被组织为基于逻辑CAN(内容可寻址网络)的叠加网络的 不同群集服务器。使用多种算法(其中之一为动态算法)来优化系统,从而降低查询和索 引维护成本。
[0011] 在地理围栏系统中,当跨不同服务器来对不同区域分区时,算法要求所有服务器 计算当前集合和先前集合,并且然后对这两个集合进行运算以分别计算进入的和退出的区 域(如先前两个公式所详述)。这就意味着,要么由不同服务器将这两个集合转发到负责减 去这些集合的第三服务器,要么集合在随后执行减法的两个服务器之间自己交换。这就引 起高延迟以及在服务器之间要交换大量消息。
[0012] LBS目前是非常热门的话题,自然利用了越来越多地"连接的"世界的本质,在这个 世界中存在各种各样的移动设备。US 7, 848, 765B2公开了涉及LBS的多种方法和系统。然 而,其内容并未提供与降低延迟或减少所交换的消息数量有关的任何帮助。
[0013] 因此,本发明的目的在于,提供一种用于生成数据集结构的方法,该数据集结构可 用于基于位置的服务并且允许在降低交换消息的必要性以及降低延迟的同时执行与兴趣 区域有关的分布式计算。此外,应提供一种使用这种数据集结构来向移动设备提供基于位 置的服务的方法和系统。
[0014] 根据本发明,前述目的通过包括权利要求1的特征的方法来实现。根据该权利要 求,此类方法包括以下步骤:
[0015] 将地理区域分割成多个优选为尺寸相等的区块,其中所述地理区域包括多个兴趣 区域,
[0016] 将所述区块与多个服务器相关联,其中每个区块根据一致性哈希函数与所述服务 器中的至少一者相关联,
[0017] 针对每个区块生成包括与所述区块相交的兴趣区域的第一数据集,其中所述第一 数据集的所述兴趣区域由所述区块的边缘修整或者完全包含在所述区块中,
[0018] 针对每个区块生成包括溢出部分的第二数据集,其中所述溢出部分中的每一者均 是第一数据集的兴趣区域的一部分,由所述区块的边缘修整并且位于所述区块的外部,以 及
[0019] 针对每个区块将所述第一数据集和所述第二数据集存储在与所述区块相关联的 服务器处。
[0020] 关于用于提供基于位置的服务的方法以及根据本发明,前述目的通过包含权利要 求7的特征的方法来实现。根据该权利要求,此类方法包括以下步骤:
[0021] 接收所述移动客户端的位置信息,其中所述位置信息包括所述移动客户端的在两 次连续位置更新时确定的先前位置和当前位置,
[0022] 确定当前区块,其中所述当前区块是所述多个区块中的一者并且包含所述当前位 置,
[0023] 根据一致性哈希函数确定与所述当前区块相关联的当前服务器,其中所述当前服 务器是多个服务器中的一者,
[0024] 在所述当前服务器处访问所述数据集结构的第一数据集和第二数据集,
[0025] 由所述当前服务器确定兴趣区域的当前集合,其中所述当前集合包括所述第一数 据集的其中包含所述当前位置的每个兴趣区域,以及
[0026] 使用所述当前集合和所述先前位置来确定位置改变。
[0027] 关于用于提供基于位置的服务的系统以及根据本发明,前述目的通过包含权利要 求14的特征的系统来实现。根据该权利要求,此类系统包括:
[0028] 多个服务器,其中所述服务器中的每一者根据一致性哈希函数与所述多个区块中 的至少一个区块相关联,
[0029] 用于接收所述移动客户端的位置信息的装置,其中所述位置信息包括所述移动客 户端的在两次连续位置更新时确定的先前位置和当前位置,
[0030] 用于确定当前区块的装置,其中所述当前区块是所述多个区块中的一者并且包含 所述当前位置,
[0031] 用于使用所述一致性哈希函数来确定与所述当前区块相关联的服务器的装置,以 及
[0032] 用于基于所述第一数据集和所述第二数据集使用所述先前位置和所述当前位置 来计算所述客户端的位置改变的装置。
[0033] 根据本发明,首先已经认识到,前述目的可通过以特定方式对与兴趣区域有关的 数据进行预处理和分配来实现。根据本发明,在第一步骤中,生成将地理区域分割成多个区 块的网格。这就为另外的步骤创建了结构化基础。优选地,网格的单个元素(后文称为区 块)是尺寸相等的。网格与兴趣区域基本上是独立的,即,区块的位置和取向不依赖于地理 区域中包含的兴趣区域。在正常操作期间不调节区块的尺寸、位置和取向。它们是可以事 先调节并且可能考虑了兴趣区域的配置参数。然而,这不是必要性约束。在许多情况下,尤 其是如果使用尺寸相等的区块以及通常具有任意形状的兴趣区域,网格与兴趣区域之间的 依赖性甚至难以确立。
[0034] 在下一个步骤中,网格的单个区块与将用于确定移动客户端的位置改变的多个服 务器相关联。使用一致性哈希函数来执行区块的关联:每个区块与所述多个服务器中的至 少一者相关联。如果未提供副本,一个区块将与仅一个服务器相关联。根据所需副本的数 量,一个区块可与两个或更多个服务器相关联。优选地,若干区块与一个服务器相关联。然 而,还可能的是,每个服务器与仅一个区块相关联。
[0035] -致性哈希函数提供了区块与服务器之间的唯一链路。该链路可以相当随机的方 式将区块关联到服务器。然而,该链路是唯一的并且在每次访问时都引起相同的结果。这 就实现了对关联服务器的直接访问而无需在服务器之间跳跃以寻找正确的服务器。
[0036] 在第三步骤中,将兴趣区域分配到单个服务器,从而生成特定数据集结构。该数据 集结构包括第一数据集和第二数据集。每个第一数据集均包括与区块相交的兴趣区域。每 个第二数据集均包括溢出部分。
[0037] 由于区块不具有到兴趣区域的直接链路,并且由于分区步骤不考虑兴趣区域,因 此大多数兴趣区域将不会落在单个区块中。因此,许多兴趣区域的部分包含在两个或甚至 更多个区块中。
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1