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

技术编号:13012178 阅读:104 留言:0更新日期:2016-03-16 08:59
本申请的目的是提供一种用于确定搜索结果的方法与设备。具体地,获取一个或多个业务对象关联的分词;根据所述分词建立所述一个或多个业务对象的第一倒排索引数据库;为所述一个或多个业务对象配置SKU属性信息;根据所述一个或多个业务对象的SKU属性信息建立所述一个或多个业务对象的第二倒排索引数据库;接收用户的查询序列;根据所述查询序列中的至少一个分词在所述第一倒排索引数据库中获取第一搜索结果;提取所述查询序列中的SKU属性信息,根据提取的至少一项SKU属性信息在所述第二倒排索引数据库中获取第二搜索结果;根据所述第一搜索结果及所述第二搜索结果确定目标搜索结果。与现有技术相比,本申请极大地提高了搜索效率并提升了用户使用体验。

【技术实现步骤摘要】

本申请涉及计算机领域,尤其涉及一种用于确定搜索结果的技术。
技术介绍
商品库存单元(SKU,StockKeepingUnit)是在商品分类及编号中使用的一种计 量方式。在商品搜索引擎中,一款商品可能包括多个SKU。例如,对于iphone5s(即型号为 5s的苹果手机)这款商品来说,可以包含多个不同规格或配置的商品,不同规格或配置的 商品对应不同的SKU。例如,具有"白色,16G"这样的规格或配置的商品对应一个SKU,而具 有"金色,32G"这样的规格或配置的商品对应另一个SKU。进一步地,一个SKU通常具有多 个SKU属性,其中,每一SKU属性用于描述对应该SKU的商品在某一维度的特征。以上述 iphone5S的规格为"白色,16G"的商品对应的SKU为例进行说明,该SKU具有2个SKU属 性,分别是"颜色:白色"以及"存储大小:16G"。SKU过滤是指用户在使用商品搜索引擎搜索商品时指定该商品的至少一个SKU属 性作为过滤条件的商品搜索方式。例如,用户搜索"iphone5s"时,指定SKU属性"存储大 小:32G"作为过滤条件。在进行SKU过滤时,用户指定的SKU属性通常是该商品众多SKU属 性中的一个子集,只要该商品有一个SKU包括过滤条件中所有用户所指定的SKU属性,则表 示该商品满足过滤条件,可以被检索出来。 下面,以一个详细的实施例对SKU过滤进行说明。 具体地,一商家出售的商品是iphone5s,该商品的标题为"iphone5s清仓处理", 该商品具有以下3个SKU: 第1个SKU是"颜色:白色,存储大小:16G,网络模式:GSM",其中,该SKU具有3个 SKU属性,分别是"颜色:白色"、"存储大小:16G"以及"网络模式:GSM"; 第2个SKU是"颜色:金色,存储大小:16G,网络模式:GSM",其中,该SKU具有3个 SKU属性,分别是"颜色:金色"、"存储大小:16G"以及"网络模式:GSM"; 第3个SKU是"颜色:金色,存储大小:32G,网络模式:WCDMA",其中,该SKU具有3 个SKU属性,分别是"颜色:金色"、"存储大小:32G"以及"网络模式:WCDMA"。 若用户搜索"iphone5S"并指定SKU属性"颜色:白色"和"存储大小:32G"作为 SKU过滤条件,在这种情况下,该商品的第1个SKU具有"颜色:白色"的SKU属性但不具有 "存储大小:32G"的SKU属性,该商品的第2个SKU既不具有"颜色:白色"的SKU属性也不 具有"存储大小:32G"的SKU属性,该商品的第3个SKU具有"存储大小:32G"的SKU属性 但不具有"颜色:白色"的SKU属性。也就是说,该商品并不具有同时满足"颜色:白色"和 "存储大小:32G"的SKU,所以该商品不满足SKU过滤条件,将不被搜索出来。 若用户搜索"iphone5S"并指定SKU属性"颜色:白色"和"网络模式:GSM"作为 SKU过滤条件,在这种情况下,该商品的第1个SKU同时具有"颜色:白色"的SKU属性和"网 络模式:GSM"的SKU属性,因此该商品满足SKU过滤条件,将被搜索出来。 在现有技术中,采用如下方法来实现上述SKU过滤,其中,该方法包括两个步骤: 步骤一、商品搜索引擎根据商品的身份相关信息(例如商品标题等)搜索到相关 商品之后,通过商品在索引中的内部编号找到该商品所对应的SKU属性索引的位置信息, 进而根据该位置信息找到SKU属性索引本身(如图1所示)。 假设商品搜索引擎中共存在N个商品(分别用商品1、商品2、商品3…商品N表 不)。以找到向品2的SKU属性索引为例,如上图所不,根据向品2在索引中的内部编号在 定长区域的位置2找到商品2的SKU属性索引的位置信息,然后根据该位置信息在索引的 变长区域中找到商品2的SKU属性索引。 步骤二、在商品的SKU属性索引中对过滤条件中的SKU属性进行查找。典型地,SKU 属性索引采用hash表的形式,下文中称为SKU属性hash表。继续以商品2为例,其中,商 品2具有Μ个SKU属性(分别用属性1、属性2、属性3…属性Μ表示),该商品2的SKU属 性hash表如图2所示。 针对过滤条件中的一个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中。 当过滤条件中包括多个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"与"运算。 下面,对上述实现SKU过滤的方法的运算复杂度进行分析。具体地,假设步骤一 中商品搜索引擎根据商品的身份相关信息搜索到相关商品搜索到的商品的数目为K、步骤 二中过滤条件包括的SKU属性的数目为P,在步骤二中针对于该K个商品中的每一商品执 行SKU属性hash表的查找以及bitmap"与"运算,其中,针对每一商品执行SKU属性hash表的查找的次数等于P以及执行bit本文档来自技高网...

【技术保护点】
一种用于确定搜索结果的方法,其中,该方法包括:获取一个或多个业务对象关联的分词;根据所述分词建立所述一个或多个业务对象的第一倒排索引数据库;为所述一个或多个业务对象配置SKU属性信息;根据所述一个或多个业务对象的SKU属性信息建立所述一个或多个业务对象的第二倒排索引数据库;接收用户的查询序列;根据所述查询序列中的至少一个分词在所述第一倒排索引数据库中获取第一搜索结果;提取所述查询序列中的SKU属性信息,根据提取的至少一项SKU属性信息在所述第二倒排索引数据库中获取第二搜索结果;根据所述第一搜索结果及所述第二搜索结果确定目标搜索结果。

【技术特征摘要】

【专利技术属性】
技术研发人员:向宇胡月军周彪冯遵宝王森林
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1