[发明专利]一种多级分类检索方法及系统有效
申请号: | 200910080362.5 | 申请日: | 2009-03-19 |
公开(公告)号: | CN101840400A | 公开(公告)日: | 2010-09-22 |
发明(设计)人: | 王洪昌;卢作伟;宫丽杰 | 申请(专利权)人: | 北大方正集团有限公司;北京大学;北京北大方正电子有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京天悦专利代理事务所(普通合伙) 11311 | 代理人: | 田明;任晓航 |
地址: | 100871 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多级 分类 检索 方法 系统 | ||
技术领域
本发明属于数据库检索技术领域,具体涉及一种多级分类检索方法及系统。本发明尤其适用于海量数据的数据库检索中。
背景技术
在信息系统中,往往对数据进行分类存储,便于用户对数据进行分类检索和查看分类数据,尤其在海量数据的情况下,这样可以提高检索的效率。例如,假设一篇文章含有地区分类属性:亚洲→中国→北京。这是一种典型多级分类结构,如果将该地区的分类属性设置为“中国”,则系统在存储时通常只存储一个节点即“中国”或者将分类路径写死到一个或多个字段上。检索时,通过SQL中的like语句进行模糊查询。一方面,这种检索方式在数据量较大的情况下效率较低,即使建立数据库索引也无法达到很好的检索效率。另一方面,这种检索方式检索出的结果只包含“中国”的数据,而通常的需求是能够按照分类路径进行检索,即按照“中国”检索时能够检索出所有“中国”和“北京”的数据,也就是说,能够检索出该节点以及该节点后所有节点的数据。
现有的检索方式中,针对检索效率低的问题,还存在一种将多个分类属性存储到数据表的多个字段上,然后利用数据库索引进行检索的方式。例如,上例中,可以将“亚洲”、“中国”、“北京”存储在三个字段上,这种方式虽然能够在一定程度上提高检索的效率,但其扩展性极差,当增加多个分类时(如上例中还需要存储栏目分类、体裁分类等等)会增加很多字段,从而使表的结构变得越来越臃肿。
发明内容
针对现有技术中存在的缺陷,本发明的目的是提供一种速度快、扩展性好的多级分类检索方法及系统。
为了实现上述目的,本发明采用的技术方案如下:
一种多级分类检索方法,包括以下步骤:
(1)将业务数据的分类信息存储在分类表中,所述分类表包括用于存储分类节点层次ID的字段、用于存储分类节点ID的字段、用于存储分类节点名称的字段以及用于存储分类节点父节点的字段;
(2)将业务数据存储在数据表中,所述数据表包括分类字段,所述分类字段用于存储分类路径,所述分类路径根据分类表中用于存储分类节点父节点的字段内容获得,分类路径上的分类节点用从分类表中获得的分类节点ID表示;
(3)根据数据表生成与该数据表相对应的分类关联表,所述分类关联表存储数据表中除分类字段外的全部或部分字段内容,以及根据数据表中分类字段存储的分类路径拆分成的多个分类层次字段,按照层次关系存储拆分后的分类节点;
(4)在分类表中获得分类节点层次ID和分类节点ID,设置检索条件,利用数据库索引在分类关联表中检索数据。
一种多级分类检索系统,包括用于将业务数据的分类信息存储在分类表中的分类信息存储模块(11),所述分类表包括用于存储分类节点层次ID的字段、用于存储分类节点ID的字段、用于存储分类节点名称的字段以及用于存储分类节点父节点的字段;
用于将业务数据存储在数据表中的业务数据存储模块(12),所述数据表包括分类字段,所述分类字段用于存储分类路径,所述分类路径根据分类表中用于存储分类节点父节点的字段内容获得,分类路径上的分类节点用从分类表中获得的分类节点ID表示;
用于根据数据表生成与该数据表相对应的分类关联表的分类关联表生成模块(13),所述分类关联表存储数据表中除分类字段外的全部或部分字段内容,和根据数据表中分类字段存储的分类路径拆分成的多个分类层次字段,按照层次关系存储拆分后的分类节点;
以及用于呈现分类表、设置检索条件、利用数据库索引在分类关联表中检索数据并呈现检索结果的检索模块(14)。
本发明所述方法及系统,通过先生成将数据表中分类字段存储的分类路径自动拆分后按照层次关系存储成多个字段的分类关联表,再利用数据库索引在分类关联表中进行精确检索的方式,克服了现有技术直接在数据表中进行模糊检索带来的效率低的缺陷,提高了分类数据检索的效率,而且不但能够检索出符合条件的分类节点信息,同时又能够检索出该节点后的所有节点信息。此外,通过将数据表中分类字段存储的多种分类路径拆分后存储在分类关联表中的多条记录的方式,支持多种分类分别检索,并具有很好的扩展性。
附图说明
图1是具体实施方式中所述系统结构图;
图2是具体实施方式中所述方法流程图;
图3是数据表、触发器、分类表和分类关联表之间的关系示意图。
具体实施方式
下面结合具体实施方式和附图对本发明进行详细描述。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北大方正集团有限公司;北京大学;北京北大方正电子有限公司,未经北大方正集团有限公司;北京大学;北京北大方正电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910080362.5/2.html,转载请声明来源钻瓜专利网。