一种基于全文搜索引擎的数据检索方法及装置与流程

文档序号:15236566发布日期:2018-08-24 05:39阅读:213来源:国知局

本发明涉及大数据技术领域,更具体的说是涉及一种基于全文搜索引擎的数据检索方法及装置。



背景技术:

本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述可包括可以探究的概念,但不一定是之前已经想到或者已经探究的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就承认是现有技术。

通过开展农村集体土地确权登记,可以依法保护农民宅基地用益物权,有效规范农村住宅建设,防止乱占耕地,推进社会主义新农村建设。随着国家《物权法》的出台,农民维权意识的提高,农民对农村土地使用规划情况的知情权日益凸显,通过为公众提供数证户图检索功能,实现农民通过互联网查询自己承包土地的具体情况,了解农村土地流转情况,避免不必要的土地纠纷。

目前,基于oltp联机事务处理架构为公众提供数证户图检索功能。由于数据存储在物理磁盘中,数据的索引结构是采用b+tree的组织方式,导致检索效率低,不能满足高并发的数据检索场景下,对检索效率的需求。



技术实现要素:

有鉴于此,本发明提供一种基于全文搜索引擎的数据检索方法及装置,以解决现有技术中检索效率低的问题。

本发明提供了一种基于全文搜索引擎的数据检索方法,包括:

接收输入的待检索信息;

根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。

优选地,在所述接收输入的待检索信息之前,还包括:

获取存储有源数据的数据库;其中,所述数据库中以数据表的形式存储源数据;

对获取到的所述数据库处理后,导入所述全文搜索引擎;

根据所述全文搜索引擎,扫描导入的数据库,获得关键词;

根据所述关键词,建立所述关键词的倒排索引。

优选地,所述对获取到的所述数据库处理后,导入所述全文搜索引擎包括:

根据所述数据库中的源数据表和全文搜索引擎的类型之间的转换关系,采用多线程技术,将所述源数据存储到全文搜索引擎中。

优选地,所述对获取到的所述数据库处理后,导入所述全文搜索引擎之后,还包括:

判断是否存在新增加的源数据;

判断存在新增加的源数据,则将所述新增加的源数据导入所述全文搜索引擎。

优选地,所述根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果之后,还包括:基于web页面显示所述检索结果或基于webgis的gis显示所述检索结果。

本发明还提供了一种基于全文搜索引擎的数据检索装置,包括:

接收单元,用于接收输入的待检索信息;

检索单元,用于根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。

优选地,还包括:

第一获取单元,用于获取存储有源数据的数据库;其中,所述数据库中以数据表的形式存储源数据;

导入单元,用于对获取到的所述数据库处理后,导入所述全文搜索引擎;

第二获取单元,用于根据所述全文搜索引擎,扫描导入的数据库,获得关键词;

建立单元,用于根据所述关键词,建立所述关键词的倒排索引。

优选地,所述导入单元具体为:根据所述数据库中的源数据表和全文搜索引擎的类型之间的转换关系,采用多线程技术,将所述源数据存储到全文搜索引擎中。

优选地,还包括:

判断单元,用于判断是否存在新增加的源数据;

在所述判断单元判断存在新增加的源数据时,调用所述导入单元,以将所述新增加的源数据导入所述全文搜索引擎。

优选地,还包括:

显示单元,用于基于web页面显示所述检索结果或基于webgis的gis显示所述检索结果。

应用本发明,具有如下有益效果:

本发明提供了一种基于全文搜索引擎的数据检索方法及装置,在接收到用户输入的待检索信息后,根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。由于全文搜索引擎的数据是存储在内存中的,且数据的索引结构是倒排索引,能够实现快速检索,提高了检索效率,且能够满足高并发的数据检索场景下,对检索效率的需求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例中一种基于全文搜索引擎的数据检索方法的流程示意图;

图2为本发明实施例中另一种基于全文搜索引擎的数据检索方法的流程示意图;

图3为本发明实施例中一种基于全文搜索引擎的数据检索装置的结构示意图;

图4为本发明实施例中另一种基于全文搜索引擎的数据检索装置的结构示意图。

具体实施方式

下面将参照本发明实施方式的方法的流程图和设备(或系统)的框图描述本发明的实施方式。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。

也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置的产品。

也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。

根据本发明的实施方式,提出了一种基于全文搜索引擎的数据检索方法和装置。附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。

下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。

本发明提供了一种基于全文搜索引擎的数据检索方法及装置,在接收到用户输入的待检索信息后,根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。由于全文搜索引擎的数据是存储在内存中的,且数据的索引结构是倒排索引,能够实现快速检索,提高了检索效率,且能够满足高并发的数据检索场景下,对检索效率的需求。

在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。

实施例一

参考图1,本发明实施例公开的一种基于全文搜索引擎的数据检索方法包括以下步骤:

