一种用于确定搜索结果的方法与设备的制造方法

文档序号:9646560阅读:460来源:国知局
一种用于确定搜索结果的方法与设备的制造方法
【技术领域】
[0001] 本申请涉及计算机领域,尤其涉及一种用于确定搜索结果的技术。
【背景技术】
[0002] 商品库存单元(SKU,StockKeepingUnit)是在商品分类及编号中使用的一种计 量方式。在商品搜索引擎中,一款商品可能包括多个SKU。例如,对于iphone5s(即型号为 5s的苹果手机)这款商品来说,可以包含多个不同规格或配置的商品,不同规格或配置的 商品对应不同的SKU。例如,具有"白色,16G"这样的规格或配置的商品对应一个SKU,而具 有"金色,32G"这样的规格或配置的商品对应另一个SKU。进一步地,一个SKU通常具有多 个SKU属性,其中,每一SKU属性用于描述对应该SKU的商品在某一维度的特征。以上述 iphone5S的规格为"白色,16G"的商品对应的SKU为例进行说明,该SKU具有2个SKU属 性,分别是"颜色:白色"以及"存储大小:16G"。
[0003]SKU过滤是指用户在使用商品搜索引擎搜索商品时指定该商品的至少一个SKU属 性作为过滤条件的商品搜索方式。例如,用户搜索"iphone5s"时,指定SKU属性"存储大 小:32G"作为过滤条件。在进行SKU过滤时,用户指定的SKU属性通常是该商品众多SKU属 性中的一个子集,只要该商品有一个SKU包括过滤条件中所有用户所指定的SKU属性,则表 示该商品满足过滤条件,可以被检索出来。
[0004] 下面,以一个详细的实施例对SKU过滤进行说明。
[0005] 具体地,一商家出售的商品是iphone5s,该商品的标题为"iphone5s清仓处理", 该商品具有以下3个SKU:
[0006] 第1个SKU是"颜色:白色,存储大小:16G,网络模式:GSM",其中,该SKU具有3个 SKU属性,分别是"颜色:白色"、"存储大小:16G"以及"网络模式:GSM";
[0007] 第2个SKU是"颜色:金色,存储大小:16G,网络模式:GSM",其中,该SKU具有3个 SKU属性,分别是"颜色:金色"、"存储大小:16G"以及"网络模式:GSM";
[0008] 第3个SKU是"颜色:金色,存储大小:32G,网络模式:WCDMA",其中,该SKU具有3 个SKU属性,分别是"颜色:金色"、"存储大小:32G"以及"网络模式:WCDMA"。
[0009] 若用户搜索"iphone5S"并指定SKU属性"颜色:白色"和"存储大小:32G"作为 SKU过滤条件,在这种情况下,该商品的第1个SKU具有"颜色:白色"的SKU属性但不具有 "存储大小:32G"的SKU属性,该商品的第2个SKU既不具有"颜色:白色"的SKU属性也不 具有"存储大小:32G"的SKU属性,该商品的第3个SKU具有"存储大小:32G"的SKU属性 但不具有"颜色:白色"的SKU属性。也就是说,该商品并不具有同时满足"颜色:白色"和 "存储大小:32G"的SKU,所以该商品不满足SKU过滤条件,将不被搜索出来。
[0010] 若用户搜索"iphone5S"并指定SKU属性"颜色:白色"和"网络模式:GSM"作为 SKU过滤条件,在这种情况下,该商品的第1个SKU同时具有"颜色:白色"的SKU属性和"网 络模式:GSM"的SKU属性,因此该商品满足SKU过滤条件,将被搜索出来。
[0011] 在现有技术中,采用如下方法来实现上述SKU过滤,其中,该方法包括两个步骤:
[0012] 步骤一、商品搜索引擎根据商品的身份相关信息(例如商品标题等)搜索到相关 商品之后,通过商品在索引中的内部编号找到该商品所对应的SKU属性索引的位置信息, 进而根据该位置信息找到SKU属性索引本身(如图1所示)。
[0013] 假设商品搜索引擎中共存在N个商品(分别用商品1、商品2、商品3…商品N表 不)。以找到向品2的SKU属性索引为例,如上图所不,根据向品2在索引中的内部编号在 定长区域的位置2找到商品2的SKU属性索引的位置信息,然后根据该位置信息在索引的 变长区域中找到商品2的SKU属性索引。
[0014] 步骤二、在商品的SKU属性索引中对过滤条件中的SKU属性进行查找。典型地,SKU 属性索引采用hash表的形式,下文中称为SKU属性hash表。继续以商品2为例,其中,商 品2具有Μ个SKU属性(分别用属性1、属性2、属性3…属性Μ表示),该商品2的SKU属 性hash表如图2所示。
[0015] 针对过滤条件中的一个SKU属性来说,如果在商品的SKU属性hash表中无法查找 到该SKU属性,则说明该商品没有满足过滤条件的SKU属性;如果在商品的SKU属性hash表 中可以查找到该SKU属性,则对SKU属性hash表中与该SKU属性所对应的bitmap(位图) 进行置位,以表示该SKU属性在该商品的哪个SKU中出现过。以上述标题为"iphone5S清 仓处理"的商品为例,"颜色:黑色"的SKU属性在该商品的SKU属性hash表中无法查找到; 而"颜色:金色"的SKU属性可以在该商品的SKU属性hash表中找到,并且与"颜色:金色" 这个SKU属性所对应的bitmap中第2位和第3位被置位,表示"颜色:金色"这一SKU属性 出现在该商品的第2个SKU中以及第3个SKU中。
[0016] 当过滤条件中包括多个SKU属性时,需要针对过滤条件中的每一SKU属性在商品 的SKU属性hash表中逐一进行上述查找。如果过滤条件中的所有SKU属性在该商品的SKU 属性hash表中都能查找到,并且将与该所有SKU属性对应的bitmap做"与"运算之后,得 到的运算结果不是"〇"(若两个或两个以上的bitmap中相同的位均被置位,则该两个或两 个以上的bitmap做"与"运算之后,该"与"运算结果在对应位上非零,故结果不为"0",即 存在至少一个满足所有过滤条件的结果),则说明该商品存在至少一个SKU具有过滤条件 中的所有SKU属性,也就是说该商品满足过滤条件;否则说明该商品不满足过滤条件。以 上述标题为"iphone5s清仓处理"的商品为例,若过滤条件包括两个SKU属性,分别是"颜 色:金色"和"存储大小:16G",在该商品的SKU属性hash表中查找到与"颜色:金色"这一 SKU属性所对应的bitmap中第2位和第3位被置位以及与"存储大小:16G"这一SKU属性 所对应的bitmap中第1位和第2位被置位,两个bitmap做"与"运算之后,第2位依然被 置位,其结果不为"0",则说明该商品满足过滤条件;若过滤条件包括两个SKU属性,分别是 "颜色:白色"和"存储大小:32G",在该商品的SKU属性hash表中查找到与"颜色:白色"这 一SKU属性所对应的bitmap中第1位和第2位被置位以及与"存储大小:32G"这一SKU属 性所对应的bitmap中第3位被置位,两个bitmap做"与"运算之后,其结果为"0",则说明 该商品不满足过滤条件。需要说明的是,下文中将两个或多个bitmap做"与"运算简称为 bitmap"与"运算。
[0017] 下面,对上述实现SKU过滤的方法的运算复杂度进行分析。具体地,假设步骤一 中商品搜索引擎根据商品的身份相关信息搜索到相关商品搜索到的商品的数目为K、步骤 二中过滤条件包括的SKU属性的数目为P,在步骤二中针对于该K个商品中的每一商品执 行SKU属性hash表的查找以及bitmap"与"运算,其中,针对每一商品执行SKU属性hash表的查找的次数等于P以及执行bitmap"与"运算的次数等于P,那么,针对该K个商品执 行SKU属性hash表的查找的总次数等于KXP次以及执行bitmap"与"运算的总次数等于 KXP次。
[0018] 在利用商品搜索引擎进行商品搜索的实际过程中,步骤一中搜索到的商品动辄在 十万以上(即K的数值大于十万)。因此,现有技术中用于实现SKU过滤的方法其运算量 大、复杂度高,从而导致SKU过滤在搜索效率方面表现不够理想。

