CN115455147A - 一种全文检索方法及*** - Google Patents
一种全文检索方法及*** Download PDFInfo
- Publication number
- CN115455147A CN115455147A CN202211099777.9A CN202211099777A CN115455147A CN 115455147 A CN115455147 A CN 115455147A CN 202211099777 A CN202211099777 A CN 202211099777A CN 115455147 A CN115455147 A CN 115455147A
- Authority
- CN
- China
- Prior art keywords
- full
- text retrieval
- article
- text
- content
- 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 18
- 230000011218 segmentation Effects 0.000 claims abstract description 6
- 238000011161 development Methods 0.000 abstract description 2
- 230000018109 developmental process Effects 0.000 abstract description 2
- 238000012423 maintenance Methods 0.000 abstract description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 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/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
- G06F16/3344—Query execution using natural language analysis
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及大数据技术领域,具体提供了一种全文检索方法,具有如下步骤:S1、建立全文索引;S2、IKAnalyzer分词;S3、全文检索;S4、扩展词典。与现有技术相比,本发明利用IKAnalyzer分词和MySQL数据库自带的全文索引,实现一种轻量级的搜索引擎,用于支持“小网站”中“大字段”的全文检索,提升查询速度,同时降低这类网站的开发成本和运维成本。
Description
技术领域
本发明涉及大数据技术领域,具体提供一种全文检索方法及***。
背景技术
全文检索是指以全部文本信息作为检索对象的一种信息检索技术。目前很多网站都提供了全文检索功能,浏览者可以通过输入关键字或者短语来搜索特定的网页。
这些网页的格式和长度不固定,一般都是非结构化的数据,通常可以借助Elasticsearch或Solr等搜索引擎来实现全文检索。但在基于传统数据库(如Oracle、MySQL)搭建的网站中,一般只能通过模糊查询进行全文匹配,搜索速度非常慢,而且只支持精准匹配。
发明内容
本发明是针对上述现有技术的不足,提供一种实用性强的全文检索方法。
本发明进一步的技术任务是提供一种设计合理,安全适用的全文检索***。
本发明解决其技术问题所采用的技术方案是:
一种全文检索方法,具有如下步骤:
S1、建立全文索引;
S2、IKAnalyzer分词;
S3、全文检索;
S4、扩展词典。
进一步的,在步骤S1中,为文字标题字段建立全文索引来查找标题,同时为文章标题和文章内容字段建立联合索引来查找匹配的文章标题和内容。
进一步的,在步骤S2中,对中文、英文和数字之外的字符统一进行过滤,如果输入的关键词或短语长度超过15至25,则判定为精准查询,只查找匹配的文章标题,不查找匹配的文章内容;
如果用户输入的内容含有空白符,则自动进行分词,最后根据扩展词典对用户输入的关键词或短语进行分词,并存储到列表中。
进一步的,在步骤S3中,布尔模式会按照一定的规则解析搜索字符串中的特殊字符的含义,进行一些逻辑意义的规则。
进一步的,在步骤S4中,如果用户输入的关键词或短语查询不到结果,并且符合关键词格式,则加入到扩展词典。
一种全文检索***,首先建立全文索引,IKAnalyzer分词,然后进行全文检索,最后如果用户输入的关键词或短语查询不到结果,并且符合关键词格式,则加入到扩展词典。
进一步的,为文章标题字段建立全文索引查找匹配的文章标题,同时为文章标题和文章内容字段建立联合索引用于查找匹配的文章标题和内容。
进一步的,在IKAnalyzer分词中,对中文、英文和数字之外的字符统一进行过滤,如果输入的关键词或短语长度超过15至25,则判定为精准查询,只查找匹配的文章标题,不查找匹配的文章内容;
如果用户输入的内容含有空白符,则自动进行分词,最后根据扩展词典对用户输入的关键词或短语进行分词,并存储到列表中。
进一步的,在全文检索中,布尔模式会按照规则解析搜索字符串中的特殊字符的含义,进行一些逻辑意义的规则。
本发明的一种全文检索方法及***和现有技术相比,具有以下突出的有益效果:
本发明利用IKAnalyzer分词和MySQL数据库自带的全文索引,实现一种轻量级的搜索引擎,用于支持“小网站”中“大字段”的全文检索,提升查询速度,同时降低这类网站的开发成本和运维成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1是一种全文检索方法的流程示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
下面给出一个最佳实施例:
如图1所示,本实施例中的一种全文检索方法,具有如下步骤:
S1、建立全文索引;
为“文章标题”字段建立全文索引用于查找匹配的文章标题,同时为“文章标题”和“文章内容”字段建立联合索引用于查找匹配的文章标题和内容,具体语法如下:
ALTER TABLE article ADD FULLTEXT INDEX title_index(title)WITH PARSERngram;为“title”即字段建立全文索引。
ALTER TABLE article ADD FULLTEXT INDEX title_body_index(title,body)WITH PARSER ngram。为“title”和“body”即字段建立联合全文索引。
S2、IKAnalyzer分词;
为了避免特殊字符影响最终查询效果,***对中文、英文、数字之外的其他字符统一进行过滤。
如果输入的关键词或短语长度超过20,则判定为精准查询,只查找匹配的文章标题,不查找匹配的文章内容。如果用户输入的内容含有空白符,则自动进行分词。最后根据扩展词典对用户输入的关键词或短语进行分词,并存储到列表中。
S3、全文检索;
布尔模式会按照一定的规则解析搜索字符串中的特殊字符的含义,进行一些逻辑意义的规则。如:某个单词必须出现,或者不能出现等。为了限制查询结果数量,同时尽可能匹配所有分词,使用布尔模式进行查询,具体语法如下:
select*from article where match(title,body)against('+word1+word2+word3'in boolean mode)即查询article数据表中title和body字段中含有word1、word2、word3关键词的记录。
S4、扩展词典;
如果用户输入的关键词或短语查询不到结果,并且符合关键词格式,则加入到扩展词典。
基于上述方法,本实施例中的额一种全文检索***,首先建立全文索引,IKAnalyzer分词,然后进行全文检索,最后如果用户输入的关键词或短语查询不到结果,并且符合关键词格式,则加入到扩展词典。
为文章标题字段建立全文索引查找匹配的文章标题,同时为文章标题和文章内容字段建立联合索引用于查找匹配的文章标题和内容。
在IKAnalyzer分词中,对中文、英文和数字之外的字符统一进行过滤,如果输入的关键词或短语长度超过15至25,则判定为精准查询,只查找匹配的文章标题,不查找匹配的文章内容;
如果用户输入的内容含有空白符,则自动进行分词,最后根据扩展词典对用户输入的关键词或短语进行分词,并存储到列表中。
在全文检索中,布尔模式会按照规则解析搜索字符串中的特殊字符的含义,进行一些逻辑意义的规则。
上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的一种全文检索方法及***权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (9)
1.一种全文检索方法,其特征在于,具有如下步骤:
S1、建立全文索引;
S2、IKAnalyzer分词;
S3、全文检索;
S4、扩展词典。
2.根据权利要求1所述的一种全文检索方法,其特征在于,在步骤S1中,为文字标题字段建立全文索引来查找标题,同时为文章标题和文章内容字段建立联合索引来查找匹配的文章标题和内容。
3.根据权利要求2所述的一种全文检索方法,其特征在于,在步骤S2中,对中文、英文和数字之外的字符统一进行过滤,如果输入的关键词或短语长度超过15至25,则判定为精准查询,只查找匹配的文章标题,不查找匹配的文章内容;
如果用户输入的内容含有空白符,则自动进行分词,最后根据扩展词典对用户输入的关键词或短语进行分词,并存储到列表中。
4.根据权利要求3所述的一种全文检索方法,其特征在于,在步骤S3中,布尔模式会按照一定的规则解析搜索字符串中的特殊字符的含义,进行一些逻辑意义的规则。
5.根据权利要求4所述的一种全文检索方法,其特征在于,在步骤S4中,如果用户输入的关键词或短语查询不到结果,并且符合关键词格式,则加入到扩展词典。
6.一种全文检索***,其特征在于,首先建立全文索引,IKAnalyzer分词,然后进行全文检索,最后如果用户输入的关键词或短语查询不到结果,并且符合关键词格式,则加入到扩展词典。
7.根据权利要求6所述的一种全文检索***,其特征在于,为文章标题字段建立全文索引查找匹配的文章标题,同时为文章标题和文章内容字段建立联合索引用于查找匹配的文章标题和内容。
8.根据权利要求7所述的一种全文检索***,其特征在于,在IKAnalyzer分词中,对中文、英文和数字之外的字符统一进行过滤,如果输入的关键词或短语长度超过15至25,则判定为精准查询,只查找匹配的文章标题,不查找匹配的文章内容;
如果用户输入的内容含有空白符,则自动进行分词,最后根据扩展词典对用户输入的关键词或短语进行分词,并存储到列表中。
9.根据权利要求8所述的一种全文检索***,其特征在于,在全文检索中,布尔模式会按照规则解析搜索字符串中的特殊字符的含义,进行一些逻辑意义的规则。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211099777.9A CN115455147A (zh) | 2022-09-09 | 2022-09-09 | 一种全文检索方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211099777.9A CN115455147A (zh) | 2022-09-09 | 2022-09-09 | 一种全文检索方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115455147A true CN115455147A (zh) | 2022-12-09 |
Family
ID=84302452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211099777.9A Pending CN115455147A (zh) | 2022-09-09 | 2022-09-09 | 一种全文检索方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115455147A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823799A (zh) * | 2012-11-16 | 2014-05-28 | 镇江诺尼基智能技术有限公司 | 新一代行业知识全文检索方法 |
CN107562831A (zh) * | 2017-08-23 | 2018-01-09 | 中国软件与技术服务股份有限公司 | 一种基于全文检索的精确查找方法 |
CN107844596A (zh) * | 2017-11-22 | 2018-03-27 | 福建中金在线信息科技有限公司 | 一种文章检索方法及*** |
CN110069610A (zh) * | 2019-03-16 | 2019-07-30 | 平安科技(深圳)有限公司 | 基于Solr的检索方法、装置、设备和存储介质 |
CN110619036A (zh) * | 2019-08-25 | 2019-12-27 | 南京理工大学 | 基于改进if-idf算法的全文检索*** |
-
2022
- 2022-09-09 CN CN202211099777.9A patent/CN115455147A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823799A (zh) * | 2012-11-16 | 2014-05-28 | 镇江诺尼基智能技术有限公司 | 新一代行业知识全文检索方法 |
CN107562831A (zh) * | 2017-08-23 | 2018-01-09 | 中国软件与技术服务股份有限公司 | 一种基于全文检索的精确查找方法 |
CN107844596A (zh) * | 2017-11-22 | 2018-03-27 | 福建中金在线信息科技有限公司 | 一种文章检索方法及*** |
CN110069610A (zh) * | 2019-03-16 | 2019-07-30 | 平安科技(深圳)有限公司 | 基于Solr的检索方法、装置、设备和存储介质 |
CN110619036A (zh) * | 2019-08-25 | 2019-12-27 | 南京理工大学 | 基于改进if-idf算法的全文检索*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108763333B (zh) | 一种基于社会媒体的事件图谱构建方法 | |
US8447588B2 (en) | Region-matching transducers for natural language processing | |
US8266169B2 (en) | Complex queries for corpus indexing and search | |
EP0597630B1 (en) | Method for resolution of natural-language queries against full-text databases | |
US8005858B1 (en) | Method and apparatus to link to a related document | |
US7509313B2 (en) | System and method for processing a query | |
CN111104794A (zh) | 一种基于主题词的文本相似度匹配方法 | |
US8510097B2 (en) | Region-matching transducers for text-characterization | |
US20110113048A1 (en) | Enabling Faster Full-Text Searching Using a Structured Data Store | |
US11562592B2 (en) | Document retrieval through assertion analysis on entities and document fragments | |
CN111309925A (zh) | 一种军事装备的知识图谱构建方法 | |
CN109241080B (zh) | 一种fql查询语言的构建使用方法及其*** | |
Ye et al. | Unknown Chinese word extraction based on variety of overlapping strings | |
KR100835706B1 (ko) | 자동 색인을 위한 한국어 형태소 분석 시스템 및 그 방법 | |
CN105912662A (zh) | 基于Coreseek的垂直搜索引擎研究与优化的方法 | |
CN102915381B (zh) | 基于多维语义的可视化网络检索呈现***及呈现控制方法 | |
KR20100066919A (ko) | 웹 기반의 정보 저장 및 검색 방법, 이를 위한 정보 관리 시스템 | |
Ghodke et al. | Fast query for large treebanks | |
WO2012091541A1 (en) | A semantic web constructor system and a method thereof | |
Zhang | Start small, build complete: Effective and efficient semantic table interpretation using tableminer | |
CN115455147A (zh) | 一种全文检索方法及*** | |
Waitelonis et al. | Use what you have: Yovisto video search engine takes a semantic turn | |
CN106502980B (zh) | 一种基于文本词素切分的检索方法及*** | |
Wang et al. | A search-based Chinese word segmentation method | |
Roth et al. | A framework for entailed relation recognition |
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: 20221209 |