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

文档序号:8532145阅读:来源:国知局
着,退出集合包含先前集合的不包含在当前集合中的每个兴趣区域。如 所见,归因于特定的数据集结构,这个确定退出集合的步骤还可由当前服务器执行。
[0061] 根据第二选项,先前位置不落在当前区块上。尽管当前服务器在不涉及另一服务 器的情况下确定进入集合,但当前服务器不能肯定地确定退出集合。然而,归因于所使用的 数据集结构,可在不涉及另一服务器的情况下,以与进入集合类似的方式确定退出集合。在 这种情况下,可确定先前区块,即,包含先前位置的区块。通过使用一致性哈希函数,可确定 与先前区块相关联的先前服务器。可将先前位置和当前位置或者先前位置和当前集合从当 前服务器传输到先前服务器。通过使用先前位置,先前服务器可确定包含其中包含先前位 置的每个兴趣区域的先前集合。基于该先前集合以及当前位置,先前服务器可确定退出集 合。可以与确定进入集合的步骤完全独立的方式来执行这个确定退出集合的步骤。如果先 前服务器和当前服务器都接收到位置信息,则两个服务器均可彼此独立地计算相应集合。 这还实现了两个集合的同时且独立的动作触发。
[0062] 可以与当前服务器处的进入集合类似的方式来确定退出集合:如果当前位置不包 含在第一数据集和第二数据集的这个兴趣区域的一部分中,则将先前集合的兴趣区域添加 到退出集合。即,先前服务器访问先前集合的每个兴趣区域并检查当前位置是否落入包含 在第一数据集或第二数据集中的这个兴趣区域的一部分中。如果当前位置不包含在这个兴 趣区域中,则退出该兴趣区域并将该兴趣区域添加到退出集合。如果当前位置包含在这个 兴趣区域中,则不退出该兴趣区域。
[0063] 在确定位置改变的步骤之后,方法可包括触发基于位置的动作的步骤,其中确定 位置改变的步骤可包括确定进入集合和/或退出集合的步骤。这个动作可基于已确定的位 置改变。此类动作可包括向附近客户宣传当前促销;确定某人在某个区域中(例如,在商 店、博物馆或运动场馆内)的停留时间;或者向附近移动客户端传送建议(例如,事故周围 的半径范围将是兴趣区域并且汽车是移动客户端,或者围绕建筑区域创建兴趣区域并且附 近市民可接收建议)。
[0064] 根据本发明的系统提供了相应的装置,所述相应的装置使系统能够执行用于向移 动设备提供基于位置的服务的方法的步骤。优选地,该系统可另外包括
[0065] 用于确定先前区块的装置,其中所述先前区块是所述多个区块中的一者并且包含 所述先前位置,
[0066] 用于使用所述一致性哈希函数来确定与所述先前区块相关联的服务器的装置,以 及
[0067] 用于基于所述第一数据集和所述第二数据集使用所述先前位置和所述当前位置 来计算所述客户端的位置改变(退出的区域)的装置
[0068] 在根据本发明的系统中,可通过将服务器组织成环形结构来更进一步地提高系统 灵活性。这并不一定意味着,连接服务器的网络的拓扑必须是环形结构。然而,服务器的逻 辑结构是环形结构。在考虑将服务器添加到环形结构或者从环形结构中移除服务器时,这 种组织的优点就变得较明显。
[0069] 在将新服务器添加到环形结构时,可为与一个或两个邻近服务器相关联的若干区 块重新分配新服务器。这样,可将必须重新安排的区块的数量减至最低。在重新分配来自 一个邻近服务器的区块时,可将该邻近服务器的一半区块重新分配到新服务器。在重新分 配来自两个邻近服务器的区块时,可为与所述邻近服务器相关联的三分之一的区块重新分 配新服务器。尽管这会引起区块被不均匀地分配到服务器,但这种方法是处理热点(即,与 高频兴趣区域相交的区块)的简单方式。在将单个区块重新分配到新服务器时,可能考虑 不均匀的分配。
[0070] 在将区块重新分配到新服务器时,之前与该区块相关联的服务器可将该区块的第 一数据集和第二数据集传送至新服务器。或者,可如前文所述重新计算第一数据集和第二 数据集。此外,还更新一致性哈希函数使得哈希函数反映新关联。
[0071] 在移除服务器时,必须将与所移除的服务器相关联的区块重新分配到一个或若干 新服务器。一个可能性包括调适哈希函数并使用经调适的哈希函数来再次重新分配区块。 一种替代方法包括将区块重新分配到一个或两个邻近服务器。
[0072] 根据本发明的向移动设备提供基于位置的服务的方法和系统使用移动设备的先 前位置和当前位置来确定位置改变。有关如何提供这些先前位置和当前位置,存在若干选 项。第一选项包括引入针对每个移动客户端接收定期位置更新的位置跟踪实体。如果针对 移动客户端接收到两次连续位置更新,则位置跟踪实体可删除位置信息。一旦位置跟踪实 体接收到移动客户端的新位置更新,位置跟踪实体就可触发对位置改变的计算,这继而又 可触发某个与位置有关的动作。
[0073] 然而,根据优选实施例,先前位置和当前位置由移动客户端自己提供。许多移动客 户端提供存储先前位置信息的位置缓存。在位置更新时,移动设备可将先前位置和当前位 置传输至系统以用于提供LBS,LBS可触发对位置改变的计算以及某个与位置有关的动作。 这个选项更进一步地减少了所交换的消息数量。此外,系统不依赖于可供所有服务器访问 的共享数据层。通过将这个问题转移到客户端,使其与当前位置以及先前(可能本地缓存 的)位置一起发送,系统是无状态的并且不依赖于共享数据,从而实现了分布式计算。
[0074] 有几种以有利的方式设计和进一步改善本发明教导的方式。为此,其一方面涉及 权利要求1、7和14的从属权利要求,另一方面涉及附图所示的以举例方式给出的本发明的 优选实施例的下述说明。结合借助附图的本发明优选实施例的说明,将阐明教导的一般优 选实施例及其进一步改进。图中:
[0075] 图1为针对地理围栏系统中位置更新的例子的示意图,
[0076] 图2示出了被分割成多个四边形区块的地理区域,
[0077] 图3为服务器环形结构的示意图,该服务器环形结构与根据本发明的方法和系统 一起使用,以及
[0078] 图4示出了由区块的边缘修整的兴趣区域的例子。
[0079] 图1示出了地理围栏问题的基本概念。在第一位置更新时,移动设备位于区域1 内的先前位置PL处。在于第一位置更新之后执行的第二位置更新时,移动设备位于区域2 内的当前位置CL处。这就意味着,移动设备已从PL移动到CL并且从区域1移动到区域2。 地理围栏系统将以正被退出的形式触发区域1并且以正被进入的形式触发区域2。
[0080] 图2示出了被分割成尺寸相等的区块的地理区域。该地理区域是由图2所示的地 图表示的巴黎的中心。四边形区块将整个空间分割成更小的组块。兴趣区域可由街道、建 筑物(诸如购物商场、博物馆、电影院或会议中心)、地铁站等的一部分来定义。
[0081] 图3A显示了组织成环形结构2的四个服务器1。这些服务器可用于根据本发明的 系统和方法中。在图3的例子中,地理区域被分割成6x6网格,从而得到36个区块。每个 区块根据一致性哈希函数与四个服务器中的一者相关联。每个服务器与相同数量的区块, 即9个区块,相关联。
[0082] 在图3B中,将新服务器3添加到环形结构2。在添加新服务器3时,为与一个或两 个邻近服务器相关联的若干区块分配新服务器。在图3的例子中,一个服务器1为邻近的 新服务器3提供4个区块,从而保持了 5。这就意味着重新安排4个区块。
[0083] 通常,在将新服务器添加到环形结构或者从环形结构中移除服务器时,一般情况 下都
[0084] C = K/n
[0085] 必须重新安排区块,其中网格包括K个区块且环形结构包含η个服务器。在该例 子中,添加一个服务器将导致重新安排C = K/n = 36/5 = 7. 2个区块。如果仅重新安排来 自邻近服务器的区块,则这个数量会得到相当程度的降低。即使重新安排来自两个邻近服 务器的区块,重新关联的区块的数量也低于这个平均数量。邻近服务器可为新服务器提供 三分之一的关联区块,即,将3个区块从每个邻近服务器转移到新服务器。因此,必须重新 分配6个区块。
[0086] 如果系统提供副本,则重新安排的区块的平均数量是
[0087] C = R · K/n
[0088] 其中,R是副本的数量,即每个区块均与R个服务器相关联。同样这种情况下,仅 将来自一个或两个邻近服务器的若干区块重新关联到新服务器就大幅减少了重新安排的 区块的数量。
[0089] 图4A显示了与区块5相交的兴趣区域4。在图4A的例子中,兴趣区域4由矩形区 块5的两个边缘修整。这就将兴趣区域划分成与区块5相交的部分和位于区块5外部的部 分。根据本申请,兴趣区域被划分成与区块5相交的第一部分6和溢出到区块5外的第二 部分7。在生成数据集结构时,生成第一数据集和第二数据集,其中第一数据集包括每个第 一部分6且第二数据集包括每个第二部分7。在存储第一数据集和第二数据集时,应存储第 一部分与第二部分之间的链路。这会大幅促进对位置改变的确定。
[0090] 图4B更清楚地显示了第
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1