【技术实现步骤摘要】
过滤方法和服务器
本专利技术涉及查询
,更具体地说,涉及过滤方法和服务器。
技术介绍
在数据查询、信息检索等领域,经常需要对对象进行过滤(查询、检索)。上述对象可能是产品(例如手机)、人员等等。对象一般具有属性和属性值。其中,属性和属性值相关联,比如,某款手机的“手机操作系统”(OS)为Android,则“OS”是手机的一种属性,而Android是“OS”这一属性对应的属性值。如何对对象进行过滤、查询,是时下研究的热门。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供过滤方法和服务器,以解决上述问题。 为实现上述目的,本专利技术实施例提供如下技术方案: 根据本专利技术实施例的第一方面,提供一种过滤方法,基于预先建立的对象索引,所述对象索引包括针对属性值建立的列索引; 所述方法包括: 接收过滤条件,所述过滤条件包括至少一个属性值; 获取与所述过滤条件中的属性值相匹配的列索引中的对象集,所述对象集中的对象均拥有所述属性值; 对获取到的对象集取交集,取交集后得到的对象作为过滤结果。 结合第一方面,在第一种可 ...
【技术保护点】
一种过滤方法,其特征在于,基于预先建立的对象索引,所述对象索引包括针对属性值建立的列索引;所述方法包括:接收过滤条件,所述过滤条件包括至少一个属性值;获取与所述过滤条件中的属性值相匹配的列索引中的对象集,所述对象集中的对象均拥有所述属性值;对获取到的对象集取交集,取交集后得到的对象作为过滤结果。
【技术特征摘要】
1.一种过滤方法,其特征在于,基于预先建立的对象索引,所述对象索引包括针对属性值建立的列索引; 所述方法包括: 接收过滤条件,所述过滤条件包括至少一个属性值; 获取与所述过滤条件中的属性值相匹配的列索引中的对象集,所述对象集中的对象均拥有所述属性值; 对获取到的对象集取交集,取交集后得到的对象作为过滤结果。2.如权利要求1所述的方法,其特征在于,所述列索引包括关键字和对象集,所述关键字至少包括属性值;任一列索引中的属性值不同于其他列索引中的属性值; 所述对象索引通过如下方式建立: 将每一对象的每一属性值分别作为目标属性值,建立针对所述目标属性值的列索引; 所述建立针对所述目标属性值的列索引包括: 在不存在针对所述目标属性值的列索引时,新建列索引,令新建的列索引的关键词包含所述目标属性值,并且,所述新建的列索引的对象集,包含所述目标属性值对应的对象;在存在针对所述目标属性值的列索引时,将所述目标属性值对应的对象插入到,针对所述目标属性值的列索引的对象集中。3.如权利要求1或2所述的方法,其特征在于,所述列索引采用Hash结构存储。4.如权利要求1-3任一项所述的方法,其特征在于,所述对象集中的对象按自然序排列。5.如权利要求1-4任一项所述的方法,其特征在于,所述对获取到的对象集取交集包括: 当获取到N个对象集时,进行N-1轮匹配查找处理,所述N为不小于2的自然数。6.如权利要求5所述的方法,其特征在于,第i轮匹配查找处理包括第一处理和第二处理,所述i为不小于I并且不大于N-1的自然数,其中: 所述第一处理包括:任选两个未参与匹配查找处理的对象集,其中一个对象集作为参考集,另一个对象集作为被搜索集; 依次将所述参考集中的对象作为目标参考对象; 在所述被搜索集中查找是否存在与所述目标参考对象相匹配的对象; 所述第二处理包括: 当不满足预设条件时,保留匹配成功的对象至中间对象集,并将所述中间对象集作为未参与匹配查找处理的对象集; 当满足预设条件时,保留匹配成功的对象到最终对象集; 所述预设条件包括i=N-l。7.如权利要求6所述的方法,其特征在于,所述将取交集后得到的对象作为过滤结果包括: 将所述最终对象集中的对象作为过滤结果。8.如权利要求6或7所述的方法,其特征在于,所述在所述被搜索集中查找是否存在与所述目标参考对象相匹配的对象包括: 在所述被搜索集中按二分法查找是否存在与所述目标参考对象相匹配的对象。9.如权利要求8所述的方法,其特征在于,所述参考集中包括的对象数不大于被搜索集中的对象数。10.如权利要求2所述的方法,其特征在于,还包括: 接收输入的新增对象的相关数据,所述相关数据至少包括属性值; 获取所述新增对象的属性值; 从所述对象索引中,获取关键字与所述新增对象的属性值相匹配的列索引中的对象集; 将所述新增对象插入获取到的对象集中。11.如权利要求1-10任一项所述的方法,其特征在于,所述...
【专利技术属性】
技术研发人员:郭光明,
申请(专利权)人:华为软件技术有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。