s101、接收输入的待检索信息;

用户在需要检索或者查询农村土地承包经营权确权登记颁证信息时,可以输入待检索信息,其中,待检索信息可以包括农村土地承包经营权确权办证成果图、户、证、数等信息。

s102、根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。

全文搜索引擎通过扫描文章中的每一个词,对每一个词建立一个索引,以指明该词在文章中出现的次数和位置。其中,为每一个词建立的索引为倒排索引,当用户检索或查询时,根据预先建立的倒排索引进行查找,并将检索结果反馈给用户。

由上可见,本发明实施例在接收到用户输入的待检索信息后,根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。由于全文搜索引擎的数据是存储在内存中的,且数据的索引结构是倒排索引,能够实现快速检索,提高了检索效率,且能够满足高并发的数据检索场景下对检索效率的需求。

实施例二

本发明还提供了另一种基于全文搜索引擎的数据检索方法,参见图2,所述数据检索方法包括:

s201、获取存储有源数据的数据库;其中,所述数据库中以数据表的形式存储源数据;

针对农村集体土地确权登记,源数据包括农户信息、家庭成员信息、农地信息、组织信息、承包经营权证书和流转合同;其中,具体地:

农户信息包括:编号、身份证号、姓名、年龄、出生日期、电话、性别、家庭人口数、邮政编码、民族、劳动力数、粮食种植面积、劳动力数量、户口性质、农户性质、从何迁入、迁入前土地类型、迁入前土地面积、迁入日期、打工去向、是否承包用户;

家庭成员信息包括:姓名、身份证号、性别、出生日期、与户主关系、年龄、户主性质、民族、变动原因、户口迁(落)入时间、变动时间;

农地信息包括:地块名称、gis编码、地块长、宽、实(亩)、折(亩)、土地等级、类别、种植类型、产量、四至(东西南北)、测量面积、是否基本农田、形状、土地用途、所有制性质;

组织信息包括:按照省、市、县、乡(镇)、村、组由大到小的关系组织成一个“组织树”模型。主要属性如下:组织代码、组织名称、邮政编码、干部成员信息及任职时间、集体土地总面积、集体土地已发包面积、发包后剩余土地处理情况、发包方全称、联系电话、法人代表、地址、鉴证机关全称、鉴证人、联系电话、状态;

承包经营权证书包括:证书编号、证书状态、合同编号、合同承包方、未发放原因、发放时间、发放方式、证书名称、发证机关、发证日期、承办人、合同发包方、合同开始日期、合同截止日期、合同涉及面积;

流转合同包括:合同编号、合同类型(转包、转让、出租、入股、互换、借用)、转让方、转出原因、家庭承包人口、流转去向、签订日期、受让方、转入原因、家庭承包面积亩、流转单价、转让费用、开始时间、转让地用途、支付方式、结束时间、解决纠纷方式、鉴证与否、鉴证机关、鉴证日期、鉴证人、备注。

采集到源数据后,将源数据以数据表的形式存储在数据库中。

s202、对获取到的所述数据库处理后,导入所述全文搜索引擎;

在本实施例中,根据所述数据库中的源数据表和全文搜索引擎的类型之间的转换关系,采用多线程技术,将所述源数据存储到全文搜索引擎中。

具体地,对存储有源数据的数据库链接、表信息、列信息分别进行定义。定义数据库链接信息包括:ip地址、端口号、实例名称、数据库连接串、用户名、密码;定义表信息包括:表名、表中文名称、表分区信息、表主键信息、表外键信息;定义列信息包括:列名、列中文名称、类型、长度、精度、域值信息、地图关键字段。

由于数据量大,全文搜索引擎采用集群模式进行部署,同时为了高可用性和提高并发性能,采用了多副本技术。分别对集群、节点和类型进行定义。

集群定义:集群名称、ip地址、端口号、http访问地址串、管理访问地址串、用户名称、密码。

节点定义:ip地址、端口号、用户名、密码、http访问地址串、管理访问地址串、用户名称、密码、分词包存放位置。

类型定义:类型名称、类型编码、副本数量及位置、类型主键、类型外键。

由于定义了存储有源数据的数据库中源数据表的信息,且定义了全文搜索引擎的类型,根据所述数据库中的源数据表和全文搜索引擎的类型之间的映射关系,采用多线程技术,将所述源数据存储到全文搜索引擎中。其中,源数据表和全文搜索引擎的类型之间建立有一对一或多对一的映射关系。

将源数据导入全文搜索引擎后,相较于将源数据存储在关系数据库中,并直接从数据库中访问数据而言,提高了系统的响应速度。

在实际应用中,源数据是跟随业务系统不断增加修改的,需要将变化的数据同步到全文搜索引擎。具体地,判断是否存在新增加的源数据;判断存在新增加的源数据,则将所述新增加的源数据导入所述全文搜索引擎。

