CN111522905A - 一种基于数据库的文档搜索方法和装置 - Google Patents
一种基于数据库的文档搜索方法和装置 Download PDFInfo
- Publication number
- CN111522905A CN111522905A CN202010292856.6A CN202010292856A CN111522905A CN 111522905 A CN111522905 A CN 111522905A CN 202010292856 A CN202010292856 A CN 202010292856A CN 111522905 A CN111522905 A CN 111522905A
- Authority
- CN
- China
- Prior art keywords
- searched
- document
- documents
- database
- search
- 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 46
- 238000012163 sequencing technique Methods 0.000 claims abstract description 6
- 230000015654 memory Effects 0.000 claims description 17
- 238000013500 data storage Methods 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 description 24
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012216 screening Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000009469 supplementation 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/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/3332—Query translation
- G06F16/3335—Syntactic pre-processing, e.g. stopword elimination, stemming
-
- 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/284—Lexical analysis, e.g. tokenisation or collocates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据搜索领域,特别是涉及一种基于数据库的文档搜索方法和装置。其主要步骤为:对数据库中待搜索的文档进行采集;对采集到的每个待搜索的文档进行分词,并对每个待搜索的文档建立搜索关键词与文档之间的倒排索引;根据至少一个搜索关键词,通过倒排索引对包含搜索关键词的待搜索的文档进行查找;获取每个文档和搜索关键词的关联度,根据关联度对查找到的包含有搜索关键词的文档进行排序;将查找到的文档根据排序后的顺序进行发布。本发明可以提高搜索速度,并为不同的用户需求和不同的应用场景提供适合的搜索结果的呈现顺序。
Description
【技术领域】
本发明涉及数据搜索领域,特别是涉及一种基于数据库的文档搜索方法和装置。
【背景技术】
随着信息技术快速发展,导致信息积累过多,对信息使用者来说而言,较难从大量信息中查找到自己所需要的信息。
在数据库领域,对于数据库中所存储的文档,无法直接通过数据库操作语言对文档中的内容进行搜索,所以需要将数据库汇总待搜索的文件进行采集后再使用另外的搜索工具进行文档内容搜索。
目前已有一些搜索工具可以对文档内容进行关键词匹配搜索,但一般的搜索工具搜索到的数据或文档仅会根据关键词匹配度、文档更新时间或搜索工具自带的简单排序规则进行排序,导致搜索后数据的呈现顺序不一定与搜索内容的特征或用户的需要。
鉴于此,如何克服该现有技术所存在的缺陷,避免搜索内容的呈现与用户的需求不符的现象,是本技术领域待解决的问题。
【发明内容】
针对现有技术的以上缺陷或改进需求,本发明解决了现有资讯搜索工具中搜索结果的呈现顺序无法精确匹配不同用户需求的问题。
本发明实施例采用如下技术方案:
第一方面,本发明提供了一种基于数据库的文档搜索方法,其特征在于:对数据库中待搜索的文档进行采集;对采集到的每个待搜索的文档进行分词,并对每个待搜索的文档建立搜索关键词与文档之间的倒排索引;根据至少一个搜索关键词,通过倒排索引对包含搜索关键词的待搜索的文档进行查找;获取每个文档和搜索关键词的关联度,根据关联度对查找到的包含有搜索关键词的文档进行排序;将查找到的文档根据排序后的顺序进行发布。
优选的,获取每个文档和搜索关键词的关联度,具体为:根据搜索关键词在查找到的文档中出现的频率获得每个查找到的文档与搜索关联词的关联度。
优选的,通过词频-逆向文件频率获得每个查找到的文档与搜索关联词的关联度。
优选的,若搜索关键词多于一个,还包括:对每个搜索关键字设定权重,根据查找到的文档中所有搜索关键字的加权关联度之和对查找到的文档进行排序。
优选的,对每个待搜索的文档建立搜索关键词与文档之间的倒排索引,还包括:为倒排索引增加词索引,词索引以树的形式进行存储,以便于快速查找关键词对应的倒排索引。
优选的,对数据库中的待搜索的文档进行采集,还包括:在数据库更新时对待搜索的文档进行增量采集;或,对数据库中的待搜索的文档进行定时增量采集。
优选的,对数据库中的待搜索的文档进行采集,具体为:基于logstash对数据库中的数据进行分页批量采集。
优选的,将采集到的待搜索的文档放入搜索服务器进行汇总,具体为:将采集到的待搜索的文档汇总至elasticsearch服务器中进行数据存储。
优选的,对汇总后的每个待搜索的文档进行分词,具体为:使用elasticsearch-analysis-ik分词器对每个待搜索的文档进行分词。
另一方面,本发明提供了一种基于数据库的文档搜索的装置,具体为:包括至少一个处理器和存储器,至少一个处理器和存储器之间通过数据总线连接,存储器存储有可被至少一个处理器执行的指令,指令在被处理器执行后,用于完成权利要求1-9任一的基于数据库的文档搜索方法。
与现有技术相比,本发明实施例的有益效果在于:通过建立词索引、使用通过倒排索引等方式加速搜索,并通过为搜索关键词设置权重等方式为不同的用户需求和不同的应用场景提供适合的搜索结果的呈现顺序。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于数据库的文档搜索方法的流程图;
图2为本发明实施例提供的一种基于数据库的文档搜索方法的文档分词方式的示意图;
图3为本发明实施例提供的一种基于数据库的文档搜索方法的另一种文档分词方式的示意图;
图4为本发明实施例提供的一种基于数据库的文档搜索方法的倒排索引排序方式的示意图;
图5为本发明实施例提供的一种基于数据库的文档搜索的装置结构示意图。
【具体实施方式】
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明是一种特定功能系统的体系结构,因此在具体实施例中主要说明各结构模组的功能逻辑关系,并不对具体软件和硬件实施方式做限定。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。下面就参考附图和实施例结合来详细说明本发明。
实施例1:
在实际的信息搜索应用中,不同的应用场景或不同的用户对于不同内容的关注程度并不相同,希望优先看到的内容也不相同。因此,在进行文档搜索时,为了提升用户体验,除了搜索出包含搜索关键词的文档,还需要根据不同的使用场景及用户需求对搜索到的文档进行相应顺序的发布。
如图1所示,本发明实施例提供的基于数据库的文档搜索的方法具体步骤如下:
步骤101:对数据库中待搜索的文档进行采集。
为了提高搜索效率,先将可能使用到的待搜索文档放入数据库中进行存档,进行搜索中直接由数据库中获取待搜索的文档,可以利用数据库存取管理工具优化待搜索的文档采集速度。在本实施例的实际应用中,数据库可以是针对某些使用场景建立的专用数据库、网站后台数据库、或对通过网络爬虫爬取的文档进行缓存的临时数据库等。
步骤102:对采集到的每个待搜索的文档进行分词,并对每个待搜索的文档建立搜索关键词与文档之间的倒排索引。
对待搜索的文档分词是进行搜索的基础,准确分词有助于更准确快速的进行搜索。根据不同的应用场景和用户需求,文档内容可以使用不同的方式进行分词,如使用字符分词、精确分词、全匹配分词等分词方式进行分词,使用不同的分词方法可能会对同一文档提取出不同的关键词。进行分词后,待搜索文档中被拆分出的关键词组成词典(英文为:term dictionary),词典一般以列表形式存放,词典中的每个关键词和文档索引间建立对应关系,以便于通过关键词匹配进行文档搜索。如图2所示,倒排索引(英文为:invertedindex)相对于正序索引(英文为:forward index)更方便查找关键词所对应的文档,可以加快搜索速度。进一步的,如图3所示,可以对词典中的每个关键词添加词索引,将关键词进行排序,排序后通过B-Tree或B+Tree的形式存放词索引,进一步提高搜索效率。
步骤103:根据至少一个搜索关键词,通过倒排索引对包含搜索关键词的待搜索的文档进行查找。
在文档搜索时,通常不仅有一个搜索关键词,而是需要多个关键词进行联合搜索。为了提高联合搜索的效率,使用skip list对词索引进行排序。如图4所示,为分词后的各关键词生成posting list,每个posting list存放一个关键词所对应的文档索引,多个posting list共同组成skip list,按照文档索引号从小到大进行遍历,在进行遍历时可以根据前一关键字的posting list遍历结果跳过后一个posting list中的一些关键字,如图4中在第1个posting list中遍历到13后,遍历第3个posting list时即可跳过3,使用skillist进行搜索的时间少于完整遍历所有posting list的时间。
步骤104:获取每个文档和搜索关键词的关联度,根据关联度对查找到的包含有搜索关键词的文档进行排序。
在进行文档搜索时,除了准确找出包含搜索关键词的文档外,还需要对找到的文档进行排序,以便于用户优先获取更符合需求的信息。在本实施例中,根据文档和搜索关键词的关联度进行排序。关联度表示文档和搜索关键词间的相关程度,关联度的量化计算可以根据不同使用场景的需求选择不同的计算方式,如关键词出现频率、关键词出现位置、关键词所在词组等。文档和搜索关键词的关联度越高,说明文档与用户期待的搜索内容的匹配度越高,排序时越靠前。进一步的,若搜索关键词多于一个,则通过多个关键词的综合关联度对文档进行排序。
步骤105:将查找到的文档根据排序后的顺序进行发布。
进行搜索后,需要将搜索结果向用户进行呈现,为了使用户优先看到与搜索关键词匹配度较高的内容,因此按照步骤104中根据关联度排序后的顺序进行发布。
经过本实施例中提供的步骤101-步骤105后,即可根据用户选取的搜索关键词对数据库中文档完成搜索及排序。通过倒排索引提高了搜索的效率,降低搜索用时,提高响应速度。通过使用文档和搜索关键词的关联度作为排序的依据,使用户优先看到与搜索关键词更相关的文档,可以为用户提供更好的搜索体验。
为了针对不同的搜索场景中不同的文档内容主题,为了更准确的将用户可能需要的文档优先呈现,在计算文档和搜索关键词的关联度时,除了计算文档和用户所使用的搜索关键词的关联度外,还可以针对不同的场景预设关键词。在本实施例的某些具体实施场景中,对金融类资讯进行搜索,在金融市场中,资讯发布时间往往对股市起到关键作用,因此除了词的重要性,还考虑到了发布时间。当前时间初始值是1,5天前发布资讯值是0.5,以小时为单位,采用如公式1中的gauss函数进行衰减;5天后发布资讯,也以小时为单位,采用等比例衰减,比例系数是0.0001;最后213天前资讯值是0,结果不展示。在步骤104中进行排序时,综合计算用户所使用的搜索关键词和预设关键词和文档的关联度,使用两者共同的关联度进行排序。
进行文档搜索时,由于某些词组可能会有多种含义,如搜索关键词“白色清单”可能出现在国家贸易清单相关文档中,也可能会出现在个人购物清单相关文档中。为了尽量减少搜索结果中出现用户预期之外的文档,还可以在搜索时增加筛选关键词,在搜索结果中去除所有包含筛选关键词的文档,或对包含筛选关键词的文档降低关联度,如设置筛选关键词“购物”,即可在搜索关键词“白色清单”的搜索结果中筛选去除个人购物清单相关文档,或将相应文档的排序后移。通过筛选,减少非用户预期的搜索结果出现的概率,提高用户获得有效信息的效率。
进一步的,可以通过神经网络技术对搜索结果进行智能筛选,不需要用户设置筛选关键词,而是通过神经网络对搜索到的文档进行领域、场景、权威度等的辨别和筛选,过滤掉不符合用户期待的搜索结果文档。
在进行搜索时,由于数据库中文档来源不同,可能会包含多个内容相同的文档,如从不同发布源爬取的多个相同内容的文档,这些内容仙童的文档若同时呈现给用户,会增加用户获取有效资讯的成本。因此,在步骤101中对待搜索的文档进行采集之后,或步骤103中对待搜索的文档进行查找之后,将内容相同的文档进行合并,以便于用户查看。
对搜索结果进行查看时,为了便于用户通过不同维度对搜索到内容进行查看,除了使用文档和搜索关键词的关联度,还可以设置不同的排序方式,如按发布日期、按文档发布者的权威度、按文档的阅读量等。用户可以自主选择需要的排序方式对搜索结果进行呈现,以便首先获得需要优先阅读的文档。
进一步的,还可以根据文档性质对搜索到的文档进行分类呈现,如新闻、公告、研究报告等,用户可以根据自身需要选择相应的类别进行查看,相当于对文档进行再次筛选,减少用户不需要看到的文档数量。
本实施例提供的基于数据库的文档搜索方法一方面通过倒排索引提高搜索速度,降低搜索请求的响应时间;另一方面通过文档和搜索关键词的关联度对搜索到的文档进行排序,并结合本实施例中提供的其它的筛选、排序方式,使得搜索到的文档呈现顺序更符合用户预期,提升用户的使用体验。
实施例2:
基于实施例1提供的基于数据库的文档搜索方法,在不同的具体应用场景中,还可以根据使用需求或实际场景的不同进行补充和调整。
在本实施例的具体实施场景中,为了简便的获得文档和搜索关键词的关联度,可以根据公式1对关联度进行量化计算,通过搜索关键词在文档中出现的频率对文档和搜索关键词的相关程度进行量化:
其中,fw为文档和搜索关键词w的关联度。
进一步的,为了更精确的获取文档与搜索关联词的关联度,避免文章长度、体裁、写作等对于搜索关键词出现频率的影响,还可以使用词频-逆向文件频率(termfrequency–inverse document frequency,简写为tf-idf)计算文档和搜索关键词的关联度。其中,tf为搜索关键词在单篇文档的出现频率,idf为搜索关键词在全资讯库中出现的次数,tf-idf值可以表示字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。语料库为待分析的所有文档集合,如果语料库中包含关键词w的文档越少,则表示关键词w和特定文档的关联度越大,即表示关键词w具有较好的区分能力,能够搜索出和关键词w匹配度更高的文档。具体的,可以使用公式2和公式3进行计算:
其中,IDFw为逆向文件频率。
获得TFw和IDFw后,可使用公式3计算每个搜索关键词w和文档的关联度。
fw=tw*TFw*IDFw (公式4)
其中,fw为关键词w和文档的关联度,tw为关键词w的权重,TFw为公式2中计算出的关键词w在单篇文档中的出现频率,IDFw为公式3计算出的逆向文件频率。
进一步的,当搜索关键词为多个时,可以简单计算所有关键词的关联度之和作为排序依据,也可以如公式3所示,对不同关键词设置不同权重,并通过公式5计算加权关联度之和作为排序依据。
其中,f为所有搜索关键词和文档的关联度,即排序时使用的关联度,fi为根据公式5计算出的每个关键词的关联度,n为使用的搜索关键词个数。
使用加权关联度作为排序依据,可以区分较为重要的关键词和较不重要的关键词,避免因较不重要的关键词出现频率较高而导致的关联度和用户期望间的偏差,使得文档的呈现顺序更符合用户的实际需求。
进一步的,为了简化计算,可以将屏蔽关键词的权重设为负值,代入公式3中进行计算。权重设为负值之后,包含屏蔽关键词越多的文档,与所有搜索关键词的综合关联度越低,排序越靠后。
为了避免每次数据库更新后,需要对所有的待搜索文档重新进行步骤102中的分词和倒排索引建立过程,因此对待搜索的文档采用增量更新的形式,仅根据数据库的更新而对待搜索的文档进行增量采集,对未分词的文档进行分词,并将新产生的分词加入倒排索引列表中。具体的,增量采集可以通过监听数据库日志实现,在数据库更新时同步进行增量采集,或采取便于管理的定时增量采集方式。
在实施例1和本实施例提供的文档搜索方法进行具体实施时,为了提高开发难度、提高方法的通用性,可以根据具体需要使用现有的数据库组件或搜索组件执行方法中的步骤。具体的,执行步骤101的文档采集操作时,若数据库为mysql,可基于logstash对待搜索文档进行分页批量采集,根据数据库中的更新时间或自增实时自增采集。logstash是一种开源数据收集引擎,具有实时管道功能,logstash可以动态地将来自不同数据源的数据统一起来,并将数据标准化到使用者所选择的目的地。执行步骤102的文档分词操作时,可以通过elasticsearch-analysis-ik分词器设置过滤词、停顿词、同义词等,以便于对关键词进行准确分词,并对词库进行热更新,对待搜索文档内容进行字符、精确分词、全匹配分词的三种场景建立词索引。elasticsearch-analysis-ik分词器是一种开源分词器,中文分词功能较为成熟,便于对中文文档进行分词。执行步骤103中文档查找功能是,可以通过elasticsearch服务器进行数据存储。elasticsearch是一个基于Lucene的开源搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎。使用现有的数据库组件或搜索组件,可以方便的将本实施例提供的文档搜索方法与现有数据库系统和网页发布系统进行整合,并提高系统的稳定性。进一步的,在本实施例的具体使用中,还可以根据使用的数据库、使用的搜索引擎、分词的效率和精确度等,选取其它可用的能实现相应功能的组件对方法中的各步骤进行实施。
通过实施例2中提供的文档搜索方法,与实施例1中文档搜索方法组合,可以进一步提高文档搜索的效率和准确度,提高用户通过搜索获取资讯的效率。
实施例3:
在上述实施例1至实施例2提供的基于数据库的文档搜索方法的基础上,本发明还提供了一种可用于实现上述方法的基于数据库的文档搜索的装置,如图5所示,是本发明实施例的装置架构示意图。本实施例的基于数据库的文档搜索的装置包括一个或多个处理器21以及存储器22。其中,图5中以一个处理器21为例。
处理器21和存储器22可以通过总线或者其他方式连接,图5中以通过总线连接为例。
存储器22作为一种基于数据库的文档搜索方法非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如实施例1至实施例2中的基于数据库的文档搜索方法。处理器21通过运行存储在存储器22中的非易失性软件程序、指令以及模块,从而执行基于数据库的文档搜索装置的各种功能应用以及数据处理,即实现实施例1至实施例2的基于数据库的文档搜索方法。
存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器22可选包括相对于处理器21远程设置的存储器,这些远程存储器可以通过网络连接至处理器21。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
程序指令/模块存储在存储器22中,当被一个或者多个处理器21执行时,执行上述实施例1至实施例2中的基于数据库的文档搜索方法,例如,执行以上描述的图1所示的各个步骤。
本领域普通技术人员可以理解实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁盘或光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于数据库的文档搜索方法,其特征在于:
对数据库中待搜索的文档进行采集;
对采集到的每个待搜索的文档进行分词,并对每个待搜索的文档建立搜索关键词与文档之间的倒排索引;
根据至少一个搜索关键词,通过倒排索引对包含搜索关键词的待搜索的文档进行查找;
获取每个文档和搜索关键词的关联度,根据关联度对查找到的包含有搜索关键词的文档进行排序;
将查找到的文档根据排序后的顺序进行发布。
2.根据权利要求1所述的基于数据库的文档搜索的方法,其特征在于,所述获取每个文档和搜索关键词的关联度,具体为:根据搜索关键词在查找到的文档中出现的频率获得每个查找到的文档与搜索关联词的关联度。
3.根据权利要求2所述的基于数据库的文档搜索的方法,具体为:通过词频-逆向文件频率获得每个查找到的文档与搜索关联词的关联度。
4.根据权利要求3所述的基于数据库的文档搜索方法,其特征在于,若搜索关键词多于一个,还包括:对每个搜索关键字设定权重,根据查找到的文档中所有搜索关键字的加权关联度之和对查找到的文档进行排序。
5.根据权利要求1所述的基于数据库的文档搜索方法,其特征在于,所述对每个待搜索的文档建立搜索关键词与文档之间的倒排索引,还包括:为倒排索引增加词索引,词索引以树的形式进行存储,以便于快速查找关键词对应的倒排索引。
6.根据权利要求1所述的基于数据库的文档搜索方法,其特征在于,所述对数据库中的待搜索的文档进行采集,还包括:
在数据库更新时对待搜索的文档进行增量采集;
或,对数据库中的待搜索的文档进行定时增量采集。
7.根据权利要求6所述的基于数据库的文档搜索方法,其特征在于,所述对数据库中的待搜索的文档进行采集,具体为:基于logstash对数据库中的数据进行分页批量采集。
8.根据权利要求1所述的基于数据库的文档搜索方法,其特征在于,所述将采集到的待搜索的文档放入搜索服务器进行汇总,具体为:将采集到的待搜索的文档汇总至elasticsearch服务器中进行数据存储。
9.根据权利要求1所述的基于数据库的文档搜索方法,其特征在于,所述对汇总后的每个待搜索的文档进行分词,具体为:使用elasticsearch-analysis-ik分词器对每个待搜索的文档进行分词。
10.一种基于数据库的文档搜索的装置,其特征在于:
包括至少一个处理器和存储器,所述至少一个处理器和存储器之间通过数据总线连接,所述存储器存储能被所述至少一个处理器执行的指令,所述指令在被所述处理器执行后,用于完成权利要求1-9任一所述的基于数据库的文档搜索的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010292856.6A CN111522905A (zh) | 2020-04-15 | 2020-04-15 | 一种基于数据库的文档搜索方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010292856.6A CN111522905A (zh) | 2020-04-15 | 2020-04-15 | 一种基于数据库的文档搜索方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111522905A true CN111522905A (zh) | 2020-08-11 |
Family
ID=71911733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010292856.6A Pending CN111522905A (zh) | 2020-04-15 | 2020-04-15 | 一种基于数据库的文档搜索方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111522905A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112464081A (zh) * | 2020-09-08 | 2021-03-09 | 广东省华南技术转移中心有限公司 | 项目信息匹配方法、装置以及存储介质 |
CN112507068A (zh) * | 2020-11-30 | 2021-03-16 | 北京百度网讯科技有限公司 | 文档查询方法、装置、电子设备和存储介质 |
CN113032436A (zh) * | 2021-04-16 | 2021-06-25 | 苏州臻璇数据信息技术有限公司 | 基于文章内容和标题的搜索方法和装置 |
CN113468529A (zh) * | 2021-06-30 | 2021-10-01 | 建信金融科技有限责任公司 | 一种数据搜索方法和装置 |
CN113468441A (zh) * | 2021-06-29 | 2021-10-01 | 平安信托有限责任公司 | 基于权重调整的搜索排序方法、装置、设备及存储介质 |
CN113641815A (zh) * | 2021-07-26 | 2021-11-12 | 武汉理工大学 | 一种基于大数据的数据筛选方法、装置及电子设备 |
CN113760906A (zh) * | 2021-05-11 | 2021-12-07 | 中科天玑数据科技股份有限公司 | 一种索引管理的方法 |
CN116932859A (zh) * | 2023-08-10 | 2023-10-24 | 苏州阿基米德网络科技有限公司 | 一种医疗设备文档的搜索和浏览方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040267722A1 (en) * | 2003-06-30 | 2004-12-30 | Larimore Stefan Isbein | Fast ranked full-text searching |
CN101819578A (zh) * | 2010-01-25 | 2010-09-01 | 青岛普加智能信息有限公司 | 检索方法、索引建立方法和装置及检索系统 |
CN102110123A (zh) * | 2009-12-29 | 2011-06-29 | 中国人民解放军国防科学技术大学 | 倒排索引建立方法 |
CN102262640A (zh) * | 2010-05-31 | 2011-11-30 | 中国移动通信集团贵州有限公司 | 一种全文检索文档数据库的方法及装置 |
CN104142990A (zh) * | 2014-07-28 | 2014-11-12 | 百度在线网络技术(北京)有限公司 | 搜索方法及装置 |
CN105653661A (zh) * | 2015-12-29 | 2016-06-08 | 云南电网有限责任公司电力科学研究院 | 一种检索结果重排方法及装置 |
CN105975482A (zh) * | 2016-04-25 | 2016-09-28 | 乐视控股(北京)有限公司 | 基于垂直搜索的相关度排序实现方法及装置 |
CN107526736A (zh) * | 2016-06-20 | 2017-12-29 | 百度在线网络技术(北京)有限公司 | 搜索方法和装置 |
CN108920484A (zh) * | 2018-04-28 | 2018-11-30 | 广州市百果园网络科技有限公司 | 搜索内容处理方法、装置及存储设备、计算机设备 |
CN110134760A (zh) * | 2019-05-17 | 2019-08-16 | 北京思维造物信息科技股份有限公司 | 一种搜索方法、装置、设备及介质 |
-
2020
- 2020-04-15 CN CN202010292856.6A patent/CN111522905A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040267722A1 (en) * | 2003-06-30 | 2004-12-30 | Larimore Stefan Isbein | Fast ranked full-text searching |
CN102110123A (zh) * | 2009-12-29 | 2011-06-29 | 中国人民解放军国防科学技术大学 | 倒排索引建立方法 |
CN101819578A (zh) * | 2010-01-25 | 2010-09-01 | 青岛普加智能信息有限公司 | 检索方法、索引建立方法和装置及检索系统 |
CN102262640A (zh) * | 2010-05-31 | 2011-11-30 | 中国移动通信集团贵州有限公司 | 一种全文检索文档数据库的方法及装置 |
CN104142990A (zh) * | 2014-07-28 | 2014-11-12 | 百度在线网络技术(北京)有限公司 | 搜索方法及装置 |
CN105653661A (zh) * | 2015-12-29 | 2016-06-08 | 云南电网有限责任公司电力科学研究院 | 一种检索结果重排方法及装置 |
CN105975482A (zh) * | 2016-04-25 | 2016-09-28 | 乐视控股(北京)有限公司 | 基于垂直搜索的相关度排序实现方法及装置 |
CN107526736A (zh) * | 2016-06-20 | 2017-12-29 | 百度在线网络技术(北京)有限公司 | 搜索方法和装置 |
CN108920484A (zh) * | 2018-04-28 | 2018-11-30 | 广州市百果园网络科技有限公司 | 搜索内容处理方法、装置及存储设备、计算机设备 |
CN110134760A (zh) * | 2019-05-17 | 2019-08-16 | 北京思维造物信息科技股份有限公司 | 一种搜索方法、装置、设备及介质 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112464081A (zh) * | 2020-09-08 | 2021-03-09 | 广东省华南技术转移中心有限公司 | 项目信息匹配方法、装置以及存储介质 |
CN112507068A (zh) * | 2020-11-30 | 2021-03-16 | 北京百度网讯科技有限公司 | 文档查询方法、装置、电子设备和存储介质 |
CN112507068B (zh) * | 2020-11-30 | 2023-11-14 | 北京百度网讯科技有限公司 | 文档查询方法、装置、电子设备和存储介质 |
CN113032436A (zh) * | 2021-04-16 | 2021-06-25 | 苏州臻璇数据信息技术有限公司 | 基于文章内容和标题的搜索方法和装置 |
CN113760906A (zh) * | 2021-05-11 | 2021-12-07 | 中科天玑数据科技股份有限公司 | 一种索引管理的方法 |
CN113468441A (zh) * | 2021-06-29 | 2021-10-01 | 平安信托有限责任公司 | 基于权重调整的搜索排序方法、装置、设备及存储介质 |
CN113468529A (zh) * | 2021-06-30 | 2021-10-01 | 建信金融科技有限责任公司 | 一种数据搜索方法和装置 |
CN113468529B (zh) * | 2021-06-30 | 2022-08-09 | 建信金融科技有限责任公司 | 一种数据搜索方法和装置 |
CN113641815A (zh) * | 2021-07-26 | 2021-11-12 | 武汉理工大学 | 一种基于大数据的数据筛选方法、装置及电子设备 |
CN116932859A (zh) * | 2023-08-10 | 2023-10-24 | 苏州阿基米德网络科技有限公司 | 一种医疗设备文档的搜索和浏览方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111522905A (zh) | 一种基于数据库的文档搜索方法和装置 | |
CN110674429B (zh) | 用于信息检索的方法、装置、设备和计算机可读存储介质 | |
US8719262B1 (en) | Identification of semantic units from within a search query | |
CN103838833B (zh) | 基于相关词语语义分析的全文检索系统 | |
US7730060B2 (en) | Efficient evaluation of object finder queries | |
CN103678576B (zh) | 基于动态语义分析的全文检索系统 | |
Nabli et al. | Efficient cloud service discovery approach based on LDA topic modeling | |
US20220342950A1 (en) | System and method for searching based on text blocks and associated search operators | |
CN107967290A (zh) | 一种基于海量科研资料的知识图谱网络构建方法及系统、介质 | |
US20110022596A1 (en) | Method and system for document indexing and data querying | |
CN105183884A (zh) | 一种基于大数据技术的搜索引擎系统及搜索引擎方法 | |
US8805848B2 (en) | Systems, methods and computer program products for fast and scalable proximal search for search queries | |
US9262510B2 (en) | Document tagging and retrieval using per-subject dictionaries including subject-determining-power scores for entries | |
CN110889023A (zh) | 一种elasticsearch的分布式多功能搜索引擎 | |
CN105912662A (zh) | 基于Coreseek的垂直搜索引擎研究与优化的方法 | |
US20120130999A1 (en) | Method and Apparatus for Searching Electronic Documents | |
CN107229714B (zh) | 一种基于分布式数据库的全文搜索引擎 | |
Barrio et al. | Sampling strategies for information extraction over the deep web | |
CN111723179A (zh) | 基于概念图谱的反馈模型信息检索方法、系统及介质 | |
Deng et al. | Information re-finding by context: A brain memory inspired approach | |
RU2473119C1 (ru) | Способ и система семантического поиска электронных документов | |
US20090234836A1 (en) | Multi-term search result with unsupervised query segmentation method and apparatus | |
CN115328945A (zh) | 数据资产的检索方法、电子设备及计算机可读存储介质 | |
AU2019101463A4 (en) | Method of searching and mining of social information on Internet based on Elasticsearch | |
Zeraatkar et al. | Improvement of Page Ranking Algorithm by Negative Score of Spam Pages. |
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 |
Application publication date: 20200811 |
|
RJ01 | Rejection of invention patent application after publication |