【发明内容】

[0019] 本申请的目的是提供一种用于确定搜索结果的方法与设备。
[0020] 根据本申请的一个方面,提供了一种用于确定搜索结果的方法,其中,该方法包 括:
[0021] 获取一个或多个业务对象关联的分词;根据所述分词建立所述一个或多个业务对 象的第一倒排索引数据库;
[0022] 为所述一个或多个业务对象配置SKU属性信息;根据所述一个或多个业务对象的 SKU属性信息建立所述一个或多个业务对象的第二倒排索引数据库;
[0023] 接收用户的查询序列;
[0024] 根据所述查询序列中的至少一个分词在所述第一倒排索引数据库中获取第一搜 索结果;
[0025] 提取所述查询序列中的SKU属性信息,根据提取的至少一项SKU属性信息在所述 第二倒排索引数据库中获取第二搜索结果;
[0026] 根据所述第一搜索结果及所述第二搜索结果确定目标搜索结果。
[0027] 根据本申请的另一方面,还提供了一种用于确定搜索结果的设备,其中,该设备包 括:
[0028] 第一建库装置,用于获取一个或多个业务对象关联的分词;根据所述分词建立所 述一个或多个业务对象的第一倒排索引数据库;
[0029] 第二建库装置,用于为所述一个或多个业务对象配置SKU属性信息;根据所述一 个或多个业务对象的SKU属性信息建立所述一个或多个业务对象的第二倒排索引数据库;
[0030] 接收装置,用于接收用户的查询序列;
[0031] 第一查询装置,用于根据所述查询序列中的至少一个分词在所述第一倒排索引数 据库中获取第一搜索结果;
[0032] 第二查询装置,用于提取所述查询序列中的SKU属性信息,根据提取的至少一项 SKU属性信息在所述第二倒排索引数据库中获取第二搜索结果;
[0033] 确定装置,用于根据所述第一搜索结果及所述第二搜索结果确定目标搜索结果。
[0034] 与现有技术相比,本申请通过分别建立业务对象所对应的第一倒排索引数据库及 第二倒排索引数据库,利用查询序列在该两数据库中分别搜索得到的结果来综合确定最终 的目标搜索结果,极大地提高了搜索效率以及提升了用户的使用体验。特别地,采用倒排索 引的方式根据第一倒排索引数据库建立对应的第二倒排索引数据库,并利用"与"逻辑运算 (例如基于bitmap的"与"运算)的方式确定目标搜索结果,可以大大降低运算复杂度,从 而高效地实现目标搜索结果的提供。
【附图说明】
[0035] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它 特征、目的和优点将会变得更明显:
[0036] 图1示出在索引中根据SKU属性索引的位置信息找到SKU属性索引本身;
[0037] 图2示出该商品2的SKU属性hash表;
[0038] 图3示出根据本申请一个方面的一种用于确定搜索结果的设备示意图;
[0039] 图4示出根据本申请的另一个方面的一种用于确定搜索结果的方法流程图。
[0040] 附图中相同或相似的附图标记代表相同或相似的部件。
【具体实施方式】
[0041] 下面结合附图对本申请作进一步详细描述。
[0042] 在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个 处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永 久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或 闪存(flashRAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久 性、可移动和非可移动媒体可以由任何方法或技术来实
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1