一种Migo搜索引擎的制作方法

文档序号:15399808发布日期:2018-09-11 17:13阅读:402来源:国知局

本发明涉及搜索引擎改进,特别是一种Migo搜索引擎。



背景技术:

公安信息在情报的应用主要基于大数据的实时分析和处理,而目前大部分公安系统使用的仍是以长驻磁盘的传统数据库,随着数据的增长和规模化应用,传统的数据库已达到了维持系统高效运转的瓶颈,在服务器配置有限的情况下,Oracle数据库在数十亿数据量中检索效率低下;数据维护困难复杂,当数据字段发生变化,数据与数据之间原有的关系代码无法适用,需要重新调整代码,成本高,且不利于维护。



技术实现要素:

本发明的目的是为了解决上述问题,设计了一种Migo搜索引擎。

实现上述目的本发明的技术方案为,一种Migo搜索引擎,包括,

索引数据库,用于储存数据索引信息,供搜索引擎使用;

全文检索模块,利用Key-Value的格式分别对词与行ID集合的存储,Value中只存储锚点信息,锚点信息标识ID集的开始位置与结始位置,对检索的关键字进行判断是否能分词,若可以分词,则将关键词分开进行检索,若不能分词,则直接检索;

精确检索模块,用于应用到批量比对,无需分词;

时空分析模块,用于通过把时间的粒度大小和空间的广度进行预设,再通过聚合索引分析出人的同行关系,以此分析与主体对象的伴随关系;

关系扩展模块,用于提供标识对象的功能,当两个对象在同一条记录中,则认为可建立关系。

作为优选,所述全文检索模块,利用Key-Value的格式分别对词与行ID集合的存储,Value中只存储锚点信息,锚点信息标识ID集的开始位置与结始位置,对检索的关键字进行判断是否能分词,若可以分词,则将关键词分开进行检索,若不能分词,则直接检索,其具体为,系统会根据词表对检索的关键字进行判断是否能分词,判断该关键字能否分词,若可以分词,则根据分词的个数各自进行操作,通过索引块数据表读取字节流,取得行号,再回到数据锚点表,查对应的字节流位置,并将各个分词的搜索结果进行交集从数据明细表中获取详细记录;若未取到行号,则停止操作。

作为优选,所述时空分析模块根据人员对时间的粒度大小和空间的分布进行关联。

作为优选,所述关系扩展模块用于提供标识对象的功能,当两个对象在同一条记录中,则认为可建立关系,其具体为,输入对象,系统根据精确索引的方式检索出所有相关的详细记录;在记录中提取标识对象,则该对象与主体对象存在关联。

作为优选,所述关系扩展模块通过两个对象分别进行关联扩展,再对各自分析关联的标识对象进行交集,从而扩线分析两者之间存在关联关系的层数。

一种应用于Migo搜索引擎的搜索方法,该方法包括,

步骤一:全文检索,判断输入的关键词是否能分词,并将分离后的关键词分别进行检索,并对检索结果进行交集,显示交集后的详细记录,

步骤二:精确检索,对输入的关键词进行检索,并输出检索结果;

步骤三:时空分析,将时间的粒度大小和空间的广度进行预设,再通过聚合索引分析出人的同行关系,以此分析与主体对象的伴随关系;

步骤四:关系扩展,提供标识对象的功能,当两个对象在同一条记录中,则认为可建立关系或者可以通过两个对象分别进行关联扩展,再对各自分析关联的标识对象进行交集,从而扩线分析两者之间存在关联关系的层数。

作为优选,所述关系扩展步骤中,在记录中提取标识对象为证件号、车牌、手机号码或地址,则该对象与主体对象存在关联。

利用本发明的技术方案制作的Migo搜索引擎,基于内存库技术的Migo搜索引擎,在相同服务器配置的前提下,使用Migo搜索引擎对数据数据进行数据关联、快速检索等应用,大大减少了服务器的成本,检索效率更快,分析应用更高效的低成本内存数据库;数据维护应用更简单,当数据有变更,有新需求时,用户只需要简单操作即可实现,而不需要等待专业的数据库人员才能进行。作下即可掌握,不需要专业的数据分类中数据关系管理更便捷,当需要新增新关系或修改关系时,无需重新导数据,只需简单调整数据属性即可解决。

附图说明

图1是本发明所述Migo搜索引擎的实施例二的逻辑框图;

具体实施方式

下面结合附图对本发明进行具体描述,一种Migo搜索引擎,包括,

索引数据库1,用于储存数据索引信息,供搜索引擎使用;

全文检索模块2,利用Key-Value的格式分别对词与行ID集合的存储,Value中只存储锚点信息,锚点信息标识ID集的开始位置与结始位置,对检索的关键字进行判断是否能分词,若可以分词,则将关键词分开进行检索,若不能分词,则直接检索;

精确检索模块3,用于应用到批量比对,无需分词;

时空分析模块4,用于通过把时间的粒度大小和空间的广度进行预设,再通过聚合索引分析出人的同行关系,以此分析与主体对象的伴随关系;

关系扩展模块5,用于提供标识对象的功能,当两个对象在同一条记录中,则认为可建立关系。

全文检索模块6,利用Key-Value的格式分别对词与行ID集合的存储,Value中只存储锚点信息,锚点信息标识ID集的开始位置与结始位置,对检索的关键字进行判断是否能分词,若可以分词,则将关键词分开进行检索,若不能分词,则直接检索,其具体为,系统会根据词表对检索的关键字进行判断是否能分词,判断该关键字能否分词,若可以分词,则根据分词的个数各自进行操作,通过索引块数据表读取字节流,取得行号,再回到数据锚点表,查对应的字节流位置,并将各个分词的搜索结果进行交集从数据明细表中获取详细记录;若未取到行号,则停止操作。

时空分析模块4根据人员对时间的粒度大小和空间的分布进行关联。

关系扩展模块5用于提供标识对象的功能,当两个对象在同一条记录中,则认为可建立关系,其具体为,输入对象,系统根据精确索引的方式检索出所有相关的详细记录;在记录中提取标识对象,则该对象与主体对象存在关联。

关系扩展模块5通过两个对象分别进行关联扩展,再对各自分析关联的标识对象进行交集,从而扩线分析两者之间存在关联关系的层数。

一种应用于Migo搜索引擎的搜索方法,该方法包括,

步骤一:全文检索,判断输入的关键词是否能分词,并将分离后的关键词分别进行检索,并对检索结果进行交集,显示交集后的详细记录,

步骤二:精确检索,对输入的关键词进行检索,并输出检索结果;

步骤三:时空分析,将时间的粒度大小和空间的广度进行预设,再通过聚合索引分析出人的同行关系,以此分析与主体对象的伴随关系;

步骤四:关系扩展,提供标识对象的功能,当两个对象在同一条记录中,则认为可建立关系或者可以通过两个对象分别进行关联扩展,再对各自分析关联的标识对象进行交集,从而扩线分析两者之间存在关联关系的层数。

关系扩展步骤中,在记录中提取标识对象为证件号、车牌、手机号码或地址,则该对象与主体对象存在关联。

实施例一:

Migo搜索引擎的全文索引基于词表进行分词,目前词表中共有8千万个词,包括全国名录、地址库、常用词和所有中文字等等。在索引建立过程中,利用Key-Value的格式分别对词与行ID集合的存储。由于行ID集合(Value)占用空间非常大,所以Value的内容是存储在磁盘中,Value中只存储锚点信息,锚点信息标识ID集的开始位置与结始位置,从而大大节省内存空间,首先系统会根据词表对检索的关键字进行判断是否能分词,比如检索“珠海市新德汇”,根据词表判断关键字能否分词;

判断该关键字能否分词:把这个词分成“珠海市”和“新德汇”;

然后根据分词的个数各自进行操作。在哈希表中分别定位“珠海市”、“新德汇”的键,取出键值,如“新德汇”的键值为[312,364](以下以单个词进行检索为例讲解);

通过索引块数据表,读取从位置在312至364的字节流,字节数组转换成N个行号,假设转换成[4,7,8]。

再回到数据锚点表,查找第4行、第7行、第8行所对应的字节流位置,从而从数据明细表中获取详细记录。

当没有取到行号,停止操作;

当取到行号后再把“珠海市”、“新德汇”的结果进行交集,显示交集后的详细记录。

精确检索:精确索引相对于全文索引的逻辑判断相似,区别在于不需要分词,大大减少关键词占用的内存空间。

时空分析:输入人员的证件号,设置同行的时间范围;

系统根据人员对时间的粒度大小和空间的分布进行关联,判断该人员在哪个时间内在哪个酒店入住过或在乘坐过哪个航班;

然后根据这些酒店和航班再查出在相同时间内有哪些人员同时住过该酒店或乘坐过该航班。

关系扩展:

输入对象,系统根据精确索引的方式检索出所有相关的详细记录;

在记录中提取标识对象,一般是证件号、车牌、手机号码、地址等,则该对象与主体对象存在关联;

另外可以通过两个对象分别进行关联扩展,再对各自分析关联的标识对象进行交集,从而扩线分析两者之间存在几层关联关系;

实施例二:

如图1所示,

一种应用于Migo搜索引擎的搜索方法,该方法包括,

在步骤S01中,输入关键词;

在步骤S02中,进行全文检索,判断输入的关键词是否能分词,并将分离后的关键词分别进行检索,并对检索结果进行交集,显示交集后的详细记录,

在步骤S03中,进行精确检索,对输入的关键词进行检索,并输出检索结果;

在步骤S04中,进行时空分析,将时间的粒度大小和空间的广度进行预设,再通过聚合索引分析出人的同行关系,以此分析与主体对象的伴随关系;

在步骤S05中,进行关系扩展,提供标识对象的功能,当两个对象在同一条记录中,则认为可建立关系或者可以通过两个对象分别进行关联扩展,再对各自分析关联的标识对象进行交集,从而扩线分析两者之间存在关联关系的层数;

在步骤S06中,进行其他检索;

在步骤S07中,将根据S02-SO6的搜索方法的搜索结果进行显示。

在步骤S08中,结束搜索。

上述技术方案仅体现了本发明技术方案的优选技术方案,本技术领域的技术人员对其中某些部分所可能做出的一些变动均体现了本发明的原理,属于本发明的保护范围之内。

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