技术领域
[0001] 本发明涉及计算机领域,尤其涉及一种确定搜索功能稳定性的方法及装置。
相关背景技术
[0002] 包括搜索服务的应用在服务迭代的过程中,对服务的版本更新是比较常用的一个流程。其中对新版本的搜索服务的稳定性评估也是其中重要的一个环节,若不确定新版本的搜索服务的稳定性,则该新版本上线后可能后出现问题。例如,以视频应用为例,当前该视频应用需要进行升级,将老版本升级为新版本,假设老版本的视频应用接收到一个检索词,该检索词为“黎明的早晨”,该老版本的视频应用反馈搜索结果,该搜索结果为“黎明的早晨”这部电视剧的相关视频,同样的,新版本的视频应用接收到该检索词,该新版本的视频应用反馈的搜索结果为包括大量的“黎明”这位演员的相关视频,而“黎明的早晨”这部电视剧的相关视频很少,从这个例子可以看出,新版本的搜索服务并不准确。
[0003] 传统方法中,为了确定新版本应用的搜索服务的稳定性的方法主要是人工的确定方法,例如由测试人员对新版本应用反馈的结果和老版本应用反馈的结果进行对比,通过测试人员的主观判断确定该新版本应用的搜索服务的稳定性。
[0004] 人为的主观判断新版本应用搜索服务的稳定性,浪费人力成本和时间成本,并且主观性较强,不同的测试人员对待同一个结果的判断可能有所不同,判断错误的概率较高。
具体实施方式
[0030] 本发明实施例提供了一种确定搜索功能稳定性的方法及装置,用于节省人力资源,将稳定性的评估标准通过指标量化,克服人为评估的主观性,提高了评估稳定性的准确性。
[0031] 为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明保护的范围。
[0032] 本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0033] 本发明实施例提供了一种确定搜索功能稳定性的方法,该方法用于对待上线的新版本应用的搜索功能稳定性的评估,该应用包括搜索功能,如该应用可以包括但不限定于QQ,视频应用,音乐应用和应用宝等。通常情况下,当一个应用需要版本升级时,也可以理解为将老版本升级为新版本,这时就需要对新版本应用的搜索功能的稳定性进行评估,本发明实施例中提供的方法通过对新版本应用对应的搜索结果和老版本应用对应的搜索结果进行比对,从而确定两个不同版本的差异信息,该差异信息与稳定性负相关,通过差异信息确定新版本应用搜索功能的稳定性,将稳定性通过差异信息这个指标进行量化,避免了人为判断稳定性的主观性,并且节省了人力和时间成本,提高了对应稳定性评估的效率及评估的正确性。
[0034] 该方法应用于一种检索系统,请参阅图1所示,图1为本发明实施例中提供的一种确定搜索功能稳定性的系统的架构示意图,该系统包括测试终端110,确定搜索功能稳定的装置120,该装置120可以以服务器的形态存在,第一代理服务器130和第二代理服务器140。需要说明的是,在实际应用中,该测试终端110和装置120还可以集成于一个设备,该设备执行测试终端110和装置120的功能,本实施例中的架构示意图只是举例说明,在实际应用中,并不限定具体形态。
[0035] 请结合图2进行理解,图2为和图3测试终端的界面场景示意图。
[0036] 该测试终端110接收到测试人员输入的检索词集合,测试人员可以添加或删除检索词集合中的检索词。本地存储的文件中包括了多个检索词集合文件。之后,测试终端建立检索任务,请结合图4进行理解,图4为测试终端的界面显示示意图。测试终端接收测试人员输入的选择指令,可以从多个检索词集合中选择一个检索词集合建立检索任务,并且测试终端接收对应的第一代理服务器的IP和接口信息及第二代理服务器的IP和接口信息,可以理解的是,该第一代理服务器130为基准版本(老版本)应用对应的代理服务器,该第二代理服务器140为目标版本(新版本)应用对应的代理服务器。
[0037] 然后,测试终端分别向第一代理服务器和第二代理服务器发送检索请求,代理服器(代理服务器包括第一代理服务器和第二代理服务器,因为工作原理相同,在说明工作流程时,统称为代理服务器)根据检索请求确定检索任务。请结合图5进行理解,图5为确定检索任务的流程示意图。
[0038] 监控:当代理服务器接收到一个检索任务时,将根据配置文件扫描对应的数据库记录,并查看这个检索任务是否完成。
[0039] 搜索:未检索的检索请求将被传递到检索流程中。该检索请求包括检索词集合。
[0040] 搜索结果处理:通过一系列的检索流程返回搜索结果给装置120并将搜索结果存储到数据库中。
[0041] 具体的,当第一代理服务器接收到检索词集合时,第一代理服务器130根据检索词集合进行搜索,得到第一搜索结果,该第一搜索结果包括第一文档列表;第一代理服务器130将该第一搜索结果反馈给装置120,同样的,该第二代理服务器接收到该检索词集合后,第二代理服务器140根据该检索词集合进行搜索,得到第二搜索结果,该第二搜索结果包括第二文档列表。第二代理服务器140将该第二搜索结果也反馈给装置120,可以理解是,该基准版本对应的第一搜索结果,该目标版本对应第二搜索结果,然后,装置120计算第一文档列表与第二文档列表的差异信息,通过该差异信息确定该目标版本应用相对于基准版本应用的搜索功能的稳定性。
[0042] 需要说明的是,第一搜索结果和第二搜索结果均包括如下信息:第一参数(如ret_code):用于指示搜索请求是否成功。第二参数(如ret_msg)返回信息,如搜索失败的原因。当搜索请求成功时,搜索结果包括检索词集合对应的文档列表。
[0043] 下面从确定搜索功能稳定的装置侧对本发明实施例中提供的一种确定搜索功能稳定性的方法进行详细说明,请参阅图6所示,一种确定搜索功能稳定性的方法的一个实施例包括:
[0044] 步骤601、获取基准版本应用对应的第一文档列表及目标版本应用对应的第二文档列表。
[0045] 第一文档列表为第一代理服务器根据检索词集合进行搜索后得到的结果信息,第二文档列表为第二代理服务器根据检索词集合进行搜索后得到的结果信息。
[0046] 第一文档列表包括检索集合中每个检索词对应的第一子列表,第二文档列表包括检索集合中每个检索词对应的第二子列表。
[0047] 每个子列表默认返回预置条数的结果,每条结果可理解为一个文档,每个文档关联一个唯一标记该文档的标识(如ID),该标识可以为序号,第一文档列表及第二文档列表中的文档均按序号进行排列,在一个子列表中,每一个文档具有一个序号,该序号也就对应了该文档在该子列表中的位置以及文档的描述信息。
[0048] 该检索词集合包括多个检索词,例如,该检索词集合中可以包括1000个或2000个检索词,在实际应用中该检索词集合中的检索词的数量并不限定,为了方便说明,本发明实施例中该检索词集合中的检索词的数量可以以3个为例进行说明。例如,该3个检索词分别为“黎明”,“大本营”及“阴天”。
[0049] 下面对第一文档列表和第二文档列表进行举例说明,请结合下表1进行理解:
[0050] 表1
[0051]排序 第一子列表
1 黎明之战-电视连续剧
2 黎明之战-电影
3 黎明之战-首映礼
4 黎明决战-电视连续剧
5 黎明杀机
6 黎明之前
7 黎明-电视剧
8 暗黑黎明
9 黎明前的抉择
10 半生缘-主演黎明
[0052] 上表1为检索词“黎明”对应的第一子列表,在第一文档列表中包括3个第一子列表,分别为检索词“黎明”对应的第一子列表,“大本营”对应的第一子列表及“阴天”对应的第一子列表,本发明实施例中以其中的一个检索词“黎明”为例进行说明,其他的检索词对应的第一子列表与上表1类似,这里不重复举例,该第一子列表中的每一条文档为与包括该检索词的结果,或者与该检索词相关联的结果。例如,在第10个文档中,虽然《半生缘》中不包括“黎明”这个检索词,但是《半生缘》是由演员“黎明”主演的,因此也作为检索结果。
[0053] 从上表中可以看出,该第一子列表中的文档是具有排列顺序的,该排列顺序是通过预置的排列的规则进行排序的。例如,该预置的排列规则为:根据视频的热度,或者视频的点击率,发布时间等等。
[0054] 下面请参阅下表2,下表2为“黎明”对应的第二子列表,同样的,该第二文档列表中包括“黎明”,“大本营”及“阴天”这三个检索词对应的第二子列表,本实施例中以检索词“黎明”对应的第二子列表进行举例,请参阅下表所示:
[0055] 表2
[0056]排序 第二子列表
1 黎明之战-电视连续剧
2 黎明之战-电影
3 黎明决战-电视连续剧
4 黎明之战-首映礼
5 黎明前的抉择
6 黎明杀机
7 黎明之前
8 爱在黎明
9 正义黎明
10 猩球黎明
[0057] 步骤602、计算检索词集合中的同一个检索词对应的第一子列表与第二子列表的子差异值。
[0058] 通过检索词差异算法计算同一检索词对应的第一子列表和第二子列表的子差异值。可选的,可以分别计算同一个检索词在不同的指标下的子差异值,该指标可以包括曼哈顿指标,欧式指标,杰卡德相似指标,切比雪夫指标、夹角余弦、马氏距离,信息熵中的至少一个,可以根据不同的应用选择不同指标下的子差异值。
[0059] 下面以曼哈顿指标进行举例说明:
[0060] 确定第一子列表中序号P对应的目标文档在第一子列表中的第一位置,P取遍1至N中的每一个数值,N为大于或者等于1的正整数;然后确定目标文档在第二子列表中的所对应的第二位置。
[0061] 根据第一位置和第二位置确定序号P对应的目标文档的文档差异值;
[0062] 当第一子列表中包括的文档数量为N时,将N个文档差异值进行累加,得到同一个检索词对应的第一子列表与第二子列表的子差异值。
[0063] 以上表1中的第一子列表和上表2中的第二子列表进行举例说明。
[0064] 当N为1时,则是计算第一子列表中序号为1的目标文档与第二子列表中目标文档的文档差异值。
[0065] 在第一子列表中的序号为1的目标文档为“黎明之战-电视连续剧”,也就是说,目标文档在第一子列表中的第一位置(排位)为“1”,“黎明之战-电视连续剧”在第二子列表中的第二位置(排位)也是“1”,然后根据第一位置和第二位置通过如下公式1确定第一个文档差异值为:0。
[0066] 其中,posa用于表示目标文档在第一子列表中的第一位置,posb用于表示目标文档在第二子列表中的第二位置。
[0067] 当N为3时,则确定在第一子列表中前3位的文档为目标文档,分别计算每个目标文档在第二子列表中目标文档的文档差异值。
[0068] 当序号P为1时,第一个文档差异值为:0。
[0069] 当序号P为2时,在第一子列表中目标文档为“黎明之战-电影”,第一位置为“2”;该“黎明之战-电影”在第二子列表中的第二位置为“2”,按照上述公式1进行计算,第二个文档差异值为:0。
[0070] 当序号P为3时,在第一子列表中目标文档为“黎明之战-首映礼”,第一位置为“3”;该“黎明之战-首映礼”在第二子列表中的第二位置为“4”,按照上述公式1进行计算,第三个文档差异值为:0.083。
[0071] 然后,将第一个文档差异值、第二个文档差异值和第三个文档差异值进行累加,得到的第一子列表和第二子列表前三位(TOP3)的子差异值为:0.083。
[0072] 当N为5时,则确定第一子列表中前5位的文档为目标文档,分别计算每个目标文档与第二子列表中目标文档的文档差异值。
[0073] 当序号P为1时,第一个文档差异值为:0。
[0074] 当序号P为2时,第二个文档差异值为:0。
[0075] 当序号P为3时,第三个文档差异值为:0.083。
[0076] 当序号P为4时,在第一子列表中,目标文档为“黎明决战-电视连续剧”,第一位置为“4”,该“黎明决战-电视连续剧”在第二子列表中的第二位置为“3”,按照上述公式1进行计算,第四个文档差异值为:0.083。
[0077] 当序号P为5时,在第一子列表中,目标文档为“黎明杀机”,第一位置为“5”,该“黎明杀机”在第二子列表中的第二位置为“6”,按照上述公式1进行计算,第五个文档差异值为:0.033。
[0078] 然后,将第一个文档差异值至第五个文档差异值进行累加,得到的第一子列表和第二子列表前五位(TOP5)的子差异值为:0+0+0.083+0.083+0.033=0.199。
[0079] 在实际应用中,还可以继续计算第一子列表和第二子列表前十位(TOP10)的子差异值,原理与上述计算第一子列表和第二子列表前一位、前三位、前五位的子差异值相同,此处不赘述。
[0080] 该子差异值越接近于0,则表明两个子列表的差异性越小,搜索功能的稳定性越好,本实施例中,子差异值与稳定性负相关。
[0081] 本实施例中,若确定第一子列表与第二子列表之间的子差异值的过程,该目标文档并不在第二子列表中,或者,目标文档超过了对比范围(目标文档在第二自列表中的排位大于N),则posb取无穷大。
[0082] 举个例子,当N为10,P为10时,目标文档为“半生缘-主演黎明”,可是目标文档并不在第二子列表中,也就是说,该目标文档并不在搜索结果中,因此,当计算“半生缘-主演黎明”这个文档差异值时,posb取无穷大。需要说明的是,本发明实施例中,通过目标文档的文档差异值来确定第一子列表与第二子列表的子差异值,可以理解的是,“差异”与“相似”是相对的概念,例如,常数-差异值=相似值,在本申请中,根据等同原则,通过差异值确定稳定性与通过相似值确定稳定性均属于本发明的覆盖范围。本实施例中是通过差异值来确定稳定性的,差异值与稳定性负相关,也就是说,差异值越大,稳定性越低;而相似值与稳定性正相关,相似值越大,稳定性越高。
[0083] 下面以夹角余弦这个指标为例对第一子列表与第二子列表之间的子差异值。
[0084] 余弦距离,也称为余弦相似度,是用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小的度量。
[0085] 请结合图7进行理解,图7为夹角余弦的原理示意图。
[0086] 假设在第一子列表中,序号1对应的目标文档的第一位置的坐标为(k、y1),其中k为大于0的常数,该目标文档在第二子列表中的第二位置的坐标为(k、y2),计算向量a与向量b之间的夹角余弦(cosθ),通过夹角余弦值来确定向量a和向量b的相似,可以理解的是,当θ角越小,则表明向量a和向量b的越相似,也就是说,cosθ越趋近于1,则向量a和向量b的越相似。
[0087] 可以按照如下公式2计算文档相似值:
[0088] 其中,k为大于0的常数,posa用于表示目标文档在第一子列表中的第一位置,posb用于表示目标文档在第二子列表中的第二位置。
[0089] 以上表1中的第一子列表和上表2中的第二子列表进行举例说明。本实施例中k以1为例进行举例说明。
[0090] 当N为1时,则是计算第一子列表中序号为1的目标文档与第二子列表中目标文档的文档相似值。
[0091] 在第一子列表中的序号为1的目标文档为“黎明之战-电视连续剧”,也就是说,目标文档在第一子列表中的第一位置(排位)为“1”,“黎明之战-电视连续剧”在第二子列表中的第二位置(排位)也是“1”,然后根据第一位置和第二位置通过公式2进行计算:
[0092]
[0093] 第一个文档相似值为1,也就是表明两个向量之间的夹角为0。则表明在在第一子列表中的序号为1的目标文档的第一位置与目标文档在第二子列表中的第二位置完全相同。
[0094] 然后,可以按照如下公式3计算文档差异值:
[0095] 则第一个文档差异值为0。
[0096] 当序号P为2时,在第一子列表中目标文档为“黎明之战-电影”,第一位置为“2”;该“黎明之战-电影”在第二子列表中的第二位置为“2”,按照上述公式3进行计算,第二个文档差异值为:0。
[0097] 当序号P为3时,在第一子列表中目标文档为“黎明之战-首映礼”,第一位置为“3”;该“黎明之战-首映礼”在第二子列表中的第二位置为“4”,按照上述公式3计算第三个文档差异值:
[0098]
[0099] 第三个文档差异值为:0.003。
[0100] 然后,将第一个文档差异值、第二个文档差异值和第三个文档差异值进行累加,得到的第一子列表和第二子列表前三位(TOP3)的子差异值为:0.003。
[0101] 同理,第一子列表和第二子列表前五位(TOP5)的子差异值,及第一子列表和第二子列表前十位(TOP10)的子差异值,均可以按照TOP3的子差异值进行计算,此处不赘述。
[0102] 需要说明的是,本发明实施例中表1对应的第一子列表中的文档及文档的排列顺序,表2中对应的第二子列表中的文档及文档的排列顺序均为举例说明,并不造成对本发明的限定性说明。
[0103] 在实际应用中,计算文档差异值只通过上述一个指标进行计算,例如曼哈顿指标,也可以分别在不同的指标下计算同一个检索词的子差异值,同一个检索词在不同的指标下计算的子差异值可能不同,例如通过曼哈顿指标和夹角余弦指标这两个指标下的子差异值不同,因此对于同一个检索词集合需要在同一个指标下进行计算。
[0104] 步骤603、根据每个检索词对应的子差异值确定检索词集合对应的第一文档列表与第二文档列表的差异信息。
[0105] 在一种实现方式中,将检索词集合中每个检索词对应的子差异值进行合并,得到多个子差异值的集合信息,集合信息为第一文档列表与第二文档列表的差异信息,请结合下表3所示。
[0106] 表3
[0107]ID 检索词 TOP1子差异值 TOP3子差异值 TOP5子差异值
1 黎明 0.000 0.083 0.199
2 大本营 0.000 0.000 0.000
3 阴天 0.000 0.000 0.000
[0108] 需要说明的是,上表3中的内容,只是为了方便说明而举的例子,并不造成对本发明的限定性说明,上表3中的内容为同一个检索集合对应的差异信息。
[0109] 在另一个可能的实现方式中,通过每个检索词对应的子差异值确定检索词集合对应的第一文档列表与第二文档列表的差异信息的具体方式可以为:
[0110] 确定在该检索词集合中子差异值小于或者等于目标阈值的目标检索词的数量,该差异信息为子差异值小于或者等于目标阈值的目标检索词的数量。
[0111] 需要说明的是,该目标阈值的数量可以包括至少一个,当N的值不同,该目标预置也不同,例如,该目标预置可以包括第一阈值,第二阈值和第三阈值。以表3中的示例为例,当N为1时,第一预置为0.001;当N为3时,第二预置为0.070;当N为5时,第三阈值为0.100。需要说明的是,针对不同的应用(如QQ,视频应用)及不同的指标下的阈值都可能不同,在实际应用中,可以根据实际情况进行设置,上述阈值只是举例说明,并不造成对本发明的限定性说明。
[0112] 进一步的,当N为1时,该差异信息为3;当N为3时,该差异信息为2;当N为5时,该差异信息为2。
[0113] 步骤604、根据差异信息确定目标版本应用的搜索功能的稳定性。
[0114] 通过对差异信息的分析可以确定出目标版本应用与基准版本应用之间差异,若差异越大,则表明目标版本应用的搜索功能的稳定性越差,若差异越小,则表明目标版本应用的搜索功能的稳定性越好。
[0115] 在另一种实现方式中,该差异信息为子差异值小于或者等于目标阈值的目标检索词的目标数量。
[0116] 例如,以表3所示的例子进行说明,若目标数量大于或者等于第二阈值,则表明稳定性良好,若第二阈值为2,在表3中的例子中,当N为1时,也就是说,TOP1对应的子差异值小于或者等于目标预置的目标检索词的数量为3;TOP3对应的子差异值小于或者等于目标预置的目标检索词的数量为2;TOP5对应的子差异值小于或者等于目标预置的目标检索词的数量为2。
[0117] 目标数量大于或者等于第二阈值,则表明该目标版本应用的搜索功能与基准版本应用的搜索功能相比,差异较小,稳定性较好。
[0118] 本实施例中,由于子差异值是通过文档中的文档差异值进行计算的,文档差异值增加了目标文档分别在第一子列表和第二子列表中的位置(排序)这个因素,因此第一子列表和第二子列表的子差异值更加准确。并且本实施中确定检索词集合中每个检索词对应的子差异值,通过对大量的检索词对应的子差异值来减少误差,提高了检测的准确率。
[0119] 可选的,在图6对应的实施例的基础上,本发明还提供了确定搜索功能稳定性的方法的另一个实施例。步骤a、针对每一个检索词,确定在第一子列表和第二子列表中序号N之前的文档信息是否一致,N为大于或者等于1的正整数。例如,请结合上述表1和表2进行理解,在表1对应的第一子列表中的文档和表2对应的第二子列表的文档进行对比。请结合下表4进行理解。
[0120] 表4
[0121]
[0122]
[0123] 针对“黎明”这个检索词,当序号P为1时,第一子列表与第二子列表中的文档信息相同,即均是“黎明之战-电视连续剧”。
[0124] 当序号P为3时,在第二子列表的前3位中,并没有“黎明之战-首映礼”这个文档,则在序号3之前的第一子列表与第二子列表中的文档信息不一致。
[0125] 当序号P为4时,在第一子列表和第二子列表的前4位中,文档信息致,均为“黎明之战-电视连续剧”、“黎明之战-电影”、“黎明之战-首映礼”和“黎明决战-电视连续剧”。
[0126] 步骤b、从检索词集合中确定序号P之前的文档信息不一致的目标检索词的数量。
[0127] 请结合下表5进行理解。例如,检索词集合中包括的检索词为2000个,则统计出计算序号P之前的文档信息不一致的目标检索词的数量,本实施例中,P可以以1、3、5、10这4个数值为例进行说明,也就是说,本实施例中统计TOP1,TOP3、TOP5和TOP10的文档信息不一致的目标检索词的数量。
[0128] 表5
[0129]
[0130] 从上表5中可以看出,检索词集合中的检索词的数量为978个,其中,第一位的文档信息不一致的目标检索词的数量有429个;在前三位中,文档信息不一致的目标检索词的数量有641个;在前五位中,文档信息不一致的目标检索词的数量有711个;在前10位中,文档信息不一致的目标检索词的数量有785个。
[0131] 步骤c、根据目标检索词的数量确定目标版本应用相对于基准版本应用的波动信息,波动信息与稳定性负相关。
[0132] 波动信息包括检索词波动数和波动率,检索词波动数为检索词集合中序号N之前的文档信息不一致的目标检索词的数量,波动率为目标检索词的数量与检索词集合中的检索词的总数量的比值。
[0133] 其中,波动率=检索词波动数/检索词集合中检索词数量。
[0134] 波动信息中的检索词波动数和波动率越大,则稳定性越差;波动信息中的检索词波动数和波动率越小,则稳定性越好。
[0135] 可选的,将波动信息和差异信息发送至测试终端,由测试终端显示该波动信息和差异信息。
[0136] 需要说明的是,步骤a至步骤c可以在步骤601之前执行,也可以在步骤604之后执行,具体的时序并不限定,步骤a至步骤c是对于稳定性的辅助性判断,可以确定在检索词集合中的所有检索词中的检索词波动数,为下一步详细对每一个检索词的子差异值提供参考依据,并且可以将数据模块化,使测试人员整体了解检索词集合中检索词的波动情况。
[0137] 上面对确定搜索功能稳定性的方法进行了说明,下面对该方法应用的装置进行说明,请参阅图8所示,本发明实施例提供了一种确定搜索功能稳定性的装置800的一个实施例。
[0138] 获取模块801,用于获取基准版本应用对应的第一文档列表及目标版本应用对应的第二文档列表,第一文档列表为第一代理服务器根据检索词集合进行搜索后得到的结果信息,第二文档列表为第二代理服务器根据检索词集合进行搜索后得到的结果信息;
[0139] 计算模块802,用于计算获取模块801获取的检索词集合中的同一个检索词对应的第一子列表与第二子列表的子差异值,第一文档列表包括检索集合中每个检索词对应的第一子列表,第二文档列表包括检索集合中每个检索词对应的第二子列表;
[0140] 第一确定模块803,用于根据计算模块802计算的每个检索词对应的子差异值确定检索词集合对应的第一文档列表与第二文档列表的差异信息;
[0141] 第二确定模块804,用于根据第一确定模块803确定的差异信息确定目标版本应用的搜索功能的稳定性,差异信息与目标版本应用的搜索功能的稳定性负相关。
[0142] 在图8对应的实施例的基础上,请参阅图9所示,本发明实施例提供了一种确定搜索功能稳定性的装置900的另一个实施例:
[0143] 第一文档列表和第二文档列表中的文档均按照序号排列,计算模块802包括第一确定单元8021,第二确定单元8022,文档差异值确定单元8023,子差异值确定单元8024;
[0144] 第一确定单元8021,用于确定第一子列表中序号P对应的目标文档在第一子列表中的第一位置,P取遍1至N中的每一个数值,N为大于或者等于1的正整数;
[0145] 第二确定单元8022,用于确定第一确定单元8021确定的目标文档在第二子列表中的所对应的第二位置;
[0146] 文档差异值确定单元8023,用于根据第一确定单元8021确定的第一位置和第二确定单元8022确定的第二位置确定序号P对应的目标文档的文档差异值;
[0147] 子差异值确定单元8024,用于当第一子列表中包括的文档数量为N时,将文档差异值确定单元8023确定的N个文档差异值进行累加,得到同一个检索词对应的第一子列表与第二子列表的子差异值。
[0148] 可选的,文档差异值确定单元8023,还用于按照如下公式计算文档差异值:
[0149] 其中,posa用于表示目标文档在第一子列表中的第一位置,posb用于表示目标文档在第二子列表中的第二位置。
[0150] 可选的,文档差异值确定单元8023,还用于按照如下公式计算文档差异值:
[0151] 其中,k为大于0的常数,posa用于表示目标文档在第一子列表中的第一位置,posb用于表示目标文档在第二子列表中的第二位置。
[0152] 第一确定模块803,还用于将检索词集合中每个检索词对应的子差异值进行合并,得到多个子差异值的集合信息,集合信息为第一文档列表与第二文档列表的差异信息。
[0153] 可选的,第一确定模块803,还用于确定在检索词集合中子差异值小于或者等于目标阈值的目标检索词的数量,该差异信息为目标检索词的数量。
[0154] 在图8对应的实施例的基础上,请参阅图10所示,本发明实施例提供了一种确定搜索功能稳定性的装置1000的另一个实施例:
[0155] 第一文档列表和第二文档列表中的文档均按照序号排列,还包括:判断模块805,第三确定模块806和第四确定模块807;
[0156] 判断模块805,用于针对每一个检索词,确定在该获取模块获取的第一子列表和第二子列表中序号P之前的文档信息是否一致,P为大于或者等于1的正整数;
[0157] 第三确定模块806,用于从检索词集合中确定判断模块805确定的序号P之前的文档信息不一致的目标检索词的数量;
[0158] 第四确定模块807,用于根据第三确定模块806确定的目标检索词的数量确定目标版本应用相对于基准版本应用的波动信息,波动信息与稳定性负相关。
[0159] 波动信息包括检索词波动数和波动率,检索词波动数为检索词集合中序号P之前的文档信息不一致的目标检索词的数量,波动率为目标检索词的数量与检索词集合中的检索词的总数量的比值。
[0160] 进一步的,图8至图10中的确定搜索功能稳定性的装置是以功能模块的形式来呈现。这里的“模块”可以指特定应用集成电路(application-specific integrated circuit,ASIC),电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。在一个简单的实施例中,图8至图10中的确定搜索功能稳定性的装置可以采用图11所示的形式。
[0161] 图11是本发明实施例提供的一种确定搜索功能稳定性的装置1100结构示意图,确定搜索功能稳定性的装置可以以服务器的形态存在,该服务器可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器1122和存储器1132,一个或一个以上存储应用程序1142或数据1144的存储介质1130(例如一个或一个以上海量存储设备)。其中,存储器1132和存储介质1130可以是短暂存储或持久存储。存储在存储介质1130的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1122可以设置为与存储介质1130通信,在服务器上执行存储介质
1130中的一系列指令操作。
[0162] 服务器还可以包括一个或一个以上电源1126,一个或一个以上有线或无线网络接口1150,一个或一个以上输入输出接口1158,和/或,一个或一个以上操作系统1141,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD等等。
[0163] 上述实施例中由确定搜索功能稳定性的装置所执行的步骤可以基于该图11所示的服务器结构。
[0164] 网络接口1150,用于获取基准版本应用对应的第一文档列表及目标版本应用对应的第二文档列表,所述第一文档列表为第一代理服务器根据检索词集合进行搜索后得到的结果信息,所述第二文档列表为第二代理服务器根据所述检索词集合进行搜索后得到的结果信息;
[0165] 处理器1122,用于计算所述检索词集合中的同一个检索词对应的第一子列表与第二子列表的子差异值,所述第一文档列表包括所述检索集合中每个检索词对应的第一子列表,所述第二文档列表包括所述检索集合中每个检索词对应的第二子列表;根据每个检索词对应的子差异值确定所述检索词集合对应的所述第一文档列表与所述第二文档列表的差异信息;根据所述差异信息确定所述目标版本应用的搜索功能的稳定性,所述差异信息与所述目标版本应用的搜索功能的稳定性负相关。
[0166] 可选的,处理器1122,还用于确定第一子列表中序号P对应的目标文档在所述第一子列表中的第一位置,所述P取遍1至N中的每一个数值,所述N为大于或者等于1的正整数;确定所述目标文档在第二子列表中的所对应的第二位置;根据所述第一位置和所述第二位置确定所述序号P对应的目标文档的文档差异值;当所述第一子列表中包括的文档数量为N时,将N个所述文档差异值进行累加,得到同一个检索词对应的第一子列表与所述第二子列表的子差异值。
[0167] 可选的,处理器1122,还用于按照如下公式计算所述文档差异值:
[0168] 其中,posa用于表示所述目标文档在所述第一子列表中的第一位置,posb用于表示所述目标文档在第二子列表中的所述第二位置。
[0169] 可选的,处理器1122,还用于按照如下公式计算所述文档差异值:
[0170] 其中,k为大于0常数,posa用于表示所述目标文档在所述第一子列表中的第一位置,posb用于表示所述目标文档在第二子列表中的所述第二位置。
[0171] 可选的,处理器1122,还用于将所述检索词集合中每个检索词对应的子差异值进行合并,得到多个子差异值的集合信息,所述集合信息为所述第一文档列表与所述第二文档列表的差异信息。
[0172] 可选的,处理器1122,还用于确定在所述检索词集合中子差异值小于或者等于目标阈值的目标检索词的数量,该差异信息为所述目标检索词的数量。
[0173] 可选的,处理器1122,还用于针对每一个检索词,确定在所述第一子列表和所述第二子列表中序号P之前的文档信息是否一致,所述P为大于或者等于1的正整数;从所述检索词集合中确定所述序号P之前的文档信息不一致的目标检索词的数量;根据所述目标检索词的数量确定所述目标版本应用相对于所述基准版本应用的波动信息,所述波动信息与所述稳定性负相关。
[0174] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0175] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0176] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0177] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0178] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0179] 以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。