著录项信息
专利名称 | 网络中的个人数据搜索系统和方法 |
申请号 | CN200510109476.X | 申请日期 | 2005-10-20 |
法律状态 | 授权 | 申报国家 | 暂无 |
公开/公告日 | 2006-10-25 | 公开/公告号 | CN1852150 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L12/24 | IPC分类号 | H;0;4;L;1;2;/;2;4;;;H;0;4;L;9;/;3;2;;;G;0;6;F;1;7;/;3;0查看分类表>
|
申请人 | 华为技术有限公司 | 申请人地址 | 广东省深圳市龙岗区坂田华为总部办公楼
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 华为技术有限公司 | 当前权利人 | 华为技术有限公司 |
发明人 | 邵刚;莫彩文;张庆杰 |
代理机构 | 北京德琦知识产权代理有限公司 | 代理人 | 王琦;程殿军 |
摘要
本发明公开了一种网络中的个人数据搜索系统,包括:搜索客户端,搜索服务器,用户管理服务器,一个或一个以上搜索代理,以及一个或一个以上业务服务器。本发明同时还公开了两种实现网络中的个人数据搜索的方法。应用本发明的系统和方法,能够实现个人数据的统一搜索,为用户提供了方便快捷的对分布在网络各个节点上的个人数据的统一搜索服务,方便了用户查找和管理个人数据。再有,由于只有登录的用户才能查看个人数据,因此,确保了用户的个人数据只有自己才能查看,同时也保证了个人数据的安全。
技术领域\n本发明涉及数据搜索技术领域,特别是涉及网络中的个人数据搜索系统 和方法。\n背景技术\n随着互联网和电信网络的快速发展,业务的种类和数量迅速增长,用户 注册使用的业务也越来越多。用户在每个业务中个人数据,如个人隐私数据 和个人上传的公共数据,分布在每个业务的服务器中,用户对这些个人数据 的检索、管理和控制越来越困难。\n网络搜索引擎技术,如GoogleTM等,用于互联网络中的海量数据的全 文检索,搜索引擎使用软件机器人遍历网络空间,从预定的URL开始,扫 描指定地址范围内的网站,并沿着网络上的链接从一个网页到另一个网页, 从一个网站到另一个网站采集网页资料,该搜索技术针对的是网络上的公共 数据而不是某个用户的个人数据。\n桌面搜索引擎的出现在一定程度上解决了单机用户个人数据的快速检 索和管理。而用户的个人数据不只存储在个人终端内,而是分布在整个网络 的业务服务器中。如果用户要检索自己在网络中的数据,必须依次登录到每 个节点,并依次检索自己的个人数据。\n可见,在现有技术中并没有一种用于搜索个人数据的系统和方法,不能 解决用户个人数据的查找和管理这些问题,而这在网络迅速发展的今天是一 个不容忽视的问题。\n发明内容\n有鉴于此,本发明的一个主要目的在于提供一种网络中的个人数据搜索 系统,为用户提供对分布在网络各个节点上的个人数据的统一搜索服务,方 便用户查找和管理个人数据。\n本发明的另一主要目的是提供两种网络中的个人数据搜索方法,用以实 现个人数据的统一搜索。\n为达到上述目的,本发明的技术方案是这样实现的:\n一种网络中的个人数据搜索系统,该系统包括:搜索客户端,搜索服务 器,用户管理服务器,一个或一个以上搜索代理,以及一个或一个以上业务 服务器,其中,\n所述搜索客户端,用于接收来自用户的登录请求,将该用户登录所用的 包含用户ID和密码的用户登录信息发送给搜索服务器以进行鉴权;或者, 向搜索服务器发送搜索请求;或者,接收来自搜索服务器的搜索结果,并显 示该搜索结果;\n所述搜索服务器,用于接收来自搜索客户端的鉴权请求,对登录的用户 进行鉴权,鉴权通过后,接收来自搜索客户端的搜索请求,向用户管理服务 器查询该用户所签约的业务,获取该用户所签约的业务列表和该用户针对不 同业务服务器的用户安全令牌,以所获取的签约业务列表作为搜索范围,之 后,根据自身预先存储的业务与搜索代理的对应关系,向用户所签约业务所 对应的搜索代理发送包含提供该签约业务的业务服务器所对应的用户安全 令牌的搜索请求,接收来自搜索代理的搜索结果,将该搜索结果发送给搜索 客户端;或者,\n用于在满足预设搜索触发条件的情况下,向用户管理服务器查询某个或 某几个用户所签约的业务,获取该用户所签约的业务列表和该用户针对不同 业务服务器的用户安全令牌,以所获取的签约业务列表作为搜索范围,之后, 根据自身预先存储的业务与搜索代理的对应关系,向用户签约业务所对应的 搜索代理发送包含提供该签约业务的业务服务器所对应的用户安全令牌的 搜索请求,接收来自搜索代理的搜索结果并保存;或者,用于接收来自搜索 客户端的包含登录所用的用户ID的搜索请求,从自身存储的搜索结果中进 行搜索,将该搜索结果返回给搜索客户端;\n所述每个搜索代理,分别与一个或一个以上具有相同或相似业务特性的 业务服务器相连,接收来自搜索服务器的包含用户安全令牌的搜索请求,应 用该接收到的用户安全令牌与指定业务服务器进行互鉴权,鉴权通过后,将 接收到的搜索请求转换为业务服务器能够识别的请求后,发送给业务服务 器,或接收来自业务服务器的搜索结果;\n所述业务服务器,存储用户的个人数据信息,供搜索代理查询,给与其 相连的搜索代理返回响应信息;\n所述用户管理服务器,用于存储每个用户的签约业务列表和签约业务的 基本信息,根据接收到的来自搜索服务器的用户签约业务查询请求,获得该 用户的签约业务列表并生成该用户针对不同业务服务器的用户安全令牌,并 将所获得的信息返回给搜索服务器。\n较佳地,所述用户管理服务器内进一步包括用户在各个签约业务中的标 识对应关系;\n所述用户管理服务器接收到来自搜索服务器的用户签约业务查询请求 后,首先根据用户在各个签约业务中的标识对应关系,查询出该用户ID所 对应的统一用户ID,再根据该统一用户ID获得该用户的签约业务列表和该 用户针对不同业务服务器的用户安全令牌。\n较佳地,所述搜索服务器内包括搜索控制模块、客户端交互模块、用户 鉴权模块、结果处理模块和数据索引数据库,\n所述客户端交互模块,用于接收来自搜索客户端的包含登录所用用户登 录信息的鉴权请求,或用户的搜索请求;\n所述用户鉴权模块,用于根据接收到的用户登录信息对登录用户进行鉴 权;\n所述搜索控制模块,用于接收来自客户端交互模块的搜索请求,向用户 管理服务器查询该用户所签约的业务,获取该用户所签约的业务列表和该用 户针对不同业务服务器的用户安全令牌,以所获取的签约业务列表作为搜索 范围,之后,根据自身预先存储的业务与搜索代理的对应关系,向用户所签 约业务所对应的搜索代理发送包含提供该签约业务的业务服务器的用户安 全令牌的搜索请求,接收来自搜索代理的搜索结果,将该搜索结果发送给结 果处理模块;或者,\n用于在满足预设搜索触发条件的情况下,向用户管理服务器查询某用户 所签约的业务,获取该用户所签约的业务列表和该用户针对不同业务服务器 的用户安全令牌,以所获取的签约业务列表作为搜索范围,之后,根据自身 预先存储的业务与搜索代理的对应关系,向用户所签约业务所对应的搜索代 理发送包含提供该签约业务的业务服务器的用户安全令牌和指定业务服务 器标识的搜索请求,接收来自搜索代理的搜索结果,将所接收到的搜索结果 保存在自身的数据索引数据库内;或者,用于接收来自客户端交互模块的包 含登录所用的用户ID的搜索请求,从数据索引数据库中搜索用户所要求的 个人数据,将该搜索结果发送给结果处理模块;\n所述结果处理模块,用于接收搜索结果,并根据预设处理条件对搜索结 果进行整理处理后,以统一的格式返回给搜索客户端。\n较佳地,所述搜索控制模块,用于接收来自客户端交互模块的搜索请求, 获取用户的签约业务列表和该用户针对不同业务服务器的用户安全令牌后, 进一步用于将该列表作为搜索范围返回给客户端交互模块,并接收来自客户 端交互模块的包含搜索范围和/或搜索关键字的搜索请求,以用户要求的签 约业务列表作为搜索范围。\n较佳地,所述搜索服务器内进一步包括:用于存储经常被访问信息的数 据高速缓存模块,所述搜索服务器内的搜索控制模块从数据高速缓存模块, 或数据高速缓存模块和数据索引数据库中搜索用户所要求的个人数据。\n较佳地,所述搜索服务器内进一步包括业务管理模块,该业务管理模块 直接接收来自各个业务服务器的包含用户登录信息的搜索请求,应用该接收 到的用户登录信息与业务服务器进行互鉴权,鉴权通过后,向搜索控制模块 发送搜索请求;或者,接收来自搜索控制模块的搜索结果,并将该搜索结果 返回给发起搜索请求的业务服务器。\n较佳地,所述结果处理模块根据预设处理条件对搜索结果进行的整理处 理包括但不限于:过滤、排序和/或聚类处理。\n较佳地,所述结果处理模块返回给搜索客户端的统一的格式为HTML 格式或XML格式。\n较佳地,所述搜索代理位于搜索服务器端,或位于业务服务器端。\n较佳地,所述预设搜索触发条件为定时触发,或用户数据更新触发。\n一种网络中的个人数据搜索方法,该方法包括以下步骤:\na、搜索服务器接收到已登录用户发送的搜索请求后,获取该用户的签 约业务列表和该用户针对不同业务服务器的用户安全令牌,以该签约业务列 表作为搜索范围;之后,根据自身预先存储的业务与搜索代理的对应关系, 向用户签约业务所对应的搜索代理发送包含提供该签约业务的业务服务器 的用户安全令牌的搜索请求;\nb、搜索代理应用接收到的用户安全令牌与指定业务服务器相互鉴权后, 将接收到的搜索请求转换为业务服务器能够识别的请求后发送给业务服务 器,将接收到的搜索结果返回给搜索服务器;\nc、搜索服务器将接收到的搜索结果返回给搜索请求发起方,由搜索请 求发起方将该用户的个人数据显示给用户。\n较佳地,步骤a所述搜索服务器获取该用户的签约业务列表后,进一步 包括:将该签约业务列表作为用户可选的搜索范围返回给搜索请求发起方, 并等待接收来自搜索请求发起方的搜索范围和/或搜索关键字,根据来自搜 索请求发起方的搜索范围和/或搜索关键字,确定用户所要求搜索的签约业 务列表,之后,所述向搜索代理发送的搜索请求中进一步包括:搜索关键字。\n较佳地,所述搜索请求发起方为搜索客户端或业务服务器。\n较佳地,如果搜索代理对应多于一个的业务服务器,则搜索服务器向搜 索代理发送的搜索请求中进一步包括提供签约业务的业务服务器的标识。\n较佳地,所述搜索服务器从用户管理服务器中获取该用户的签约业务列 表和该用户针对不同业务服务器的用户安全令牌,具体过程为:\n如果该发起搜索请求的用户在各个服务器中所注册的用户名都一致,则 用户管理服务器接收到来自搜索服务器的查询请求后,从自身已保存的每个 用户与其所使用的签约业务信息的对应关系中直接获取该用户的签约业务 列表和该用户针对不同业务服务器的用户安全令牌,然后将所获取的信息返 回给搜索服务器;\n如果该发起搜索请求的用户在各个服务器中所注册的用户名不完全一 致,则用户管理服务器接收到来自搜索服务器的查询请求后,首先从自身保 存的该用户在各个签约业务中的标识对应关系中,获取该用户的统一ID, 确定该用户,然后再从自身已保存的每个用户与其所使用的签约业务信息的 对应关系中直接获取该用户的签约业务列表和该用户针对不同业务服务器 的用户安全令牌,将所获取的信息返回给搜索服务器。\n较佳地,所述搜索服务器将接收到的搜索结果返回给搜索客户端或业务 服务器之前,进一步包括:将搜索结果转换为统一的格式,并对搜索结果进 行整理操作;所述统一的格式为HTML格式或XML格式;所述整理操作包 括但不限于过滤、排序和/或聚类操作。\n一种网络中的个人数据搜索方法,当预设的搜索触发条件满足时,该方 法包括以下步骤:\nA、搜索服务器遍历已预先指定的用户ID,获取该用户已签约业务列表 和该用户针对不同业务服务器的用户安全令牌;之后,根据自身预先存储的 业务与搜索代理的对应关系,向用户签约业务所对应的搜索代理发送包含提 供该签约业务的业务服务器的用户安全令牌的搜索请求;\nB、搜索代理应用接收到的用户安全令牌与指定业务服务器相互鉴权 后,将接收到的搜索请求转换为业务服务器能够识别的请求后,发送给业务 服务器,并将接收到的搜索结果返回给搜索服务器;\nC、搜索服务器将接收到的个人数据搜索结果存储在自身的数据索引数 据库中,并按照存储关键字建立索引;\nD、搜索服务器判断已预先指定的用户ID是否全部建立索引,如果是 则结束,否则重复执行步骤A;\n当搜索服务器接收到已登录用户发送的搜索请求后,包括以下步骤:\nE、搜索服务器根据数据索引数据库中的存储关键字,在数据索引数据 库中搜索该用户的个人数据,并将该个人数据作为搜索结果返回给搜索请求 发起方,由搜索请求发起方将个人数据显示给用户。\n较佳地,如果搜索代理对应多于一个的业务服务器,则搜索服务器向搜 索代理发送的搜索请求中进一步包括提供签约业务的业务服务器的标识。\n较佳地,在步骤E执行之前进一步包括:所述搜索服务器获取该用户已 签约业务列表,将该签约业务列表作为搜索范围返回给搜索请求发起方,并 等待接收来自搜索请求发起方的搜索范围和/或搜索关键字;\n当搜索服务器在数据索引数据库中进行搜索时,根据所述搜索请求发起 方返回的搜索范围和/或关键字进行搜索。\n较佳地,该方法进一步包括:用于存储经常被访问信息的数据高速缓存 模块;\n所述搜索服务器从数据高速缓存模块,或数据高速缓存模块和数据索引 数据库中搜索用户所要求的个人数据。\n较佳地,所述搜索请求发起方为搜索客户端或业务服务器。\n较佳地,所述搜索服务器从用户管理服务器中获取该用户的签约业务列 表和该用户针对不同业务服务器的用户安全令牌,具体过程为:\n如果该发起搜索请求的用户在各个服务器中所注册的用户名都一致,则 用户管理服务器接收到来自搜索服务器的查询请求后,从自身已保存的每个 用户与其所使用的签约业务信息的对应关系中直接获取该用户的签约业务 列表和该用户针对不同业务服务器的用户安全令牌,然后将所获取的信息返 回给搜索服务器;\n如果该发起搜索请求的用户在各个服务器中所注册的用户名不完全一 致,则用户管理服务器接收到来自搜索服务器的查询请求后,首先从自身保 存的该用户在各个签约业务中的标识对应关系中,获取该用户的统一ID, 确定该用户,然后再从自身已保存的每个用户与其所使用的签约业务信息的 对应关系中直接获取该用户的签约业务列表和该用户针对不同业务服务器 的用户安全令牌,将所获取的信息返回给搜索服务器。\n较佳地,所述搜索服务器将接收到的搜索结果返回给搜索请求发起方之 前,进一步包括:将搜索结果转换为统一的格式,并对搜索结果进行整理操 作;所述整理操作包括但不限于过滤、排序和/或聚类操作。\n较佳地,所述预设的搜索触发条件为定时触发,或用户数据更新触发。\n应用本发明提供的系统和方法,解决了不能在网络中统一搜索个人数据 这一问题,能够在网络中实现个人数据的统一搜索,为用户提供了方便快捷 地对分布在网络各个节点上的个人数据的统一搜索服务,方便了用户查找和 管理个人数据。再有,由于只有登录的用户才能查看个人数据,因此,确保 了用户的个人数据只有自己才能查看,同时也保证了个人数据的安全。\n附图说明\n图1所示为应用本发明的网络中的个人数据搜索系统的逻辑结构示意 图;\n图2所示为应用本发明的实现实时搜索的流程示意图;\n图3所示为应用本发明的实现索引搜索时建立索引的流程示意图;\n图4所示为应用本发明的实现索引搜索时用户检索的流程示意图;\n图5所示为实现索引搜索时的建立索引过程的一实施例的交互流程图。\n具体实施方式\n下面结合附图及具体实施例,对本发明再做进一步地详细说明。\n图1所示为应用本发明的网络中的个人数据搜索系统的逻辑结构示意 图。该网络中的个人数据搜索系统包括:搜索客户端100,由搜索控制模块 210、客户端交互模块220、用户鉴权模块230、结果处理模块240和数据索 引数据库250构成的搜索服务器200,用户管理服务器300,一个或一个以 上搜索代理400,以及一个或一个以上业务服务器500。\n上述搜索客户端100用于接收来自用户的登录请求,将该用户登录所用 的包含用户ID和密码的用户登录信息发送给搜索服务器200内的用户鉴权 模块230;或者,将包含登录所用的用户ID的搜索请求发送给搜索服务器 200内的客户端交互模块220;或者,接收来自搜索服务器200内的结果处 理模块240的搜索结果,并显示该搜索结果。\n上述搜索服务器200内的用户鉴权模块230用于根据接收到的用户ID 和密码对登录用户进行鉴权。\n上述搜索服务器200内的搜索控制模块210,有两种执行场景:\n一种是用于接收来自客户端交互模块220的包含登录所用的用户ID和 密码的搜索请求,向用户管理服务器300查询该用户所签约的业务,获取该 用户所有所签约的业务列表和该用户针对不同业务服务器的用户安全令牌, 以所获取的签约业务列表作为搜索范围,根据自身预先存储的业务与搜索代 理的对应关系,向用户所签约业务所对应的搜索代理发送包含该用户针对该 业务服务器的用户安全令牌和指定业务服务器标识的搜索请求,接收来自搜 索代理的搜索结果,将该搜索结果发送给结果处理模块240;\n另一种是用于在满足预设搜索触发条件的情况下,遍历已预先指定的用 户ID,向用户管理服务器300查询该用户所签约的业务,获取该用户所签 约的业务列表和该用户针对不同业务服务器的用户安全令牌,以所获取的签 约业务列表作为搜索范围,之后,根据自身预先存储的业务与搜索代理的对 应关系,向用户签约业务所对应的搜索代理发送包含该业务服务器的用户安 全令牌和指定业务服务器标识的搜索请求,接收来自搜索代理的搜索结果, 将所接收到的搜索结果保存在自身的数据索引数据库250内,直到针对预先 指定的用户ID全部保存搜索结果为止;或者,用于接收来自客户端交互模 块的包含登录所用的用户ID的搜索请求,向用户管理服务器300查询该用 户所签约的业务,获取该用户所签约的业务列表,以所获取的签约业务列表 作为搜索范围,从数据索引数据库250中搜索用户所要求的个人数据,将该搜 索结果发送给结果处理模块240。\n上述搜索服务器200内的结果处理模块240用于接收搜索结果,并根据 预设处理条件对搜索结果进行整理处理,如过滤或排序操作处理等,然后使 用统一的格式,如HTML或XML格式,返回给搜索客户端100。\n上述每个搜索代理400,分别与一个或一个以上具有相同或相似业务特 性的业务服务器500直接相连,接收来自搜索控制模块210的包含用户在指 定业务的安全令牌和指定业务服务器标识的搜索请求,应用该接收到的安全 令牌与指定业务服务器进行互鉴权,鉴权通过后,将接收到的搜索请求转换 为业务服务器能够识别的请求,发送给业务服务器,也就是说,如果业务服 务器具有搜索功能,则直接发送搜索请求给该指定的业务服务器,如果业务 服务器不具有搜索功能,则根据业务服务器的具体要求发送定制的搜索请求 给该指定的业务服务器,如对于Web服务器可以发送相应的统一资源定位 地址URL请求获得相应的页面;或者接收来自业务服务器的搜索结果。所 述搜索代理是搜索服务器200与各个业务服务器之间的接口,因而根据不同 的业务服务器的特征,可以使用不同的搜索代理,而且上述搜索代理可以位 于搜索服务器端,也可以位于业务服务器端。\n上述用户管理服务器300主要的作用是实现用户与多个签约业务的对 应关系管理,可以提供统一的认证服务。其中存储的内容包括与用户管理服 务器签约的所有业务的目录索引,该目录索引至少包括业务的标识和业务的 访问入口信息;还包括每个用户与其所使用的签约业务信息的对应关系,即 用户签约业务列表;还包括用户在各个签约业务中的标识对应关系,如用户 在各个签约的业务服务器中的真实用户ID或该真实用户ID的别名,与用户 统一ID的对应关系列表。在本系统中,为搜索服务器200提供服务,能够 使搜索控制模块210获取一个用户所有已签约的业务服务器的信息,并且能 够生成可以登录到业务服务器用于进行认证的用户安全令牌。收到此用户安 全令牌的业务服务器可以通过本地验证或通过请求用户管理服务器验证其 有效性。\n这样,如果用户在所有服务器上所注册的用户标识都相同,则上述用户 管理服务器300中则无需存储用户在各个签约业务中的标识对应关系;如果 用户在各个服务器上所注册的用户标识并不完全相同,则用户管理服务器 300接收到来自搜索控制模块210的查询请求后,首先根据搜索服务器中的 用户在各个签约业务中的标识对应关系,查询出该用户ID所对应的统一用 户ID,确定该用户,然后再从自身已保存的用户与其所签约业务的对应关 系中直接获取该用户的签约业务列表和该用户针对不同业务服务器的用户 安全令牌,将所获得的信息返回给搜索服务器。这里,所谓自身已保存的用 户与其所签约业务的对应关系就是该用户的统一用户ID与其所签约业务的 对应关系。所谓统一用户ID就是该用户在用户管理服务器300中所注册的 用户ID。\n对于用户在各个签约业务中的标识对应关系可以有多种实现方式。例 如,如果某用户在业务服务器A中真实登录的ID为IDA1,而此时要查找该 用户在业务服务器B中的用户ID的过程可以采用以下不同实现方式:\n方式一:用户管理服务器300中存储用户真实ID和用户统一ID的对应关 系表,由IDA1查找到对应的统一用户ID,然后查出业务B中统一ID对应的IDB3, 参见表1:\n\n表1\n方式二:用户管理服务器300中存储用户ID别名和用户统一ID的对应关 系表,业务服务器A/B分别维护用户真实ID与ID别名的对应表,通过IDA1 的别名IDA1’用户管理服务器300由别名查找对应的统一ID,再对应到业务服 务器B中的真实ID或别名IDB3’,如果是别名在业务服务器B中再转换成真实 的ID,参见表2:\n\n表2\n以上两种实现方式仅是两种实施例而已,在实际应用中可以有多种组 合,在此并不做限定。\n上述业务服务器500存储用户的个人数据信息,供搜索代理400以用户 安全令牌中的用户ID作为查询条件,查询该用户的个人数据,将查到的个 人数据作为搜索结果返回给与其相连的搜索代理。\n对于上述系统,所述搜索控制模块210接收来自客户端交互模块220的 搜索请求,获取用户的签约业务列表和该用户针对不同业务服务器的用户安 全令牌后,还可以包括如下功能:将该列表作为搜索范围返回给客户端交互 模块220,并接收来自客户端交互模块220的包含搜索范围和/或搜索关键字 的搜索请求,以用户要求的签约业务列表作为搜索范围。\n对于上述系统,在搜索服务器200内还可以进一步包括用于存储数据索 引数据库250内最近经常被访问信息的数据高速缓存模块270,这样,搜索 服务器200内的搜索控制模块210既可以从数据高速缓存模块270中搜索用 户所要求的个人数据,也可以从数据高速缓存模块270和数据索引数据库 250中搜索用户所要求的个人数据。该数据高速缓存模块270的作用是为了 加快搜索的速度。\n对于上述系统,在搜索服务器200内还可以进一步包括业务管理模块 260,该业务管理模块260直接接收来自各个业务服务器的包含用户ID和密 码的搜索请求,应用该接收到的用户ID和密码与业务服务器进行互鉴权, 鉴权通过后,向搜索控制模块210发送搜索请求;或者,接收来自搜索控制 模块210的搜索结果,并将该搜索结果返回给发起搜索请求的业务服务器。 在此基础上搜索控制模块210进一步用于根据接收到的来自业务管理模块 260的搜索请求,向用户管理服务器300查询该用户所签约的业务,获取该 用户的签约业务列表和用户安全令牌,之后,根据自身预先存储的业务与搜 索代理的对应关系,向业务服务器所对应的搜索代理发送搜索请求,将接收 的搜索结果返回给业务管理模块260。也就是说,用户既可以通过搜索客户 端进行个人数据的搜索,还可以通过已登录的业务服务器进行个人数据的搜 索。\n再有,当搜索服务器200向用户管理服务器300进行查询时,用户管理 服务器300可以首先对该搜索服务器200进行鉴权,鉴权成功后再执行后续 操作。\n以上所述的业务服务器500就是网络上现有的与用户管理服务器300签 约的业务提供商的业务服务器,如Email服务器,论坛服务器等。\n上述系统中所有进一步包括的内容,均可单独存在,也可以与其他一个 或多个进一步包括的内容同时存在。\n下面具体说明实现网络中个人数据搜索的方法。\n本发明可以提供实时搜索和索引搜索两种方式。实时搜索是指在用户提 交搜索请求后由搜索服务器实时向业务服务器提交搜索请求,在不同的业务 服务器中搜索用户所要检索的内容结果。索引搜索是指由搜索服务器按照定 时策略、用户数据更新策略或其他策略触发搜索事件,在分布式的业务服务 器中搜索所有用户的个人数据,在搜索服务器中以索引关键字建立索引,用 户发送搜索请求时,搜索服务器只需要在数据索引数据库中检索。下面分别 进行说明。\n图2所示为应用本发明的实现实时搜索的流程示意图。\n步骤201,用户使用搜索服务器的包含用户ID和密码的用户登录信息 登录到搜索服务器中。\n步骤202,搜索服务器接收到来自搜索客户端的已登录用户发送的搜索 请求后,从用户管理服务器中获取该用户的签约业务列表和相应业务服务器 的安全令牌,将该列表作为用户可选的搜索业务范围的列表。具体的获取用 户签约业务列表的过程为:\n如果该发起搜索请求的用户在各个服务器中所注册的用户名都一致,则 用户管理服务器接收到来自搜索服务器的查询请求后,从自身已保存的用户 与其所签约业务的对应关系中直接获取该用户的签约业务列表,然后将该用 户的签约业务列表返回给搜索服务器;\n如果该发起搜索请求的用户在各个服务器中所注册的用户名不完全一 致,则用户管理服务器接收到来自搜索服务器的查询请求后,首先从自身保 存的该用户在各个签约业务中的标识对应关系中,获取该用户的统一ID, 确定该用户,然后再从自身已保存的每个用户与其所使用的签约业务信息的 对应关系中直接获取该用户的签约业务列表和相应业务服务器的用户安全 令牌,将该用户的签约业务列表返回给搜索服务器。\n步骤203,搜索服务器将该签约业务列表作为搜索范围返回给搜索客户 端,并等待接收来自搜索客户端的搜索范围和/或搜索关键字。该搜索关键 字可以是用户感兴趣的词组或词组的各种组合。\n步骤204,搜索服务器根据来自搜索客户端的搜索范围和/或搜索关键 字,确定用户所要求搜索的签约业务列表,该用户所要求搜索的签约业务列 表即为实际的搜索业务范围。\n执行上述步骤203和204的目的是为了能够根据用户的需求进行搜索, 以减少搜索结果的数量,更好地满足用户的需求。当然,这两个步骤也可以 不存在,这样会简化流程,但会将所有与该用户相关的个人数据都返回给该 用户终端。\n步骤205,搜索服务器根据自身预先存储的业务与搜索代理的对应关系, 向用户所签约业务所对应的搜索代理发送包含该业务服务器的用户安全令 牌和指定业务服务器标识的搜索请求。当然,由于步骤203和204的存在, 该搜索请求中还包括搜索关键字。\n也就是说,搜索服务器给各个搜索代理发送的搜索请求中所包含的用户 安全令牌,是由用户在该搜索代理所对应的业务服务器上注册的用户ID和 密码,或者是由用户ID等信息生成的其他信息,因此,各个搜索请求中的 用户安全令牌很可能是不一样的。\n步骤206,搜索代理应用接收到的安全令牌与指定业务服务器相互鉴权 后,将接收到的搜索请求转换为业务服务器能够识别的请求后,发送给业务 服务器;\n由业务服务器以用户安全令牌中的用户ID作为查询条件进行个人数据 搜索(在业务服务器具有查询功能的情况下),并将搜索到的个人数据作为 搜索结果返回给搜索代理;或者业务服务器直接返回响应(对于某类应用服 务器,搜索代理的请求可以是请求一系列网页的地址,相当于直接抓取一系 列网页,这样的话应用服务器没有查询功能,只是一个响应)。\n之后,搜索代理将接收到的搜索结果返回给搜索服务器。所谓将接收到 的搜索请求转换为业务服务器能够识别的请求就是,如果业务服务器具有搜 索功能,则直接向指定的统一资源定位地址(URL)发送请求,如果业务服 务器不具有搜索功能,则根据业务服务器的要求发送定制的搜索请求给已指 定的与其相连的业务服务器。\n步骤207,搜索服务器将接收到的搜索结果转换为预设的统一格式,如 HTML格式或XML格式,之后将搜索结果返回给搜索客户端,由搜索客户 端将个人数据显示给用户。\n再有,搜索服务器将接收到的搜索结果返回给搜索客户端之前,可以进 一步对搜索结果进行整理操作;如过滤、排序和/或聚类操作等。\n至此,实现了实时搜索个人数据。\n对于索引搜索个人数据的实现,主要分为两大过程:索引的建立过程和 用户搜索过程,下面对这两个过程分别进行说明。\n图3所示为应用本发明的实现索引搜索时建立索引的流程示意图。\n步骤301,当预设的搜索触发条件满足时,搜索服务器触发索引事件。 所述预设的搜索触发条件为定时触发,或用户数据更新触发,或其他的条件 触发。\n步骤302,遍历搜索服务器中已预先指定的用户ID。\n步骤303,搜索服务器获取该用户的签约业务列表和该用户针对不同业 务服务器的用户安全令牌,将该列表作为搜索业务范围的列表。\n步骤304,搜索服务器根据自身预先存储的业务与搜索代理的对应关系, 向用户所签约业务所对应的搜索代理发送包含该业务服务器的用户安全令 牌和指定业务服务器标识的搜索请求。\n步骤305,搜索代理应用接收到的用户安全令牌与指定业务服务器相互 鉴权后,将接收到的搜索请求转换为业务服务器能够识别的请求后,发送给 业务服务器,由业务服务器以用户安全令牌中的用户ID作为查询条件进行 个人数据搜索(在业务服务器具有查询功能的情况下),并将搜索到的个人 数据作为搜索结果返回给搜索代理;或者业务服务器直接返回响应(对于某 类应用服务器,搜索代理的请求可以是请求一系列网页的地址,相当于直接 抓取一系列网页,这样的话应用服务器没有查询功能,只是一个响应);之 后,搜索代理将接收到的搜索结果返回给搜索服务器。\n步骤306,搜索服务器将接收到的个人数据根据存储关键字存储在数据 索引数据库中,为该用户建立索引。\n步骤307,搜索服务器判断指定用户ID是否均更新索引,如果不是, 则重复执行步骤302,否则结束。\n图4所示为应用本发明的实现索引搜索时用户检索的流程示意图。本流 程中的401~403步与图2中的步骤201~203相同,具体为:\n步骤401,用户使用搜索服务器的包含用户ID和密码的用户登录信息 登录到搜索服务器中。\n步骤402,搜索服务器接收到来自搜索客户端的已登录用户发送的搜索 请求后,获取该用户的签约业务列表,将该列表作为用户可选的搜索业务范 围的列表。\n步骤403,搜索服务器将该签约业务列表作为搜索范围返回给搜索客户 端,并等待接收来自搜索客户端的搜索范围和/或搜索关键字。该搜索关键 字可以是用户感兴趣的词组或词组的各种组合。\n执行上述步骤403的目的是为了能够根据用户的需求进行搜索,以减少 搜索结果的数量,更好地满足用户的需求。当然,这两个步骤也可以不存在, 这样会简化流程,但会将所有与该用户相关的个人数据都返回给该用户终 端。如果步骤403不存在,则步骤402中获取的签约业务列表即为搜索范围。\n步骤404~405,搜索服务器根据来自搜索客户端的搜索范围和/或搜索 关键字,以及数据索引数据库中的存储关键字,以用户ID作为查询条件在 数据索引数据库中搜索该用户的个人数据,并将该个人数据返回给发起搜索 请求的搜索客户端,由搜索客户端将个人数据显示给用户。\n如果存在用于存储经常被访问信息的数据高速缓存模块,则搜索服务器 从数据高速缓存模块,或数据高速缓存模块和数据索引数据库中搜索用户所 要求的个人数据。这样可以加快搜索速度。\n再有,搜索服务器将接收到的搜索结果返回给搜索客户端之前,可以进 一步对搜索结果进行整理操作;如过滤、排序和/或聚类操作等。\n至此实现了索引搜索个人数据。\n无论是实时搜索还是索引搜索,如果搜索服务器可以为业务服务器提供 接口,用户还可以通过某个业务服务器发起搜索请求。具体实现过程与前述 两种实现过程类似,下面仅简单说明,不再示图。\n在实时搜索的情况下:当搜索服务器接收来自业务服务器的已登录用户 发送的搜索请求,获取该用户已签约业务列表和该用户针对不同业务服务器 的用户安全令牌;之后,根据自身预先存储的业务与搜索代理的对应关系, 向对应的搜索代理发送搜索请求,该搜索请求中包含该业务服务器的用户安 全令牌和指定业务服务器的标识;\n搜索代理应用接收到的用户安全令牌与指定业务服务器相互鉴权后,将 接收到的搜索请求转换为业务服务器能够识别的请求后,发送给业务服务 器,并将搜索到的个人数据作为搜索结果返回给搜索服务器;\n搜索服务器将接收到搜索结果转换为预定的统一格式后,返回给发起搜 索请求的业务服务器,由该业务服务器将接收到的个人数据显示给用户。\n在索引搜索的情况下:搜索服务器接收来自业务服务器的已登录用户发 送的搜索请求后,获取该用户的签约业务列表;根据该用户的签约业务列表 以及数据索引数据库中的存储关键字,在数据索引数据库中搜索该用户的个 人数据,并将该个人数据返回给发起搜索请求的业务服务器,由业务服务器 将个人数据显示给用户。\n当然,对于上述两个实现过程还可以加入用户选择搜索范围和/或搜索 关键字的步骤,此实现过程与前面相同,此处不再重复说明。\n再有,上述所有各搜索请求中包含的用户安全令牌是用于服务器认证的 信息,其可以是用户ID和密码,也可以是其他的用于认证的信息,而且该 安全令牌可以是以明文的形式存在,也可以以密文的形式存在。当然,在加 密的情况下,既可以使用对称密钥,也可以使用公私钥对。\n由于实时搜索的实现流程与索引搜索的建立索引的流程相类似,下面仅 以索引搜索的建立索引的过程为例,通过交互流程再对其进行说明。\n图5所示为实现索引搜索时的建立索引过程的一实施例的交互流程图。\n步骤501,当预设的搜索触发条件满足时,搜索服务器触发索引事件。 所述预设的搜索触发条件为定时触发,或用户数据更新触发,或其他的条件 触发。\n步骤502,遍历搜索服务器中指定的用户ID,即确定搜索哪些用户ID 的个人数据,之后,搜索服务器向用户管理服务器发送查询请求,该请求中 包含待搜索的用户ID和请求的类型,该请求的类型可以是所有的业务类型 (ALL_SERVICE),其表示查询该ID的所有业务及登录信息,该请求的类 型还可以是指定的业务ID,其表示请求该ID所对应的指定ID的业务及登 录信息。本例中,假设请求的业务类型是ALL_SERVICE。\n步骤503,用户管理服务器接收到上述请求后,查询该用户ID所对应 的签约业务列表,即业务ID、业务地址以及业务名称的对应关系等信息, 以及该用户针对不同业务服务器的用户安全令牌,本例中,该安全令牌是该 用户ID在不同业务中的用户ID和密码。\n步骤504,用户管理服务器向搜索服务器发送请求响应,该响应是应用 搜索服务器的公钥加密后的信息,而且,该响应中包含该用户的签约业务列 表和该用户针对不同业务服务器的用户安全令牌,且用户安全令牌是应用该 用户登录所对应业务服务器的公钥进行加密的,并加入用户管理服务器的签 名,这样,保证只有指定的业务服务器才能查看该用户安全令牌,且信息来 自用户管理服务器,确保了用户安全令牌的安全。\n步骤505~506,搜索服务器用自身的私钥查看来自用户管理服务器的 响应信息,将所获取的签约业务列表作为搜索业务范围的列表,根据自身预 先存储的业务与搜索代理的对应关系,向用户所签约业务所对应的搜索代理 发送包含用户安全令牌和指定业务服务器标识的搜索请求,即向不同的搜索 代理发送搜索请求。\n步骤507~508,搜索代理应用接收到的用户安全令牌与指定业务服务 器相互鉴权后,将接收到的搜索请求转换为业务服务器能够识别的请求后, 发送给业务服务器,之后,搜索代理将接收到搜索结果返回给搜索服务器。\n步骤509,搜索服务器将接收到的个人数据根据存储关键字存储在数据 索引数据库中,为该用户建立索引。\n步骤510,搜索服务器判断指定的用户ID是否均更新索引,如果不是, 则重复执行步骤502,否则结束。\n另外,还有几点说明:\n1)由于一个搜索代理可以对应一个或多个业务服务器,因此,当一个 搜索代理只对应一个业务服务器时,则上述所有搜索服务器向搜索代理发送 的搜索请求中可以不包含业务服务器的标识;如果搜索代理对应多于一个的 业务服务器,则上述所有搜索服务器向搜索代理发送的搜索请求中需要包括 业务服务器的标识。\n2)在上述索引搜索的实现过程中,当搜索服务器接收到搜索请求发起 方,即搜索客户端或业务服务器发出的搜索请求后,可以直接在自身的数据 索引数据库中进行搜索,而不向用户管理服务器请求用户签约业务列表。也 就是说,是否请求用于签约业务列表是根据预先的配置确定的。\n下面通过实施例再对本发明的实现流程进行详细说明。\n假设用户A在论坛a和论坛b上分别有账号Aa和Ab,在同一搜索服 务器上有账号Asearch,且论坛a与论坛b所在服务器都与用户管理服务器 签约。而且用户A分别在论坛a和b上分别发表了文章、上传了文件。用户 A可以通过登录搜索服务器对在论坛a和b上的个人数据实现检索。\n实时搜索的流程为:\n1.用户A通过搜索客户端用Asearch账号登录到搜索服务器上, 发出个人数据搜索请求,搜索服务器从用户管理服务器获取该用户的签 约业务列表和该用户针对不同业务服务器的用户安全令牌,并将该签约 业务列表返回给搜索客户端,此时,用户A选择对论坛a和b进行搜索, 并数据搜索关键字为“计算机”,然后提交给搜索服务器;\n2.搜索服务器向用户管理服务器请求Asearch用户在论坛a和b 中的用户ID和密码,即用户A在论坛a和b上的用户登录信息;\n3.搜索服务器将用户在论坛a中的用户安全令牌发送给论坛a所 在服务器对应的搜索代理Agenta;将用户在论坛b中的用户安全令牌发 送给论坛b所在服务器对应的搜索代理Agentb;\n4.Agenta用接收到的用户安全令牌与论坛a所在的服务器相互认 证,利用该服务器中的搜索功能搜索论坛中文章作者为Aa或文件上传者 为Aa的所有文件,找出其中带有关键字“计算机”的结果,包括具体的 文件节选和链接地址,将结果返回给搜索服务器;\n5.Agentb做与Agenta相似的搜索,也同样返回结果;\n6.搜索服务器将结果统一形成HTML文件,用户A看到的是所 有在论坛a和b上发表的带有关键字“计算机”的文件列表。\n索引搜索的流程为:\n1.根据索引服务器设定的定时索引策略每天更新一次索引;\n2.搜索服务器对用户A的所有业务a和b,向用户管理服务器请 求该用户的签约业务列表和该用户针对不同业务服务器的用户安全令 牌,加入该用户的签约业务列表中就包括a和b两个业务;\n3.搜索服务器将用户在论坛a中的用户安全令牌发送给论坛a所 在服务器对应的搜索代理Agenta;将用户在论坛b中的用户安全令牌发 送给论坛b所在服务器对应的搜索代理Agentb;\n4.Agenta用接收到的用户安全令牌与论坛a所在的服务器相互认 证,利用该服务器中的搜索功能搜索论坛中文章作者为Aa或文件上传者 为Aa的所有文件,将所有文件和链接地址发送给搜索服务器;\n5.Agentb做与Agenta相似的搜索,也同样返回结果;\n6.搜索服务器分析文本的内容,按照不同的存储关键字索引存储 在索引数据库中;\n7.用户A检索时,登录到搜索服务器后输入关键字“计算机”;\n8.搜索服务器根据用户A的存储关键字以及搜索关键字“计算 机”,在索引数据库中查找带有关键字“计算机”的网页或文件;\n9.搜索服务器将结果统一形成HTML文件,用户A看到的是所 有A在论坛a和b上发表的带有关键字“计算机”的文件列表。\n以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡 在本发明的精神和原则之内,所做的任何修改、等同替换和改进,均应 包含在本发明的保护范围之内。
法律信息
- 2008-07-09
- 2006-12-20
- 2006-10-25
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
2000-05-31
| | |
2
| | 暂无 |
2002-03-12
| | |
3
| |
2001-11-28
|
2000-05-11
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |