分布式服务的数据处理方法及装置的制造方法

文档序号:9667371阅读:521来源:国知局
分布式服务的数据处理方法及装置的制造方法
【技术领域】
[0001] 本发明涉及互联网技术领域,尤其涉及一种分布式服务的数据处理方法及装置。
【背景技术】
[0002] 搜索引擎的重要作用之一就是为广大网民提供信息检索服务。通常,在用户提交 搜索请求之后,服务入口会将搜索请求传送到最近的机房服务器。然而,由于运营商等原因 也会存在跳网现象,即是部分数据传送到非最近的机房服务器的情况。跳网现象会导致用 户行为数据局部片段化,进而影响搜索引擎的服务质量。这就需要在多机房之间同步用户 行为数据,使得每个机房都存有用户的全量数据。
[0003] 现有的数据处理方法主要有原始数据全量同步和计算结果全量同步两种。对于原 始数据全量同步方法,其传输的原始数据未经过任何处理,将导致每个机房都需要针对这 些数据做重复计算,造成资源大量浪费。在此基础上,计算结果全量同步方法虽然解决了上 述重复计算的问题,但由于仍是全量发送,导致无效传输量过大。

【发明内容】

[0004] 本发明的目的在于,提供一种分布式服务的数据处理方法及装置,以实现自动、快 速地发送用户的网络行为数据给存储有用户的网络行为数据的服务器,避免无效传输,降 低数据维护成本。
[0005] 根据本发明的一方面,提供一种分布式服务的数据处理方法,包括:在第一服务器 执行以下步骤:获取用户的网络访问请求;从所述网络访问请求提取所述用户的第一网络 行为数据;从预存的用户访问数据分布索引获取与所述用户相应的第二服务器的信息,所 述用户访问数据分布索引包括存储有用户的网络行为数据的服务器的信息;将所述用户的 第一网络行为数据分别发送给所述第二服务器。
[0006] 优选地,所述方法还包括:如果在所述用户访问数据分布索引中不存在所述第一 服务器存有所述用户的网络行为数据的数据,则在所述用户访问数据分布索引中添加指示 所述第一服务器存有所述用户的网络行为数据的信息,并且将所述第一服务器存有所述用 户的网络行为数据的第一通知消息发送给所述分布式服务的其他服务器。
[0007] 优选地,所述方法还包括:从第三服务器接收所述第三服务器存有所述用户的网 络行为数据的第二通知消息,在所述用户访问数据分布索引中添加指示所述第三服务器存 有所述用户的网络行为数据的信息。
[0008] 优选地,所述方法还包括:存储所述第一网络行为数据。
[0009] 优选地,所述方法还包括:从所述第二服务器接收所述用户的第二网络行为数据。
[0010] 优选地,所述方法还包括:从所述第三服务器接收所述用户的第三网络行为数据。
[0011] 优选地,所述服务器的信息是服务器的IP地址或者预设的服务器序号。
[0012] 根据本发明的另一方面,还提供一种分布式服务的数据处理装置,包括:访问请求 获取模块,用于获取用户的网络访问请求;行为数据提取模块,用于从所述网络访问请求提 取所述用户的第一网络行为数据;服务器信息获取模块,用于从预存的用户访问数据分布 索引获取与所述用户相应的第二服务器的信息,所述用户访问数据分布索引包括存储有用 户的网络行为数据的服务器的信息;行为数据发送模块,用于将所述用户的第一网络行为 数据分别发送给所述第二服务器。
[0013] 优选地,所述装置还包括:索引添加模块,用于如果在所述用户访问数据分布索引 中不存在所述第一服务器存有所述用户的网络行为数据的数据,则在所述用户访问数据分 布索引中添加指示所述第一服务器存有所述用户的网络行为数据的信息,通知消息发送模 块,用于将所述第一服务器存有所述用户的网络行为数据的第一通知消息发送给所述分布 式服务的其他服务器。
[0014] 优选地,所述装置还包括:通知消息接收模块,用于从第三服务器接收所述第三服 务器存有所述用户的网络行为数据的第二通知消息,所述索引添加模块还用于在所述用户 访问数据分布索引中添加指示所述第三服务器存有所述用户的网络行为数据的信息。
[0015] 优选地,所述装置还包括:行为数据存储模块,用于存储所述第一网络行为数据。
[0016] 优选地,所述装置还包括:行为数据接收模块,用于从所述第二服务器接收所述用 户的第二网络行为数据。
[0017] 优选地,所述行为数据接收模块还用于从所述第三服务器接收所述用户的第三网 络行为数据。
[0018] 优选地,所述服务器的信息是服务器的IP地址或者预设的服务器序号。
[0019] 本发明实施例提供的分布式服务的数据处理方法及装置,在从获取到的网络访问 请求提取所述用户的第一网络行为数据之后,进一步从预存的用户访问数据分布索引获取 与所述用户相应的第二服务器的信息,自动、快速地发送用户的网络行为数据给存储有用 户的网络行为数据的第二服务器。可见,本实施例所述方法无需同步全量数据,避免了无效 传输,降低了数据维护成本,并且延迟较小。
【附图说明】
[0020] 图1是示出反映本发明的总体发明构思的一个示例的示意图;
[0021] 图2是示出根据本发明实施例一的分布式服务的数据处理方法的流程图;
[0022] 图3是示出本发明实施例一的应用场景的示例性示意图;
[0023] 图4是示出根据本发明实施例二的分布式服务的数据处理装置的逻辑框图。
【具体实施方式】
[0024] 本发明的基本构思是,提供一种分布式服务的数据同步方式:执行分布式服务的 多个服务器各自维护其用户访问数据分布索引,用于记录存有各个用户的网络行为数据的 服务器的信息。一方面,任一所述服务器在首次接收到某个用户的网络访问请求时,在其用 户访问数据分布索引中记录其存有所述用户的网络行为数据的信息,并且将其存有所述用 户的网络行为数据的信息发送给执行该分布式服务的其他服务器,其他服务器相应地将该 信息更新至其维护的用户访问数据分布索引。因此,执行分布式服务的多个服务器都存有 同步、完整的用户访问数据分布索引。
[0025] 另一方面,任一所述服务器在接收到某个用户的网络访问请求时,从网络访问请 求中提取所述用户的网络行为数据,从其维护的用户访问数据分布索引获取存有该用户的 网络行为数据的其他服务器的信息,并且将网络行为数据分别发送给其他服务器。由此,可 基于预存的用户访问数据分布索引获取存储有用户的网络行为数据在存有同一用户的服 务器之间同步发送用户的网络行为数据,而无需全量同步数据。
[0026] 图1是示出反映本发明的总体发明构思的一个示例的示意图。
[0027] 参照图1,假设服务器1接收到用户网络访问请求,检查该机房的ID索引1,如果 ID索引1存在所述用户ID,就根据所述用户ID对应的服务器信息获取存储有用户的网络 行为数据的其他服务器,假设是服务器2,然后将同步数据1发送给服务器2,同时本地也保 存用户的行为数据1。反之,服务器2如果接收到所述用户的网络访问请求时,也会将同步 数据2发送给服务器1,同时保存在行为数据2。从而完成同步数据的过程。
[0028] 如果ID索引1不存在所述用户ID,则表明是新增ID,就需要更新本地的ID索引 1,同时,通过同步模块1远程同步ID给其他服务器(如服务器2),服务器2根据接收到的 新增ID通知进行ID索引2的更新。从而完成同步ID的过程。需要说明的是,每个ID只 会被同步一次,且同步的信息仅有机房信息,所以避免了无效传输。
[0029] 由此可见,本发明实施例所述的分布式服务的数据处理方法以较小的代价(无需 同步全量数据,数据维护成本较小)有效地解决跳网现象造成的用户行为数据局部片断化 的问题,整体延迟非常小,可达毫秒级。
[0030] 此外,本发明实施例可以于任何搭建多机房的服务器应用,为具有广告推介、或基 于用户的行为序
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1