CN113553491A - 一种基于倒排索引的工业大数据搜索优化方法 - Google Patents
一种基于倒排索引的工业大数据搜索优化方法 Download PDFInfo
- Publication number
- CN113553491A CN113553491A CN202110715972.9A CN202110715972A CN113553491A CN 113553491 A CN113553491 A CN 113553491A CN 202110715972 A CN202110715972 A CN 202110715972A CN 113553491 A CN113553491 A CN 113553491A
- Authority
- CN
- China
- Prior art keywords
- inverted index
- industrial
- search
- index
- document
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000005457 optimization Methods 0.000 title claims abstract description 28
- 238000003860 storage Methods 0.000 claims abstract description 13
- 230000011218 segmentation Effects 0.000 claims abstract description 7
- 230000008569 process Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 239000013589 supplement Substances 0.000 abstract description 4
- 238000012544 monitoring process Methods 0.000 description 11
- 238000012360 testing method Methods 0.000 description 11
- 238000004458 analytical method Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 238000011160 research Methods 0.000 description 5
- 230000007547 defect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000009776 industrial production Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/319—Inverted lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于检索技术领域,公开了一种基于倒排索引的工业大数据搜索优化方法,基于倒排索引的工业大数据搜索优化方法包括:建七个工业文档,利用默认分词器将文档切分成多个单词序列,所有的单词序列形成单词数据流;对不同的单词编号,并记录所述单词的存储文档,得到基础倒排索引;在基础倒排索引的基础上,记录不同单词在文档中出现的次数即单词信息频率,得到二级倒排索引;在基础倒排索引或二级倒排索引的基础上,记录单词在每个文档中出现的具体位置信息,得到三级倒排索引。本发明能够直接减少分析人员在数据检索的时间,同时还能够在搜索专业术语有误的情况下提供对专业书籍检索结果的补充。
Description
技术领域
本发明属于检索技术领域,尤其涉及一种基于倒排索引的工业大数据搜索优化方法。
背景技术
目前:近年来随着国家对工业互联网发展愈发重视,各工业相关企业的工业数据量连年增加,如何帮助分析人员从茫茫工业数据中快速准确寻找到工业数据成为随之而来新的挑战。目前,大多数企业的工业数据搜索系统仍基于关系型数据库的搜索机制,过多的检索请求经常导致数据库无法及时响应,也无法合理的推荐工业数据。工业数据主要来源于机器设备数据、工业信息化数据和产业链相关数据,众多的数据来源使工业相关企业监测系统采集数据呈指数级增长。
据调研,某工业数据监控系统3个月内获取监测数据的总量已达到200GB,按此计算,1年监测数据量为0.8TB,以服役期10年算,总存储量可达8TB。数据体量的增长速度远超计算机性能的增长,使系统响应速度达到分钟级别,但数据监控系统的查询响应时间应控制在百毫秒级。海量监测数据一方面增加了系统的维护工作量,另一方面使传统数据存取方式产生越来越大的延迟,千万级以上的工业监测数据查询响应慢易造成调度界面卡屏,影响调度信息的实时处理,严重时甚至可能导致关键故障信息的迟报、漏报甚至丢失,威胁工业生产安全。因此,迫切需要研究工业生产监测系统的高效查询响应。
通过上述分析,现有技术存在的问题及缺陷为:当前工业数据检索方法存在的检索效率低、检索过程安全性低、准确性差。
解决以上问题及缺陷的难度为:由于数据采集方式多样、数据种类繁多、业务场景复杂,在针对具体工业问题分析时,无法快速搜索出对应业务场景下的数据,但目前市场上的搜索引擎还没有完全具备工业专业搜索的能力,更无法检索过程的安全性准确性。由于数据量大,数据来源多等特点,普通搜索引擎的工业大数据检索能力低下,对搜索引擎的改造技术支撑较少,均为解决此问题及缺陷的难度。
解决以上问题及缺陷的意义为:解决工业中存在的大数据搜索相关问题。可帮助工业分析人员使用相关大数据分析平台快速完成工业大数据的搜索、分析和设备监控等操作,进而满足工业互联网大数据搜索的效率要求,分析的精度要求,设备的监控要求,从而推动工业互联网的发展。
发明内容
针对现有技术存在的问题,本发明提供了一种基于倒排索引的工业大数据搜索优化方法。
本发明是这样实现的,一种基于倒排索引的工业大数据搜索优化方法,所述基于倒排索引的工业大数据搜索优化方法包括:
构建七个工业文档,通过对所述七个工业文档组成的文档集合构建倒排索引将搜索关键词与文档完成映射,进行搜索优化。
进一步,所述工业文档包含文档的标号id以及文档内容。
进一步,所述基于倒排索引的工业大数据搜索优化方法包括以下步骤:
步骤一,构建七个工业文档,利用默认分词器将文档切分成多个单词序列,所有的单词序列形成单词数据流;
步骤二,对不同的单词编号,并记录所述单词的存储文档,得到基础倒排索引;
步骤三,在基础倒排索引的基础上,记录不同单词在文档中出现的次数即单词信息频率,得到二级倒排索引;
步骤四,在基础倒排索引或二级倒排索引的基础上,记录单词在每个文档中出现的具体位置信息,得到三级倒排索引。
本发明的另一目的在于提供一种利用所述基于倒排索引的工业大数据搜索优化方法优化的基于倒排索引的工业大数据搜索引擎。
本发明的另一目的在于提供利用所述基于倒排索引的工业大数据搜索引擎实现的基于倒排索引的工业大数据搜索方法,所述基于倒排索引的工业大数据搜索方法包括:
(1)进行倒排索引优化,当检索关键词为文档编号时,则调用SQL查询语句从数据库中获取对应记录即可得到检索结果;
(2)当检索关键词为专业名词或其他模糊关键词时,则生成普通检索对象;
(3)对优化后的倒排索引文档进行检索,判断是否存在检索结果;
(4)若存在则对检索结果进行打分,并基于打分结果进行排序输出;
(5)若不存在,则生产模糊检索对象,返回步骤(3)进行模糊检索。
进一步,所述进行倒排索引包括:
步骤一,确定对工业数据表中所有字段的处理方式;确定倒排索引文件存储的位置,创建索引写入器;
步骤二,与数据库建立连接,获取工业数据表访问对象;遍历工业数据表,向新创建的索引文件中添加文档对象为文档对象添加域,并为域赋值;
步骤四,对倒排索引文档进行优化并在写入完成之后关闭并释放资源。
进一步,所述工业数据表中所有字段的处理方式包括:
当采用是文件名称、文件简介字段作为检索条件时,进行文件名称、文件简介字段的分析和存储;
当采用种类、创建时间作为检索条件时,进行字段存储;
当采用文件路径和文件大小作为检索条件时,利用关系型数据库的查询语言获得相关记录,对文件路径和文件大小两个字段仅进行存储;
当采用文件id字段作为检索条件时,将所述字段存储索引中;
当获取文件检索次数时,对字段不进行存储或分析处理。
进一步,所述在创建索引写入器之前还需进行:
为索引写入器指定一个分析器;所述分析器用于索引词汇化的域,将文本转换为词汇单元。
进一步,所述转换处理包括:提取关键词、去除标点符号、将英文字母全部转换为小写、去除对检索操作无意义的常用词。
进一步,所述域值来源于工业数据表中相应字段的值。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明能够直接减少分析人员在数据检索的时间,同时还能够在搜索专业术语有误的情况下提供对专业书籍检索结果的补充。本发明采用的是技术优化与实例直接相结合进行描述,构建文档可以不为七个,七个文档是实际技术优化过程的实例。七个文档的具体构建可以放在实力过程中,前面阐述方法可以将过程描述为构建文档,切分单词序列,形成数据流,实现初级、二级、三级倒排索引,映射单词数据流为三级倒排索引等。
本发明通过对工业大数据搜索的优化,改变索引的底层结构为倒排索引,由于倒排索引可以较好的契合工业大数据数据量大,数据复杂等特点,因此在搜索过程中能够直接减少工业分析人员在数据检索的时间,快速获取分析所需数据,达到百万数据集毫秒单位时间的搜索结果,同时还能够在搜索专业术语有误的情况下提供对专业书籍检索结果的补充。
附图说明
图1是本发明实施例提供的基于倒排索引的工业大数据搜索优化方法流程图。
图2是本发明实施例提供的检索方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种基于倒排索引的工业大数据搜索优化方法,下面结合附图对本发明作详细的描述。
本发明实施例提供的基于倒排索引的工业大数据搜索优化方法包括:
构建七个工业文档,通过对所述七个工业文档组成的文档集合构建倒排索引将搜索关键词与文档完成映射,进行搜索优化。
本发明实施例提供的工业文档包含文档的标号id以及文档内容。
如图1所示,本发明实施例提供的基于倒排索引的工业大数据搜索优化方法包括以下步骤:
S101,构建七个工业文档,利用默认分词器将文档切分成多个单词序列,所有的单词序列形成单词数据流;
S102,对不同的单词编号,并记录所述单词的存储文档,得到基础倒排索引;
S103,在基础倒排索引的基础上,记录不同单词在文档中出现的次数即单词信息频率,得到二级倒排索引;
S104,在基础倒排索引或二级倒排索引的基础上,记录单词在每个文档中出现的具体位置信息,得到三级倒排索引。
本发明实施例提供的基于倒排索引的工业大数据搜索方法包括:
(1)进行倒排索引优化,当检索关键词为文档编号时,则调用SQL查询语句从数据库中获取对应记录即可得到检索结果;
(2)当检索关键词为专业名词或其他模糊关键词时,则生成普通检索对象;
(3)对优化后的倒排索引文档进行检索,判断是否存在检索结果;
(4)若存在则对检索结果进行打分,并基于打分结果进行排序输出;
(5)若不存在,则生产模糊检索对象,返回步骤(3)进行模糊检索。
本发明实施例提供的进行倒排索引包括:
步骤一,确定对工业数据表中所有字段的处理方式;确定倒排索引文件存储的位置,创建索引写入器;
步骤二,与数据库建立连接,获取工业数据表访问对象;遍历工业数据表,向新创建的索引文件中添加文档对象为文档对象添加域,并为域赋值;
步骤四,对倒排索引文档进行优化并在写入完成之后关闭并释放资源。
本发明实施例提供的工业数据表中所有字段的处理方式包括:
当采用是文件名称、文件简介字段作为检索条件时,进行文件名称、文件简介字段的分析和存储;
当采用种类、创建时间作为检索条件时,进行字段存储;
当采用文件路径和文件大小作为检索条件时,利用关系型数据库的查询语言获得相关记录,对文件路径和文件大小两个字段仅进行存储;
当采用文件id字段作为检索条件时,将所述字段存储索引中;
当获取文件检索次数时,对字段不进行存储或分析处理。
本发明实施例提供的在创建索引写入器之前还需进行:
为索引写入器指定一个分析器;所述分析器用于索引词汇化的域,将文本转换为词汇单元。
本发明实施例提供的转换处理包括:提取关键词、去除标点符号、将英文字母全部转换为小写、去除对检索操作无意义的常用词。
本发明实施例提供的域值来源于工业数据表中相应字段的值。
下面结合具体实施例对本发明的技术方案做进一步说明。
1、倒排索引技术研究
倒排索引,一般也可称作反向索引,倒排索引记录单词存在于哪些文档之中,并记录其映射关系,倒排索引数据结构对于文档的检索十分友好。利用倒排索引,可通过单词查找到包含这个单词的所有文档。倒排索引的构成包含“倒排文件”与“单词词典”两部分。倒排索引不是根据文件来确定有哪些单词,而是根据保存单词的属性与指针来确定文件的位置。倒排索引有着广泛的应用场景,例如数据搜索引擎、文档检索、数据库索引、多媒体检索和信息检索等。根据正向索引的原理,检索过程需要将库中的全部文档进行扫描,才能得到全部含有检索关键词的文档。当搜索引擎索引库中的文档数量较大时,正向索引在时间和空间方面都将导致搜索效率的低下。为了提升搜索效率,可以为每个关键词建立一个索引项,记录哪些文档中含有该关键词,并将其整理成文档列表,关键词在该文档中存在的位置被定义为反向索引,更多地被称为倒排索引,每一条索引项则称为一个倒排项。
2、基于倒排索引的工业大数据搜索引擎优化方法
由于工业互联网的数据量级庞大,若使用常规的模糊查询,由于前置配置等原因,会无法使用索引,导致工业大数据的搜索查询是全表扫描,在百万千万级别的工业数据库中,检索效率将非常低下,因此本发明利用倒排索引的机制完成工业大数据搜索引擎的优化。一些底层利用倒排索引机制的搜索服务器在互联网行业十分火热,例如,Lucene是一个开源的全文检索引擎架构,Lucene的索引、查询和文本分析均依靠倒排索引机制。Solr是一款全文搜索服务器,其底层也用到了倒排索引,Solr拥有可配置、可扩展等功能,并配备了具体的功能管理界面。Elasticsearch是基于Lucene开发的搜索引擎,底层原理也利用了倒排索引机制,Elasticsearch是一种具备实时分析功能的分布式搜索引擎,并且支持百台服务器动态扩展,可以实现工业中PB级别的结构化或非结构化数据的查询。本发明将以Elasticsearch为载体,研究基于倒排索引机制的工业大数据搜索引擎优化方法,将查询的工业数据的某些字段,如工业产品名,设备实参、工况描述,设备参数以及id这些字段放入索引库里,构建对应倒排表,从而可以提高查询效率。
在大数据搜索中,如果仅存在正向的索引,则需要扫描索引库全部文档后,再找出含有搜索关键词的文档,并根据相关的打分模型进行排序,完成搜索。由于工业互联网搜索引擎中的文档量级十分庞大,故使用倒排索引将搜索关键词与文档完成映射。一个关键词对应多个包含该关键词的文档,关键词与文档之间的映射关系是一对多。为了实现倒排索引机制,构建七个工业文档,包含文档的标号id以及文档内容。需实现对这个文档集合构建倒排索引。
首先需用默认分词器将文档切分成多个单词序列,合适的分词器可以更智能的完成分词,更智能的分词将构建更好的索引结构(分词器的优化研究放在下节,本发明使用默认分词器进行分词,以便完成倒排索引结构)。每个文档均拆分为多个单词,所有的单词形成单词数据流,接下来对不同的单词编号,并记录这个单词存在于哪些文档中,即可得到简单的倒排索引,“单词id”记录了单词的序号,单词序号对应单词具体内容,最后展示了所有单词对应的倒排列表。单词“工业”的单词序号为1,对应的倒排列表为{1,2,3,4,5,7},说明文档1,文档2,文档3,文档4,文档5,文档7中都包含了单词“工业”,单词“可靠性”对应的单词序号为25,对应的倒排表为{7},说明仅有文档7包含了单词“可靠性”。
上述简易工业倒排索引结构并不复杂,这个倒排索引仅记录了每个单词存在于哪些文档之中,但倒排索引结构还可记录单词频率等信息。单词信息频率在查找过程中也是很重要的因素,单词信息频率是单词在文档中出现的次数,当需要对搜索出的所有结果进行排序时,可根据单词信息频率计算出查询结果和文档的匹配程度,根据匹配程度大小完成排序展示,为相对复杂的倒排索引,单词的频率信息也被记录到倒排列表中。单词“工业”的编号为1,对应的倒排列表内容为:(1;1),(2;1),(3;1),(4;1),(5;1),(7;1)其中1,2,3,4,5,7代表文档1,文档2,文档3,文档4,文档5,文档7均包含“工业”这个单词,数字1为词频信息,即这个单词在文档1,文档2,文档3,文档4,文档5,文档7中只出现过1次。单词“铸造”的单词编号为16,对应的倒排列表内容为:(6;2),(7;1)其中6,7代表文档6,文档7均包含“铸造”这个单词,数字2,1代表词频信息,即这个单词“铸造”在文档6出现过2次,文档7出现过1次。
上述简易工业倒排索引结构并不复杂,这个倒排索引仅记录了每个单词存在于哪些文档之中,但倒排索引结构还可记录单词频率等信息。单词信息频率在查找过程中也是很重要的因素,单词信息频率是单词在文档中出现的次数,当需要对搜索出的所有结果进行排序时,可根据单词信息频率计算出查询结果和文档的匹配程度,根据匹配程度大小完成排序展示,为相对复杂的倒排索引,单词的频率信息也被记录到倒排列表中。单词“工业”的编号为1,对应的倒排列表内容为:(1;1),(2;1),(3;1),(4;1),(5;1),(7;1)其中1,2,3,4,5,7代表文档1,文档2,文档3,文档4,文档5,文档7均包含“工业”这个单词,数字1为词频信息,即这个单词在文档1,文档2,文档3,文档4,文档5,文档7中只出现过1次。单词“铸造”的单词编号为16,对应的倒排列表内容为:(6;2),(7;1)其中6,7代表文档6,文档7均包含“铸造”这个单词,数字2,1代表词频信息,即这个单词“铸造”在文档6出现过2次,文档7出现过1次。
3、基于倒排索引的工业大数据搜索引擎设计与实现
当前工业管理系统基本都是基于关系型数据库开发的,数据库系统本身比较稳定可靠,且已经存储了大量工业数据资源,固在设计过程中并没有对现有系统进行重新设计,而使用现有系统的数据库作为索引数据来源,使用elasticsearch-5.6.8框架实现基于倒排索引的检索功能。
倒排索引的创建是系统检索的核心,需要使用现有工业监控管理系统的数据库作为索引数据的来源。工业数据表是此数据库中最重要的一张表,它存储了所有数据的详细信息,以常见的工业数据文件存储系统为例,此表一般包含了以下字段:文件id、文件种类(file_kind)、文件名称(file_name)、文件简介(file_intro)、文件路径(file_path)、文件大小(file_path)、文件创建时间(file_time)、文件检索次数(file_search)、文件编号(file_number)等。创建倒排索引之前需要确定对工业数据表中所有字段的正确处理方式,这些字段在检索过程中意义不同,所以分五种方式进行处理:一是文件名称、文件简介等字段作为分析人员最常用的检索条件,文字较多语义复杂,因此必须分析和存储。二是种类、创建时间等可作为分析用户的检索条件,但是内容没有特殊语义,因此以上字段只须存储无须分析。三是文件路径和文件大小属于精确检索项,使用关系型数据库的查询语言就可以轻易获得相关记录,对这两个字段只存储不分析,存储从而减少对SQL数据库的访问。四是文件id字段是工业数据表中每一条记录的唯一标识,不属于检索条件,但是为了提高从数据库中查询id所对应记录的效率,此字段应存储于索引中,但是无须分析。五是文件检索次数不属于检索条件,并且随时间的推移其数值不断在增加,因此此字段不适合存储和分析。在明确了对数据源字段的处理方式后,实现流程如下:
第一步,确定倒排索引文件存储的位置,创建索引写入器(IndexWriter),准备进行索引文件的写入。在创建IndexWriter之前需为其指定一个分析器(Analyzer),分析器被用来索引词汇化的域,可将文本转换为词汇单元,转换操作包括提取关键词、去除标点符号、将英文字母全部转换为小写、去除对检索操作无意义的常用词等。
第二步,与数据库建立连接,获取工业数据表访问对象。遍历工业数据表,向新创建的索引文件中添加文档对象为文档对象添加域,并为域赋值,域值来源于工业数据表中相应字段的值。
第三步,对倒排索引文档进行优化并在写入完成之后关闭并释放资源。
具体检索流程,可根据分析人员不同的检索情况进行分类,第一种情况,如果在搜索过程中,分析人员了解数据的具体信息,比如文档编号等,则可直接调用SQL查询语句从数据库中获取对应记录即可得到准确的结果;第二种情况,分析人员知道准确的专业名词,并且希望检索相关数据,那么可以采用普通搜索,以专业名词为参数对倒排索引中的文件名称、文件简介等进行检索,从而得到相对准确的结果;第三种情况,分析人员对一些专业名词只有模糊的记忆,因此采用常用采用模糊检索以得到近似的结果。精确检索可直接去数据库查询,本发明主要对后两种检索模式的实现流程做详细分析,检索流程如图2所示。
4、实例验证
对关键词进行全文检索主要有两种方式:现有数据库的like子句查询和倒排索引检索。为了测试两种检索方式性能的差异,选取相同硬件平台,CPU:Intel-CoreTM i5-4590@3.30GHz;四核;内存:8GB,DDR。以及一个包含20万条工业数据表的数据库,并对其进行倒排索引的创建,分别对大量不同的关键词和检索条件进行检索,反复测试后取平均值。数据库like查询对不同关键词的检索时间差异不大,经过统计大约是1500ms,数据库like查询会导致全表扫描,因此当数据量较大的时候,性能较差。而本系统检索过程中对关键词比较敏感,不同关键词造成检索时间差异非常大,从用时最短的200ms,到最长的832ms,多次测试后取平均值约500ms。此外,通过测试发现倒排索引的检索用时与返回结果集的大小密切相关,返回结果集较小时用时非常短,一旦返回结果集增大,耗时将大幅上升。以上测试结果表明运用倒排索引能极大提升检索效率。
从查全率进行测试,故意拼错一些专业词汇。例如,本应检索关键词“temperature”,改为输入“tmperature”,数据库like查询检索结果为零,而利用倒排索引结果为92条数据。其它错误关键词检索测试都能得到类似的结果。证明当关键词拼写错误时倒排索引结构仍然可为分析人员提供有意义的检索结果。
本发明对倒排索引检索技术进行了研究,并研究了基于倒排索引的工业大数据搜索引擎优化方法,在此基础上对工业数据检索的特点进行分析并实现了倒排索引结构。该结构建于现有数据库系统基础之上,它能够直接减少分析人员在数据检索的时间,同时还能够在搜索专业术语有误的情况下提供对专业书籍检索结果的补充。
下面结合测试对本发明的技术效果作详细的描述。
为了测试倒排索引提升数据搜索效率的效果,采用对比结合的方法进行实验分析。
分别统计无优化情况下搜索时间、基于倒排索引情况下搜索时间、并针对相关情况截取了6个不同大小的文档数据集对搜索数据过程中的执行耗时进行测试。数据集如表1所示。
表1执行耗时测试数据集
针对不同的优化方案,以及不同的数据集大小,记录工业数据搜索的时间。进行参数调试,并记录运行时间,运行时间如表2所示。
表2数据搜索时间
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种基于倒排索引的工业大数据搜索优化方法,其特征在于,所述基于倒排索引的工业大数据搜索优化方法包括:构建七个工业文档,通过对所述七个工业文档组成的文档集合构建倒排索引将搜索关键词与文档完成映射,进行搜索优化。
2.如权利要求1所述基于倒排索引的工业大数据搜索优化方法,其特征在于,所述工业文档包含文档的标号id以及文档内容。
3.如权利要求1所述基于倒排索引的工业大数据搜索优化方法,其特征在于,所述基于倒排索引的工业大数据搜索优化方法包括以下步骤:
步骤一,构建七个工业文档,利用默认分词器将文档切分成多个单词序列,所有的单词序列形成单词数据流;
步骤二,对不同的单词编号,并记录所述单词的存储文档,得到基础倒排索引;
步骤三,在基础倒排索引的基础上,记录不同单词在文档中出现的次数即单词信息频率,得到二级倒排索引;
步骤四,在基础倒排索引或二级倒排索引的基础上,记录单词在每个文档中出现的具体位置信息,得到三级倒排索引。
4.一种利用如权利要求1-4任意一项所述基于倒排索引的工业大数据搜索优化方法优化的基于倒排索引的工业大数据搜索引擎。
5.一种利用如权利要求4所述基于倒排索引的工业大数据搜索引擎实现的基于倒排索引的工业大数据搜索方法,其特征在于,所述基于倒排索引的工业大数据搜索方法包括:
(1)进行倒排索引优化,当检索关键词为文档编号时,则调用SQL查询语句从数据库中获取对应记录即可得到检索结果;
(2)当检索关键词为专业名词或其他模糊关键词时,则生成普通检索对象;
(3)对优化后的倒排索引文档进行检索,判断是否存在检索结果;
(4)若存在则对检索结果进行打分,并基于打分结果进行排序输出;
(5)若不存在,则生产模糊检索对象,返回步骤(3)进行模糊检索。
6.如权利要求5所述基于倒排索引的工业大数据搜索方法,其特征在于,所述进行倒排索引包括:
步骤一,确定对工业数据表中所有字段的处理方式;确定倒排索引文件存储的位置,创建索引写入器;
步骤二,与数据库建立连接,获取工业数据表访问对象;遍历工业数据表,向新创建的索引文件中添加文档对象为文档对象添加域,并为域赋值;
步骤四,对倒排索引文档进行优化并在写入完成之后关闭并释放资源。
7.如权利要求6所述基于倒排索引的工业大数据搜索方法,其特征在于,所述工业数据表中所有字段的处理方式包括:
当采用是文件名称、文件简介字段作为检索条件时,进行文件名称、文件简介字段的分析和存储;
当采用种类、创建时间作为检索条件时,进行字段存储;
当采用文件路径和文件大小作为检索条件时,利用关系型数据库的查询语言获得相关记录,对文件路径和文件大小两个字段仅进行存储;
当采用文件id字段作为检索条件时,将所述字段存储索引中;
当获取文件检索次数时,对字段不进行存储或分析处理。
8.如权利要求6所述基于倒排索引的工业大数据搜索方法,其特征在于,所述在创建索引写入器之前还需进行:
为索引写入器指定一个分析器;所述分析器用于索引词汇化的域,将文本转换为词汇单元。
9.如权利要求8所述基于倒排索引的工业大数据搜索方法,其特征在于,所述转换处理包括:提取关键词、去除标点符号、将英文字母全部转换为小写、去除对检索操作无意义的常用词。
10.如权利要求6所述基于倒排索引的工业大数据搜索方法,其特征在于,所述域值来源于工业数据表中相应字段的值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110715972.9A CN113553491A (zh) | 2021-06-25 | 2021-06-25 | 一种基于倒排索引的工业大数据搜索优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110715972.9A CN113553491A (zh) | 2021-06-25 | 2021-06-25 | 一种基于倒排索引的工业大数据搜索优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113553491A true CN113553491A (zh) | 2021-10-26 |
Family
ID=78130982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110715972.9A Pending CN113553491A (zh) | 2021-06-25 | 2021-06-25 | 一种基于倒排索引的工业大数据搜索优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113553491A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114443728A (zh) * | 2022-01-04 | 2022-05-06 | 广州粤建三和软件股份有限公司 | 一种基于Elasticsearch的检测报告搜索方法及装置 |
CN115934884A (zh) * | 2023-03-01 | 2023-04-07 | 成都字节流科技有限公司 | 一种医保目录药品快速对照方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110022600A1 (en) * | 2009-07-22 | 2011-01-27 | Ecole Polytechnique Federale De Lausanne Epfl | Method of data retrieval, and search engine using such a method |
WO2013098886A1 (ja) * | 2011-12-27 | 2013-07-04 | 三菱電機株式会社 | 検索装置 |
CN109284352A (zh) * | 2018-09-30 | 2019-01-29 | 哈尔滨工业大学 | 一种基于倒排索引的评估类文档不定长词句的查询方法 |
CN110019647A (zh) * | 2017-10-25 | 2019-07-16 | 华为技术有限公司 | 一种关键词搜索方法、装置和搜索引擎 |
-
2021
- 2021-06-25 CN CN202110715972.9A patent/CN113553491A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110022600A1 (en) * | 2009-07-22 | 2011-01-27 | Ecole Polytechnique Federale De Lausanne Epfl | Method of data retrieval, and search engine using such a method |
WO2013098886A1 (ja) * | 2011-12-27 | 2013-07-04 | 三菱電機株式会社 | 検索装置 |
CN110019647A (zh) * | 2017-10-25 | 2019-07-16 | 华为技术有限公司 | 一种关键词搜索方法、装置和搜索引擎 |
CN109284352A (zh) * | 2018-09-30 | 2019-01-29 | 哈尔滨工业大学 | 一种基于倒排索引的评估类文档不定长词句的查询方法 |
Non-Patent Citations (1)
Title |
---|
王丹阳: "《基于元数据的油气异构数据库查询与油气文档检索》", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114443728A (zh) * | 2022-01-04 | 2022-05-06 | 广州粤建三和软件股份有限公司 | 一种基于Elasticsearch的检测报告搜索方法及装置 |
CN115934884A (zh) * | 2023-03-01 | 2023-04-07 | 成都字节流科技有限公司 | 一种医保目录药品快速对照方法、装置、设备及存储介质 |
CN115934884B (zh) * | 2023-03-01 | 2023-05-16 | 成都字节流科技有限公司 | 一种医保目录药品快速对照方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10698977B1 (en) | System and methods for processing fuzzy expressions in search engines and for information extraction | |
AU2019263758B2 (en) | Systems and methods for generating a contextually and conversationally correct response to a query | |
US9569506B2 (en) | Uniform search, navigation and combination of heterogeneous data | |
Hoffart et al. | KORE: keyphrase overlap relatedness for entity disambiguation | |
US10558754B2 (en) | Method and system for automating training of named entity recognition in natural language processing | |
US9201931B2 (en) | Method for obtaining search suggestions from fuzzy score matching and population frequencies | |
US8346795B2 (en) | System and method for guiding entity-based searching | |
Cafarella et al. | Web-scale extraction of structured data | |
US9619571B2 (en) | Method for searching related entities through entity co-occurrence | |
US20070005344A1 (en) | Concept matching system | |
US20100235340A1 (en) | System and method for knowledge research | |
US10747795B2 (en) | Cognitive retrieve and rank search improvements using natural language for product attributes | |
US20130144872A1 (en) | Semantic and Contextual Searching of Knowledge Repositories | |
CN113553491A (zh) | 一种基于倒排索引的工业大数据搜索优化方法 | |
Francia et al. | A methodology for social BI | |
CN111680043A (zh) | 一种针对海量数据进行快速检索方法 | |
Kumar | Apache Solr search patterns | |
Liu et al. | Temporal knowledge extraction from large-scale text corpus | |
Sorrentino et al. | Schema normalization for improving schema matching | |
Ward et al. | Empath: A framework for evaluating entity-level sentiment analysis | |
CN115617965A (zh) | 一种语言结构大数据的快速检索方法 | |
Wang et al. | Scalable semantic querying of text | |
Thollot et al. | Text-to-query: dynamically building structured analytics to illustrate textual content | |
Yang et al. | Qualifier: question answering by lexical fabric and external resources | |
Golfarelli | Social Business Intelligence |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211026 |