其中,判断是否存在新增加的源数据可以采用全表比对的方式实现,也可以采用时间戳的方式实现。

全表比对是将源数据端的源表一次或分批次加载,将加载的数据逐条与全文中的数据按主键做比对。若全文搜索引擎中查不到该数据记录,则该数据记录为新增,若全文搜索引擎中存在该数据记录,则需比对该数据记录除主键外的其他字段,若存在差异项,则为该数据记录需更新。

时间戳是一种基于快照比较的变化数据捕获方式。这种方式需要在源表上增加一个时间戳字段,当业务系统更新表数据的时候,同时修改时间戳字段的时间值。通过比较系统时间与上次同步时时间戳字段的值,来决定同步哪些数据。

s203、根据所述全文搜索引擎,扫描导入的数据库,获得关键词;

在汉语言分词上,采用自然语言处理包对中文进行分词处理。扫描数据,并获得关键词。

s204、根据所述关键词,建立所述关键词的倒排索引;

根据系统对关键字段的定义,对关键索引字段和中文字段及域值字段建立索引。其中,将字段定义为:字段名称、字段中文名称、类型、分词方法、是否为数组、地图关键字段。其中,源数据的列与搜索引擎的字段关系定义,即在源数据的列和全文搜索引擎的字段之间建立一对一的映射、转换关系。

s205、接收输入的待检索信息;

s206、根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果;

本实施例中步骤s205-步骤s206的实现方式与上一实施例中步骤s101-s102的实现方式类似,此处不再赘述。

s207、基于web页面显示所述检索结果或基于webgis的gis显示所述检索结果。

web页面的文字展现:主要展现根据用户输入的内容,从全文搜索引擎搜索到的数据信息进行列表展现,点击相应列表栏,则系统从全文搜索引擎中查询详细数据,将数据在信息的详细页面进行展示,信息内容种类主要包括:农户信息、家庭信息、组织信息、承包经营权证书、流转合同、过程等信息,展示方式上,支持部分信息合并在一个页面进行展示,也支持采用超链接方式进行关联展示。

基于webgis的gis展现:基于webgis上对数据进行展现,不仅支持展示地图显示范围内的单条信息,也支持对省、市、县的综合统计类信息进行展示。

由上可见,本发明实施例在接收到用户输入的待检索信息后,根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。由于全文搜索引擎的数据是存储在内存中的,且数据的索引结构是倒排索引,能够实现快速检索,提高了检索效率,且能够满足高并发的数据检索场景下对检索效率的需求。

对应上述实施例一和实施例二公开的基于全文搜索引擎的数据检索方法,本发明还提供了一种基于全文搜索引擎的数据检索装置,参见图3,所述数据检索装置包括:

接收单元301和检索单元302;

接收单元301,用于接收输入的待检索信息;

检索单元302,用于根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。

由上可见,本发明实施例在接收到用户输入的待检索信息后,根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。由于全文搜索引擎的数据是存储在内存中的,且数据的索引结构是倒排索引,能够实现快速检索,提高了检索效率,且能够满足高并发的数据检索场景下对检索效率的需求。

本发明还提供了另一种基于全文搜索引擎的数据检索装置,参见图4,所述数据检索装置包括:

接收单元301、检索单元302、第一获取单元403、导入单元404、第二获取单元405、建立单元406、判断单元407和显示单元408;

接收单元301,用于接收输入的待检索信息;

检索单元302,用于根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果;

第一获取单元403,用于获取存储有源数据的数据库;其中,所述数据库中以数据表的形式存储源数据;

导入单元404,用于对获取到的所述数据库处理后,导入所述全文搜索引擎;

可选地,导入单元404具体为:根据所述数据库中的源数据表和全文搜索引擎的类型之间的转换关系,采用多线程技术,将所述源数据存储到全文搜索引擎中。

第二获取单元405,用于根据所述全文搜索引擎,扫描导入的数据库,获得关键词;

建立单元406,用于根据所述关键词,建立所述关键词的倒排索引;

判断单元407,用于判断是否存在新增加的源数据;

在判断单元407判断存在新增加的源数据时,调用导入单元404,以将所述新增加的源数据导入所述全文搜索引擎;

显示单元408,用于基于web页面显示所述检索结果或基于webgis的gis显示所述检索结果。

由上可见,本发明实施例在接收到用户输入的待检索信息后,根据所述待检索信息,在预先建立的倒排索引中查找与所述待检索信息匹配的检索结果。由于全文搜索引擎的数据是存储在内存中的,且数据的索引结构是倒排索引,能够实现快速检索,提高了检索效率,且能够满足高并发的数据检索场景下对检索效率的需求。

需要说明的是,本说明书中各个实施例可相互补充,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

另外,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1