专利名称:一种授权文档的检索方法和系统的制作方法
技术领域:
本发明涉及企业非结构化文档的检索技术,尤其涉及一种授权文档的检索 方法和系统。
背景技术:
目前,各个企业都拥有大量的非结构化文档资源,例如word、 pdf、 ppt等 类型的文档,这些非结构化文档资源是企业资产很重要的一部分,所以越来越 多的企业采用了内容管理系统,实现对企业文档资源的有序管理,高效的检索 并再利用已有文档资源。
企业的文档资源有着自身的一些特点,包括
(1) 文档的数量相对较大,达到百万甚至千万。
(2) 拥有比较规范的元数据信息,例如创建的部门、企业内的文档分类等。 但企业既希望通过这些元数据信息进行检索,同时又希望通过文档内容的关键 词进行检索。
(3) 需要进行访问控制,不允许检索到没有授权的文档。
(4) 文档资源的授权,往往要求比较灵活,多数情况下,是按照例如某种 文档分类等元数据进行授权的,但在一些特殊情况下,也允许对文档直接进行 单独授权。
访问文档资源,首先要通过文档的某个属性检索到相应的文档。描述文档 的属性可以分为两部分结构化的元数据和非结构化的文本内容。对结构化的 元数据信息进行管理是数据库擅长的领域,而对非结构化的文本内容进行检索 是全文检索擅长的领域,二者各有自己的优势,所以,企业中所使用的内容管 理系统普遍釆用数据库和全文检索相结合的技术,可以同时支持基于元数据和文档内容对文档进行检索。授权信息,作为元数据的一种, 一般是存放在数据库中的,当基于内容 检索文档时,就需要结合数据库和全文检索系统,获取检索结果。数据库和全文检索系统目前有以下三种结合方式A、 分解文档查询请求为元数据(包含授权信息)和文档内容两部分,同 时向数据库和全文检索系统发送检索请求,之后,合并两个检索结果取交集。 这种方式的优点在于授权信息完全存放于数据库中,可以立即生效,但当两个 检索结果集都很大时,合并检索结果的效率较低,实用性也较低。B、 利用数据库本身的原生支持。 一般大的数据库都提供了全文检索功能, 可以通过结构化查询语言(SQL)的扩充语言支持对元数据和文档内容的同时 检索,这种结合方式比方式A中外部合并结果要高效很多。但数据库自带的全 文检索功能的检索效率通常低于专用全文检索系统的效率,对中文支持也不够。C、 将元数据(包括授权信息)直接保存于全文检索系统中。在这种方式 下,对文档内容的检索效率是最高的。这种方式的具体实现过程一般为将授 权信息保存在数据库中,建立索引时将授权信息转换为每个文档的授权,对其 进行全文索引,这样,检索文档内容时只要在全文检索系统中完成即可,不必 像方式A那样需要合并结果。但这种方式的缺点是授权无法立即生效,需要 延迟一定的时间,同时,由于授权信息是不稳定数据,授权信息的改变将导致 大量的索引重建,降低了系统的实用性。基于以上的三种结合方式,对非结构化的文档进行检索时,使用方式C检 索效率是最高的,但是,方式C同样具有大量索引重建、以及实用性差的缺点。发明内容本发明的主要目的在于提供一种授权文档的检索方法和系统,检索效率高, 授权生效的延迟时间短,且具有实用性。为达到上述目的,本发明的技术方案是这样实现的 本发明提供了一种授权文档的检索方法,该方法包括A、 在数据库中确定各个文档的至少包括文档标识ID、文档分类、关联媒 介标识的文档信息,文档分类与角色的关联,角色与用户的关联以及关联媒介 标识与角色的关联;全文检索系统从数据库中获取相应的文档信息,根据所述文档信息建立各个文档对应的索引;B、 当在数据库中修改一文档对应的、所建立索引中包含的文档信息时, 在增量表中记录所述文档对应的文档ID;C、 全文检索系统读取增量表中的文档ID,根据文档ID读取数据库中对应 文档的文档信息,新建、或重建该文档ID对应文档的索引。其中,步骤C之后该方法进一步包括D、 当通过关键词检索文档时,根据用户与角色、角色与文档分类以及角 色与关联媒介标识的关联从数据库中获取当前用户有权限的文档分类与关联媒 介标识;E、 将从数据库中获取的文档分类与关联媒介标识、以及关键词作为全文 检索的查询条件,在全文检索系统中进行检索。所述文档信息进一步包括文档名称、文档大小、以及文档内容。 步骤C中所述读取以 一 定的时间段为间隔周期性进行。 所述索引至少包括文档ID、文档分类以及关联媒介标识。 本发明还提供了一种授权文档的检索系统,该系统包括增量表读取模块、以及索引建立模块,其中,增量表读取模块,用于读取增量表中的文档ID,并将所述文档ID发送给索引建立模块;索引建立模块,用于根据所述文档ID从数据库中读取对应文档的文档信 息,根据所述文档信息建立该文档ID对应文档的索引。 其中,该系统进一步包括权限信息获取模块,用于当进行文档检索时,从数据库获取当前用户有权 限的文档分类与关联媒介标识,并将获取的上述信息发送给检索模块;检索模块,用于以所述文档分类、关联媒介标识、以及关键词作为全文检索的查询条件,到索引建立模块所建立的索引中进行全文检索,并获得检索结 果;相应的,索引建立模块进一步用于根据文档分类、关联媒介标识、以及 关键词进行全文检索,并向检索模块返回检索结果。本发明所提供的授权文档的检索方法和系统,将文档与角色的关联以关联 媒介标识作为关联媒介,不再直接将文档与角色关联起来,从而,当进行检索 时,只需得到文档与关联媒介标识的关联关系,授权信息量减少,提高了检索效率,缩短了授权的生效时间;另外,通过增量表记录进行了文档信息修改的文档对应的文档标识(ID),全文检索系统周期性读取增量表,对其中文档ID对应的文档进行索引的建立、或重建,无需每次重建所有文档对应的索引,减 少了全文检索系统的数据处理量,提高了系统性能、以及实用性。另外,当数据库中角色与用户的关联、文档分类与角色的关联、以及关联 媒介标识与角色的关联进行改变时,由于全文检索系统所建立的索引中并不包含上述关联信息,因此全文检索系统无须进行文档ID对应文档索引的重建,减少了全文检索系统的信息处理量,提高了系统性能,并且,无须重建索引,授 权即可立即生效。
图l为本发明授权文档检索方法流程示意图;图2为本发明授权文档检索系统结构示意图。
具体实施方式
本发明的基本思想是将文档与角色的关联以关联媒介标识作为关联媒介,不再直接将文档与角色关联起来;且,将进行了文档信息修改的文档ID记录在增量表中,全文检索系统只新建、或重建所述文档ID对应的索引。其中,本发明中所述关联媒介标识在以下实施例中以ACL—ID表示。 以下,通过具体实施例结合附图详细说明本发明授权文档检索方法和系统的实现。图1为本发明授权文档检索方法流程示意图,如图1所示,该方法包括 步骤101:在数据库中确定各个文档的文档ID、文档分类、ACLJD等文 档信息、角色与用户的关联、文档分类与角色的关联、以及ACL—ID与角色的关联。文档信息还可以包括文档内容、文档大小、文档名称等,但是至少需包 括文档ID、文档分类、以及ACLjD,其中, 文档ID,用于唯一标识每个文档。文档分类,用于授权的分类,在不同的企业中可能有不同的文档分类,且 可以根据实际应用情况设定文档的分类,例如,可以根据部门将文档分为合作 部、研发部、秘书部等。每个分类根据步骤102中与角色的关联,确定文档的 授权。ACL—ID,即为所述关联媒介标识,用于作为文档与角色的关联媒介。 其中,本步骤可以以数据表的方式实现,即文档内容、文档大小、文档 名称、文档ID、文档分类、以及ACL—ID等均作为数据表中的字段,以文档ID 作为主字段,每个文档ID对应一条记录,将该数据表名称设为数据表l。其中, 文档内容很大时,文档内容所对应字段中可以只记录文档文件的访问地址。 角色与用户的关联关系类型、以及文档分类与角色的关联关系类型一般为其中,ACL—ID与角色的关联用于最终确定文档与角色的关联,文档与角 色的关联可以由两个步骤来建立首先,确定ACL—ID与角色的关联关系,关系类型一般为一对多;之后,根据确定的文档与ACL—ID的关联关系,最终确定文档与角色的关 联关系,关联关系类型一般为多对一。或者,也可以先确定文档与ACL—ID的关联关系,之后,再确定ACL—ID 与角色的关联关系,确定两种关联关系的执行顺序不限制。同样的,角色与用户的关联、文档分类与角色的关联、以及ACL一ID与角色的关联关系也可以以数据表的方式实现,角色与用户的关联、文档分类与角 色的关联、以及ACL—ID与角色的关联分别创建相应的以角色和用户、文档分类和角色、ACLJD和角色为字段的三个数据表,相应设为数据表2、数据表3、 以及数据表4。步骤102:全文检索系统从数据库中获取相应的文档信息,并根据所述文档信息建立各个文档的索引。其中,本步骤中所述获取相应的文档信息是指全文检索系统可以只从数据库中获取建立索引所需要的文档信息。其中,所述索引至少包含文档ID、文档分类、以及ACL—ID,这样,当在 数据库中进行角色与用户的关联、文档分类与角色的关联、ACL一ID与角色的 关联等关联关系的改变时,无需重建全文检索系统中的对应索引。另外,只要步骤101中数据库确定各个文档的文档ID、文档分类、ACL—ID 等文档信息后,步骤102即可执行,并非一定要步骤101中确定完所有的关联 关系后才可执行步骤102。步骤103:当修改某一文档对应的、所建立索引中包含的文档信息时,在 增量表中记录该修改的文档对应的文档ID。所述增量表可以是数据表的形式,存储于数据库中,或者,也可以放置于 全文检索系统中。假设步骤102中所建立索引中只包含文档ID、文档分类、以及ACL—ID, 则,本步骤中所述所建立索引中包含的文档信息是指文档ID、文档分类、以及 ACL—ID,此时,当修改某一文档对应的文档分类时,则需要在增量表中记录该 文档的文档ID。本步骤的主要目的在于当在数据库中修改某一文档的文档信息时,如果 全文检索系统的索引中包含该文档信息,比如文档分类,此时,在增量表中记 录文档的文档ID,以便在后续步骤中全文检索系统可以读取增量表中的文档 ID,进行索引的重建;而当全文检索系统的索引中不包含该文档信息时,只需 在数据库中进行修改,无须修改全文检索系统中的索引,因此也无须在增量表中记录文档ID。步骤104:全文检索系统周期性读取增量表中的文档ID,根据文档ID读 取数据库中对应文档的文档信息,建立该文档ID对应文档的索引。所述读取文档信息具体为读取数据表l中该文档ID对应的记录,获得文 档分类、以及ACL—ID等文档信息。其中,所建立的索引中至少包括文档ID、文档分类、ACL—ID,还可以包 括文档名称、以及文档大小等,可以自主设置。其中,当文档与文档分类、或者文档与ACL—ID是一对多的关系时,全文检索系统在建立索引前,可能存在某一文档信息为多个参数值的情况,这时, 需要将所述某一文档信息对应的多个参数值合并成单值,即用全文检索系统可 以分辨的分词字符分割所述多个参数值,但是,作为索引中的一个参数。步骤105:当通过关键词检索文档时,根据用户与角色、角色与文档分类 以及角色与ACL—ID的关联从数据库中获取当前用户有权限的文档分类与 ACLID。同样的,本步骤中所述从数据库中获取也为相应查找各个数据表,从而获 取相应的数据的过程。步骤106:将从数据库中获取的文档分类与ACL一ID、以及关键词作为全文 检索的查询条件,进行全文检索。其中,所述查询条件一般为某个文档分类、以及ACL—ID的几个取值范 围内。图2为本发明授权文档的检索系统结构示意图,该系统可以作为所述全文 检索系统。如图2所示,该系统包括增量表读取模块210、索引建立模块220、 权限信息获取模块230、以及检索模块240,其中,增量表读取模块210,用于读取增量表中的文档ID,并将所述文档ID发 送给索引建立模块220。索引建立模块220,用于根据所述文档ID从数据库中读取对应文档的文档 信息,根据所述文档信息建立该文档ID对应文档的索引;还用于根据文档分类、ACL—ID、以及关键词进行全文检索,并将检索结果返回检索模块240。权限信息获取模块230,用于当进行文档检索时,从数据库获取当前用户有权限的文档分类与ACL—ID,并将获取的上述信息发送给检索模块240。检索模块240,用于以所述文档分类、ACL一ID、以及关键词作为全文检索的查询条件,到索引建立模块220所建立的索引中进行全文检索,并获得检索结果。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1、一种授权文档的检索方法,其特征在于,该方法包括A、在数据库中确定各个文档的至少包括文档标识ID、文档分类、关联媒介标识的文档信息,文档分类与角色的关联,角色与用户的关联以及关联媒介标识与角色的关联;全文检索系统从数据库中获取相应的文档信息,根据所述文档信息建立各个文档对应的索引;B、当在数据库中修改一文档对应的、所建立索引中包含的文档信息时,在增量表中记录所述文档对应的文档ID;C、全文检索系统读取增量表中的文档ID,根据文档ID读取数据库中对应文档的文档信息,新建、或重建该文档ID对应文档的索引。
2、 根据权利要求1所述的方法,其特征在于,步骤C之后该方法进一步 包括D、 当通过关键词检索文档时,根据用户与角色、角色与文档分类以及角 色与关联媒介标识的关联从数据库中获取当前用户有权限的文档分类与关联媒 介标识;E、 将从数据库中获取的文档分类与关联媒介标识、以及关键词作为全文 检索的查询条件,在全文检索系统中进行检索。
3、 根据权利要求l或2所述的方法,其特征在于,所述文档信息进一步包 括文档名称、文档大小、以及文档内容。
4、 根据权利要求1或2所述的方法,其特征在于,步骤C中所述读取以 一定的时间段为间隔周期性进行。
5、 根据权利要求l或2所述的方法,其特征在于,所述索引至少包括文 档ID、文档分类以及关联媒介标识。
6、 一种授权文档的检索系统,其特征在于,该系统包括增量表读取模块、 以及索引建立模块,其中,增量表读取模块,用于读取增量表中的文档ID,并将所述文档ID发送给索引建立模块;索引建立模块,用于根据所述文档ID从数据库中读取对应文档的文档信 息,根据所述文档信息建立该文档ID对应文档的索引。
7、根据权利要求6所述的系统,其特征在于,该系统进一步包括 权限信息获取模块,用于当进行文档检索时,从数据库获取当前用户有权限的文档分类与关联媒介标识,并将获取的上述信息发送给检索模块;检索模块,用于以所述文档分类、关联媒介标识、以及关键词作为全文检索的査询条件,到索引建立模块所建立的索引中进行全文检索,并获得检索结果;相应的,索引建立模块进一步用于根据文档分类、关联媒介标识、以及 关键词进行全文检索,并向检索模块返回检索结果。
全文摘要
本发明公开了一种授权文档的检索方法,在该方法中将文档与角色的关联以关联媒介标识作为关联媒介,不再直接将文档与角色关联起来;且,将进行了文档信息修改的文档ID记录在增量表中,全文检索系统只新建、或重建所述文档ID对应文档的索引。本发明同时公开了一种授权文档的检索系统,该方法和系统检索效率高,授权生效的延迟时间短,且具有实用性。
文档编号G06F17/30GK101408882SQ20081013526
公开日2009年4月15日 申请日期2008年8月5日 优先权日2008年8月5日
发明者吴於茜, 孙肖峰, 王绪胜 申请人:北大方正集团有限公司;北京大学;北京方正电子政务信息科技有限公司