基于过滤聚类法推送信息的方法和服务器的制造方法

文档序号:6494284阅读:139来源:国知局
基于过滤聚类法推送信息的方法和服务器的制造方法
【专利摘要】本发明实施例公开了一种基于过滤聚类法推送信息的方法和服务器,所述方法包括:将地理范围划分为多于一个区块;获取每个区块中用户的数量;根据所述获取的用户的数量,过滤用户数量小于预置数值的区块;根据过滤后保留的区块,将彼此相邻的区块形成的一个连续的区域作为热区存储,所述存储的热区的数量至少多于一个;为所述热区内的用户提供服务。本发明实施例提供的技术方案,将地理区域划分为区块,根据区块中的用户数量对区块进行过滤和聚合,形成热区,为热区中当前的用户提供更丰富的服务,本方案过滤聚合操作计算简单,处理时间短,过滤用户数量少的区块,聚合用户数量大的区块,形成热区,减少运算的开销,大大降低了维护成本。
【专利说明】基于过滤聚类法推送信息的方法和服务器
【技术领域】
[0001]本发明涉及通信【技术领域】,具体涉及以一种基于过滤聚类法推送信息的方法和服务器。
【背景技术】
[0002]基于密度的空间成群应用以噪声(DBSCAN,Density-Based Spatial Clusteringof Applications with Noise)是一个有代表性的基于密度的聚类算法。与划分和层次聚类方法不同,它将簇定义为密度相连的点的最大集合,能够把具有足够高密度的区域划分为簇,并可在噪声的空间数据库中发现任意形状的聚类。它采用迭代查找的方法,通过迭代地查找所有直接密度可达的对象,找到各个所有密度可达的对象,具体算法简单描述如下:
[0003]( I)检测数据库中尚未检查过的对象P,如果P为被处理(归为某个簇或者标记为噪声),则检查其邻域,若包含的对象数不小于,建立新簇C,将中所有点加入C ;
[0004](2)对C中所有尚未被处理的对象q,检查其邻域,若中至少包含个对象,则将中未归入任何一个簇的对象加入C ;
[0005](3)重复步骤(2),继续检查C中未处理的对象,知道没有新的对象加入当前簇C ;
[0006](4)重复步骤(I广(3),直到所有对象都归入了某个簇或标记为噪声。
[0007]但是,目前的DBSCAN聚类算法,面对海量数据处理,例如8亿的QQ用户群,计算的时间长,无法满足业务需求,计算过程复杂度大,维护成本巨大。

【发明内容】

[0008]本发明实施例提供了一种基于过滤聚类法推送信息的方法和服务器,可以减少服务器运算的开销,大大降低了维护成本。
[0009]本发明实施例提供了 一种基于过滤聚类法推送信息的方法,所述方法包括:
[0010]将地理范围划分为多于一个区块;
[0011]获取每个区块中用户的数量;
[0012]根据所述获取的用户的数量,过滤用户数量小于预置数值的区块;
[0013]根据过滤后保留的区块,将彼此相邻的区块形成的一个连续的区域作为热区存储,所述存储的热区的数量至少多于一个;
[0014]向所述热区内的用户进行信息推送。
[0015]本发明实施例还提供了一种服务器,所述服务器包括:
[0016]切分单元,获取数量单元,过滤单元,聚合单元,和服务单元;
[0017]所述切分单元,用于将地理范围划分为多于一个区块;
[0018]所述获取数量单元,用于获取每个区块中用户的数量;
[0019]所述过滤单元,用于根据所述获取的用户的数量,过滤用户数量小于预置数值的区块;
[0020]所述聚合单元,用于根据过滤后保留的区块,将彼此相邻的区块形成的一个连续的区域作为热区存储,所述存储的热区的数量至少多于一个;
[0021 ] 所述服务单元,用于向所述热区内的用户进行信息推送。
[0022]从以上技术方案可以看出,本发明实施例具有以下优点:将地理区域划分为区块,根据区块中的用户数量对区块进行过滤和聚合,形成热区,为热区中当前的用户提供更丰富的服务,与现有技术采用DBSCAN聚类算法相比,本方案过滤聚合操作计算简单,处理时间短,过滤用户数量少的区块,聚合用户数量大的区块,形成热区,减少运算的开销,大大降低了维护成本。
【专利附图】

【附图说明】
[0023]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0024]图1是本发明实施例一提供的一种基于过滤聚类法推送信息的方法流程示意简图;
[0025]图2a是本发明实施例二提供的一种基于过滤聚类法推送信息的方法流程示意简图一部分;
[0026]图2b是本发明实施例二提供的一种基于过滤聚类法推送信息的方法流程示意简图另一部分;
[0027]图3是本发明实施例三提供的一种服务器示意简图;
[0028]图4是所述服务器中服务单元的一种具体示意简图;
[0029]图5是所述服务器中获取数量单元的一种具体示意简图;
[0030]图6是所述服务器中第三获取单元的一种具体示意简图;
[0031]图7是所述服务器中获取数量单元的另一种具体示意简图。
【具体实施方式】
[0032]本发明实施例提供的技术方案的目的是发现用户聚集密度大的地区(简称“热区”),当用户出现在该热区后,推送服务器可以为热区中的用户推送信息。便于用户能够及时快速的获取到该热区中的信息。
[0033]本发明实施例提供的一种基于过滤聚类法推送信息的方法和服务器,通过将地理范围划分为多个区块,获取每个区块中用户的数量,根据区块中用户的数量,对区块进行过滤,即将区块中用户数量少于预置数值的区块过滤,在服务器中仅存储用户数量单元预置数值的区块的信息,服务器可以进一步对该类存储的区块进行聚合,即将彼此相邻的区块形成的一个连续的区域作为热区存储,存储的热区的数量至少多于一个。有相邻关系的热区之间形成的一个连续的区域中用户数量是非常惊人的,可以为该热区内的用户集中提供更多更丰富的服务,使得服务器的服务效率最大化。当服务器判断出用户在该热区内,就可以通过用户的账号为用户提供服务器。使得用户及时了解该热区中的咨询。
[0034]下面结合实施例对本发明实施例提供的技术方案做具体说明。
[0035]实施例一[0036]本发明实施例提供一种基于过滤聚类法推送信息的方法。如图1所示,该方法包括:
[0037]步骤S100,将地理范围划分为多于一个区块。地理范围可以指具有一定面积的区域,例如可以将深圳的总面积作为一个地理范围,也可以将中国的总面积作为一个地理范围;地理范围作为一个平面可以划分为面积更小的区块,这里所说的区块,可以是规则紧密排列的图形,例如:大小相同的圆形,正方形,长方形,六边形,五边形等等;或者区块也可以是大小不同的、不规则的图形拼接无缝的形成的地理范围。为了便于机器实现,本发明是实施例中可以以正方形的栅格作为所说的“区块”来实现。每一区块也代表一定面积的地理范围。
[0038]服务器根据定位操作获取到用户的位置,用户的具体位置落入具体的栅格内,便于服务器根据用户历史位置信息统计出相关数据,作为后续判断为热区的参考信息。
[0039]步骤S102,获取每个区块中用户的数量。其中,服务器获取每个区块中用户的数量的方法,可以是根据用户历史定位信息,判断在该区块中的用户的总的数量。具体可以是统计在每个区块内有多少个用户历史定位点,作为每个区块中的用户数量。用户历史定位信息具体可以是指用户在某一时间段去过的地方,具体可以是在该时间段内用户留下了 3个定位信息,这三个定位信息可以分别位于不同的栅格内,如栅格1,栅格3,和栅格4。
[0040]步骤S104,根据获取的用户数量,过滤用户数量小于预置数值的区块。假设预置数值具体可以是1000,服务器统计出在每个区块内,用户历史定位的点的数量。每个区块内的点的数量越多,表示该区块覆盖的区域内用户的数量越多,更方便为数量巨大的用户进行服务。相反,区块内的点的数量越少,表示该区块覆盖的区域内用户的数量越少,不便于为用户提供更丰富的服务,即服务成本太高。
[0041]步骤S106,根据过滤后保留的区块,将彼此相邻的区块形成的一个连续的区域作为热区存储,所述存储的热区的数量至少多于一个。例如,保留的栅格为栅格I至栅格8,其中,栅格I是独立的,不与其他栅格相邻,则栅格I可以单独作为一个热区,栅格2与栅格3相邻,栅格3与栅格4相邻,栅格4与栅格5相邻,则栅格2、3、4、5形成一个连续的区域,则这个连续的区域可以称为一个热区;假设栅格6、7、8也是彼此相邻形成一个联系的区域,即热区。热区的范围越大,包含的区块的数量越多,则该热区中用户的数量就越大。例如:深圳地区的华强北地区,或者东门等,都是包含有多个区块形成的连续的区域,即热区。当热区越大,则服务器在适当的范围内效率可以实现最大化。
[0042]可选的,服务器也可以将单个的区块作为热区,即获取的点的数量大于预置的数值的区块都可以单独作为热区。
[0043]步骤S108,向所述热区内的用户进行信息推送。
[0044]其中,步骤S108为热区内的用户提供服务,具体可以包括如下:步骤S108a?S108c。
[0045]步骤S108a,获取到用户当前位置和用户的账号。当某个用户进入到一个热区中后,服务器获取到用户的当前位置以及用户账号后,可以为该用户提供相应的信息服务,例如用户使用QQ定位服务,服务器可以获取到该QQ用户的账号和当前位置。服务器会进行后续为该热区中的用户提供信息服务。
[0046]步骤S108b,判断用户当前位置是否在热区中,如果是,执行步骤S108c,通知推送服务器根据用户的账号为用户提供服务。例如:为用户提供当前该热区内发生的重点事件的消息,以及为用户提供便利的其它信息服务。如果不在热区中,则结束流程。
[0047]本发明实施例提供的一种基于过滤聚类法推送信息的方法,通过将地理范围划分为多个区块,获取每个区块中用户的数量,根据区块中用户的数量,对区块进行过滤,即将区块中用户数量少于预置数值的区块过滤,在服务器中仅存储用户数量单元预置数值的区块的信息,服务器可以进一步对该类存储的区块进行聚合,即将彼此相邻的区块形成的一个连续的区域作为热区存储,存储的热区的数量至少多于一个。有相邻关系的热区之间形成的一个连续的区域中用户数量是非常惊人的,可以为该热区内的用户集中提供更多更丰富的服务,使得服务器的服务效率最大化。当服务器判断出用户在该热区内,就可以通过用户的账号为用户提供服务器。使得用户及时了解该热区中的咨询。
[0048]本发明实施例提供的技术方案,将地理区域划分为区块,根据区块中的用户数量对区块进行过滤和聚合,形成热区,为热区中当前的用户提供更丰富的服务,与现有技术采用DBSCAN聚类算法相比,本方案过滤聚合操作计算简单,处理时间短,过滤用户数量少的区块,聚合用户数量大的区块,形成热区,减少运算的开销,大大降低了维护成本。
[0049]实施例二
[0050]本发明实施例提供一种基于过滤聚类法推送信息的方法。如图2a和图2b所示,该方法包括:
[0051]步骤S200,服务器将地理范围划分为栅格。其中,具体可以是将一定地理区域表面(例如:深圳市的二维平面)划分为大小均匀紧密相邻的网格阵列,栅格的最小单位可以正方形也可以是长方形,可以根据具体的设计要求而确定,在本发明实施例重点以栅格最小单位是正方形的情况进行说明。
[0052]服务器根据定位操作获取到用户的位置,用户的具体位置落入具体的栅格内,便于服务器根据用户历史位置信息统计出相关数据,作为后续判断为热区的参考信息。
[0053]步骤S201,服务器获取用户历史定位信息。其中,用户历史定位信息具体可以是指用户在某一时间段去过的地方,具体可以是在该时间段内用户留下了 3个定位信息,这三个定位信息可以分别位于不同的栅格内,如栅格I,栅格3,和栅格4。
[0054]步骤S202,服务器获取各栅格的中心点位置。其中,栅格的中心点位置是指正方形内切圆的圆心,该圆心到该圆心所在的栅格边的距离是已知的,即内切圆的半径是已知的。获取各栅格中心点位置的用途是为了计算用户历史定位信息与当前中心点位置之间的距离,当用户历史定位信息与当前中心点位置之间的距离,小于已知的内切圆的半径,则表示该用户定位信息在该栅格内,可以理解为栅格内的一个点。
[0055]步骤S203,服务器计算栅格中心点位置与用户历史定位之间的距离。
[0056]步骤S204,服务器根据计算出的距离,获取到该用户历史定位所归属的栅格,将用户历史定位作为一个栅格内的点。如果计算出用户历史定位A点与栅格I中心距离小于栅格I内切圆半径,则可以判断A点在栅格I内,同理,用户历史定位点B点,C点可以用相同的方法判断出位于栅格3,栅格4内。
[0057]步骤S205,服务器对每个栅格内点进行统计,从而获取每个区块中用户的数量。
[0058]需要说明的是,上述步骤S201至S205是实现服务器获取每个区块中用户的数量的一种优选的方法,本发明实施例还提供另外一种优选的获取每个区块中用户的数量,具体包括:获取用户历史定位信息;获取所述用户历史定位信息所归属的栅格;统计每个栅格中用户的数量。通过操作也可以获取到每个栅格中用户的数量,设计人员可以根据具体的情况,选择其中一种。
[0059]步骤S206,服务器判断每个栅格中统计的点的数量是否大于预置的数值。
[0060]步骤S207,服务器存储点的数量大于预置的数值的栅格信息,将此类栅格定义为热格子。对于点的数量低于预置的数值的栅格,服务可以不做处理。
[0061]例如,假设预置的数值具体可以是1000,服务器统计出在每个栅格内,用户历史定位的点的数量。每个栅格内的点的数量越多,表示该栅格覆盖的区域内用户的数量越多,更方便为数量巨大的用户进行服务。相反,栅格内的点的数量越少,表示该栅格覆盖的区域内用户的数量越少,不便于为用户提供更丰富的服务,即服务成本太高。
[0062]步骤S208,服务器将存储的栅格中,彼此相邻的栅格形成的一个连续的区域作为热区存储。热区的范围越大,包含的栅格的数量越多,则该热区中用户的数量就越大。例如:深圳地区的华强北地区,或者东门等,都是包含有多个栅格形成的连续的区域,即热区。当热区越大,则服务器在适当的范围内效率可以实现最大化。
[0063]可选的,服务器也可以将记录的栅格作为热区,即获取的点的数量大于预置的数值的栅格作为热区。
[0064]如下步骤可以同时参考图2b,包括:
[0065]步骤S209,服务器根据存储的热区,获取用户的账号。用户的账号可以但不限于QQ号码。服务器具体可以是根据用户在该热区中的历史信息,获取到用户的账号,如用户历史定位信息,或者在该热区中有使用账号的历史。
[0066]步骤S210,定位服务器获取到用户的当前位置和用户账号。其中,步骤S210 —种具体的实现方式可以是,接收定位服务器发送的用户当前位置和用户账号。但本发明实施例不限制于当前的举例。
[0067]可选的,步骤S210中获取用户当前位置和用户账号,具体也可以包括:通过用户使用的通过即时通讯工具,获取用户当前位置和即时通讯工具的账号。
[0068]步骤S211,定位服务器将获取的当前位置和用户账号发送给推送服务器。通过用户使用的通过即时通讯工具,获取用户当前位置和即时通讯工具的账号。该即时通讯工具可以是QQ等,用户使用手机QQ定位服务,服务器获取到用户通过QQ定位服务器的当前位置,将用户的QQ账号作为用户身份特征,便于后续通过该QQ账号为用户推送信息。
[0069]步骤S212,推送服务器接收到用户当前位置和用户账号后,根据服务器中存储的热区和用户的账号,判断该当前位置是否在热区,判断该用户账号是否是热区中出现的账号。
[0070]步骤S213,当判断出用户当前位置在热区后,向所述热区内的用户进行信息推送。例如:为用户提供当前该区域内发生的重点事件的消息,以及为用户提供便利的其它服务。
[0071]本发明实施例提供的一种基于过滤聚类法推送信息的方法,通过将地理范围划分为多个区块,获取每个区块中用户的数量,根据区块中用户的数量,对区块进行过滤,即将区块中用户数量少于预置数值的区块过滤,在服务器中仅存储用户数量单元预置数值的区块的信息,服务器可以进一步对该类存储的区块进行聚合,即将彼此相邻的区块形成的一个连续的区域作为热区存储,存储的热区的数量至少多于一个。有相邻关系的热区之间形成的一个连续的区域中用户数量是非常惊人的,可以为该热区内的用户集中提供更多更丰富的服务,使得服务器的服务效率最大化。当服务器判断出用户在该热区内,就可以通过用户的账号为用户提供服务器。使得用户及时了解该热区中的咨询。
[0072]本发明实施例提供的技术方案,将地理区域划分为区块,根据区块中的用户数量对区块进行过滤和聚合,形成热区,为热区中当前的用户提供更丰富的服务,与现有技术采用DBSCAN聚类算法相比,本方案过滤聚合操作计算简单,处理时间短,过滤用户数量少的区块,聚合用户数量大的区块,形成热区,减少运算的开销,大大降低了维护成本。
[0073]实施例三
[0074]本发明实施例提供一种服务器,如图3所示,该服务器包括:切分单元300,获取数量单元302,过滤单元304,聚合单元306,和服务单元308 ;
[0075]切分单元300,用于将地理范围划分为多于一个区块。地理范围作为一个平面可以划分为面积更小的区块,这里所说的区块,可以是规则紧密排列的图形,例如:大小相同的圆形,正方形,长方形,六边形,五边形等等;或者区块也可以是大小不同的、不规则的图形拼接无缝的形成的地理范围。为了便于机器实现,本发明是实施例中可以以正方形的栅格作为所说的“区块”来实现。每一区块也代表一定面积的地理范围。
[0076]服务器根据定位操作获取到用户的位置,用户的具体位置落入具体的栅格内,便于服务器根据用户历史位置信息统计出相关数据,作为后续判断为热区的参考信息。
[0077]所述获取数量单元302,用于获取每个区块中用户的数量。其中,服务器获取每个区块中用户的数量的方法,可以是根据用户历史定位信息,判断在该区块中的用户的总的数量。具体可以是统计在每个区块内有多少个用户历史定位点,作为每个区块中的用户数量。用户历史定位信息具体可以是指用户在某一时间段去过的地方,具体可以是在该时间段内用户留下了 3个定位信息,这三个定位信息可以分别位于不同的栅格内,如栅格1,栅格3,和栅格4。
[0078]所述过滤单元304,用于根据所述获取的用户的数量,过滤用户数量小于预置数值的区块。假设预置数值具体可以是1000,服务器统计出在每个区块内,用户历史定位的点的数量。每个区块内的点的数量越多,表示该区块覆盖的区域内用户的数量越多,更方便为数量巨大的用户进行服务。相反,区块内的点的数量越少,表示该区块覆盖的区域内用户的数量越少,不便于为用户提供更丰富的服务,即服务成本太高。
[0079]所述聚合单元306,用于根据过滤后保留的区块,将彼此相邻的区块形成的一个连续的区域作为热区存储,所述存储的热区的数量至少多于一个。热区的范围越大,包含的区块的数量越多,则该热区中用户的数量就越大。例如:深圳地区的华强北地区,或者东门等,都是包含有多个区块形成的连续的区域,即热区。当热区越大,则服务器在适当的范围内效率可以实现最大化。
[0080]可选的,服务器也可以将单个的区块作为热区,即获取的点的数量大于预置的数值的区块都可以单独作为热区。
[0081 ] 所述服务单元308,用于向所述热区内的用户进行信息推送。
[0082]优选的,所述服务单元308,如图4,包括:获取用户信息单元401,判断单元402,和通知单元403 ;
[0083]所述获取用户信息单元401,用于获取用户当前位置和用户账号.当某个用户进入到一个热区中后,服务器获取到用户的当前位置以及用户账号后,可以为该用户提供相应的信息服务,例如用户使用QQ定位服务,服务器可以获取到该QQ用户的账号和当前位置。服务器会进行后续为该热区中的用户提供信息服务。
[0084]所述判断单元402,用于判断用户当前位置是否在热区中;
[0085]所述通知单元403,用于若所述用户当前位置是在热区中,通知推送服务器根据用户的账号为用户提供服务。例如:为用户提供当前该热区内发生的重点事件的消息,以及为用户提供便利的其它信息服务。如果不在热区中,则结束流程。
[0086]优选的,所述获取用户信息单元401,具体用于通过用户使用的通过即时通讯工具,获取用户当前位置和即时通讯工具的账号。
[0087]优选的,所述获取用户信息单元401,具体包括接收单元,
[0088]所述接收单元,用于接收定位服务器发送的用户当前位置和用户账号。
[0089]优选的,所述切分单元300,具体用于将地理范围划分为多于一个的栅格,所述栅格为正方形。
[0090]优选的,所述获取数量单元302,如图5所示,具体包括:第一获取单元501,第二获取单元502,计算单元503,第三获取单元504,和第一统计单元505 ;
[0091]所述第一获取单元501,用于获取用户历史定位信息;
[0092]所述第二获取单元502,用于获取各栅格的中心点位置;
[0093]所述计算单元503,用于计算栅格中心点位置与用户历史定位之间的距离;
[0094]所述第三获取单元504,用于根据计算出的距离,获取所述用户历史定位所归属的栅格,将用户历史定位作为一个栅格内的点;
[0095]所述统计单元505,用于对每个栅格内点进行统计,从而获取每个区块中用户的数量。
[0096]优选的,所述第三获取单元504,如图6所示,具体包括:第一判断单元601,和获知单元602 ;
[0097]所述第一判断单元601,用于判断所述计算出的距离是否小于所述栅格内切圆的
半径;
[0098]所述获知单元602,用于若计算出的距离小于所述栅格内切圆的半径,获知该用户历史定位归属所述栅格,将所示用户历史定位作为一个栅格内的点。
[0099]优选的,所述获取数量单元302,如图7所示,具体包括:第四获取单元701,第五获取单元702,和第二统计单元703 ;
[0100]所述第四获取单元601,用于获取用户历史定位信息;
[0101]所述第五获取单元602,用于获取所述用户历史定位信息所归属的栅格;
[0102]所述第二统计单元603,用于统计每个栅格中用户的数量。
[0103]本发明实施例提供的一种服务器,服务器通过将地理范围划分为多个区块,获取每个区块中用户的数量,根据区块中用户的数量,对区块进行过滤,即将区块中用户数量少于预置数值的区块过滤,在服务器中仅存储用户数量单元预置数值的区块的信息,服务器可以进一步对该类存储的区块进行聚合,即将彼此相邻的区块形成的一个连续的区域作为热区存储,存储的热区的数量至少多于一个。有相邻关系的热区之间形成的一个连续的区域中用户数量是非常惊人的,可以为该热区内的用户集中提供更多更丰富的服务,使得服务器的服务效率最大化。当服务器判断出用户在该热区内,就可以通过用户的账号为用户提供服务器。使得用户及时了解该热区中的咨询。
[0104]本发明实施例提供的技术方案,将地理区域划分为区块,根据区块中的用户数量对区块进行过滤和聚合,形成热区,为热区中当前的用户提供更丰富的服务,与现有技术采用DBSCAN聚类算法相比,本方案过滤聚合操作计算简单,处理时间短,过滤用户数量少的区块,聚合用户数量大的区块,形成热区,减少运算的开销,大大降低了维护成本。
[0105]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0106]以上对本发明所提供的一种基于过滤聚类法推送信息的方法和服务器进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种基于过滤聚类法推送信息的方法,其特征在于,所述方法包括: 将地理范围划分为多于一个区块; 获取每个区块中用户的数量; 根据所述获取的用户的数量,过滤用户数量小于预置数值的区块; 根据过滤后保留的区块,将彼此相邻的区块形成的一个连续的区域作为热区存储,所述存储的热区的数量至少多于一个; 向所述热区内的用户进行信息推送。
2.根据权利要求1所述的方法,其特征在于,所述为所述热区内的用户提供服务,包括: 获取用户当前位置和用户账号; 判断用户当前位置是否在热区中,如果是,通知推送服务器根据用户的账号为用户提供服务。
3.根据权利要 求2所述的方法,其特征在于,所述获取用户当前位置和用户账号,包括: 通过用户使用的通过即时通讯工具,获取用户当前位置和即时通讯工具的账号。
4.根据权利要求2所述的方法,其特征在于,所述获取用户当前位置和用户账号,包括: 接收定位服务器发送的用户当前位置和用户账号。
5.根据权利要求1所述的方法,其特征在于,所述将地理范围划分为多于一个区块,包括: 将地理范围划分为多于一个的栅格,所述栅格为正方形。
6.根据权利要求5所述的方法,其特征在于,所述获取每个区块中用户的数量,具体包括: 获取用户历史定位信息; 获取各栅格的中心点位置; 计算栅格中心点位置与用户历史定位之间的距离; 根据计算出的距离,获取所述用户历史定位所归属的栅格,将用户历史定位作为一个栅格内的点; 对每个栅格内点进行统计,从而获取每个区块中用户的数量。
7.根据权利要求6所述的方法,其特征在于,所述根据计算出的距离,获取所述用户历史定位所归属的栅格,将用户历史定位作为一个栅格内的点,包括: 判断所述计算出的距离是否小于所述栅格内切圆的半径,如果是,则获知该用户历史定位归属所述栅格,将所示用户历史定位作为一个栅格内的点。
8.根据权利要求5所述的方法,其特征在于,所述获取每个区块中用户的数量,包括: 获取用户历史定位信息; 获取所述用户历史定位信息所归属的栅格; 统计每个栅格中用户的数量。
9.一种服务器,其特征在于,所述服务器包括: 切分单元,获取数量单元,过滤单元,聚合单元,和服务单元;所述切分单元,用于将地理范围划分为多于一个区块; 所述获取数量单元,用于获取每个区块中用户的数量; 所述过滤单元,用于根据所述获取的用户的数量,过滤用户数量小于预置数值的区块; 所述聚合单元,用于根据过滤后保留的区块,将彼此相邻的区块形成的一个连续的区域作为热区存储,所述存储的热区的数量至少多于一个; 所述服务单元,用于向所述热区内的用户进行信息推送。
10.根据权利要求9所述服务器,其特征在于,所述服务单元包括:获取用户信息单元,判断单元,和通知单元; 所述获取用户信息单元,用于获取用户当前位置和用户账号; 所述判断单元,用于判断用户当前位置是否在热区中; 所述通知单元,用于若所述用户当前位置是在热区中,通知推送服务器根据用户的账号为用户提供服务。
11.根据权利要求10所述服务器,其特征在于,所述获取用户信息单元,具体用于通过用户使用的通过即时通讯工具,获取用户当前位置和即时通讯工具的账号。
12.根据权利要求10所述服务器,其特征在于,所述获取用户信息单元,具体包括接收单元, 所述接收单元,用于接收定位服务器发送的用户当前位置和用户账号。
13.根据权利要求9所述服务器,其特征在于,所述切分单元,具体用于将地理范围划分为多于一个的栅格,所述栅格为正方形。
14.根据权利要求13所述服务器,其特征在于,所述获取数量单元,具体包括:第一获取单元,第二获取单元,计算单元,第三获取单元,和第一统计单元; 所述第一获取单元,用于获取用户历史定位信息; 所述第二获取单元,用于获取各栅格的中心点位置; 所述计算单元,用于计算栅格中心点位置与用户历史定位之间的距离; 所述第三获取单元,用于根据计算出的距离,获取所述用户历史定位所归属的栅格,将用户历史定位作为一个栅格内的点; 所述统计单元,用于对每个栅格内点进行统计,从而获取每个区块中用户的数量。
15.根据权利要求14所述服务器,其特征在于,所述第三获取单元具体包括:第一判断单元,和获知单元; 所述第一判断单元,用于判断所述计算出的距离是否小于所述栅格内切圆的半径;所述获知单元,用于若计算出的距离小于所述栅格内切圆的半径,获知该用户历史定位归属所述栅格,将所示用户历史定位作为一个栅格内的点。
16.根据权利要求13所述服务器,其特征在于,所述获取数量单元,具体包括:第四获取单元,第五获取单元,和第二统计单元; 所述第四获取单元,用于获取用户历史定位信息; 所述第五获取单元,用于获取所述用户历史定位信息所归属的栅格; 所述第二统计单元,用于统计每个栅格中用户的数量。
【文档编号】G06F17/30GK103902636SQ201210590440
【公开日】2014年7月2日 申请日期:2012年12月30日 优先权日:2012年12月30日
【发明者】史晓峰 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1