CN103136286B - 一种分布式搜索方法 - Google Patents
一种分布式搜索方法 Download PDFInfo
- Publication number
- CN103136286B CN103136286B CN201110398424.4A CN201110398424A CN103136286B CN 103136286 B CN103136286 B CN 103136286B CN 201110398424 A CN201110398424 A CN 201110398424A CN 103136286 B CN103136286 B CN 103136286B
- Authority
- CN
- China
- Prior art keywords
- index
- burst
- katta
- search
- data base
- 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.)
- Active
Links
- 241000288902 Lemur catta Species 0.000 claims description 16
- 238000000034 method Methods 0.000 claims description 5
- 239000002965 rope Substances 0.000 claims 1
- 238000005728 strengthening Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 1
- 230000001737 promoting Effects 0.000 description 1
Abstract
本发明属于搜索领域,公开了一种分布式搜索方法,一种基于文件系统的全文检索,把全文检索的功能独立出来,成为一个单独的服务,这样可以和数据库分开部署,从而减轻数据库的压力,同时增强检索服务的性能,数据库压力降低,整体性能得到提升,同时可扩展性强。
Description
技术领域
本发明涉及搜索领域,尤其涉及一种分布式搜索方法。
背景技术
目前,基于数据库的全文检索,是在数据库上增加了一个全文检索的模块,该模块功能和数据库集成在一起,占用数据库服务器的资源。在查询压力比较大的情形下,经常导致数据库服务器负载过高,不能向应用提供正常服务。
发明内容
为了解决上述技术问题,本发明的目的在于提供一种基于文件系统的全文检索,把全文检索的功能独立出来,成为一个单独的服务,这样可以和数据库分开部署,从而减轻数据库的压力,同时增强检索服务的性能的分布式搜索的架构。
本发明的完整技术方案是,一种分布式搜索方法,包括一个搜索引擎集群,所述搜索引擎集群位于数据库之前、应用之后,所述搜索引擎集群包括Zookeeper、Katta、HDFS、Solr;
Solr用于创建索引:通过连接到数据库,获取数据行,创建索引分片;
HDFS用于存储索引:通过其中的Hadoop控制台,存储分片到HDFS上;
Katta用于部署、更新以及查询索引:通过Katta控制台,发布索引分片,Katta自动部署分片到索引节点;未满的分片需要继续填充索引文档,然后更新到已发布的节点上;应用发出的查询,由Katta客户端处理:首先向索引节点发出获取索引ID的请求,进行排序等处理,然后根据ID发出获取具体的文档;
Zookeeper作为分布式协调器的一部分。
所述索引分片的大小小于等于10G或小于等于1500万行。
由上可见,本发明与现在技术相比有如下有益效果:本发明提供一种基于文件系统的全文检索,把全文检索的功能独立出来,成为一个单独的服务,这样可以和数据库分开部署,从而减轻数据库的压力,同时增强检索服务的性能,数据库压力降低,整体性能得到提升,同时可扩展性强。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的不当限定,在附图中:
图1为本发明逻辑原理图;
图2为本发明的创建索引的示意图;
图3为本发明的查询处理的示意图;
图4为本发明的实施例1原理示意图。
具体实施方式
下面将结合附图以及具体实施例来详细说明本发明,在此本发明的示意性实施例以及说明用来解释本发明,但并不作为对本发明的限定。
实施例1:
本实施例一种分布式搜索方法,如图所示,在数据库之前,应用之后,增加三台服务器,作为搜索引擎集群。包括一个搜索引擎集群,所述搜索引擎集群采用Zookeeper、Katta、HDFS、Solr为基础架构;
Solr用于创建索引:通过连接到数据库,获取数据行,创建索引分片;
HDFS用于存储索引:通过其中的Hadoop控制台,存储分片到HDFS上;
Katta用于部署、更新以及查询索引:通过Katta控制台,发布索引分片,Katta自动部署分片到索引节点;未满的分片需要继续填充索引文档,然后更新到已发布的节点上;应用发出的查询,由Katta客户端处理:首先向索引节点发出获取索引ID的请求,进行排序等处理,然后根据ID发出获取具体的文档;
Zookeeper作为分布式协调器的一部分。
每台服务器至少充当三种角色:
1.HDFS服务器,作为分布式存储系统的一部分
2.ZkServer服务器,作为分布式协调器的一部分
3.Katta查询处理服务器,作为分布式搜索服务的一部分
其中Master Node服务器作为主控服务器,处理创建索引的工作,同时作为查询服务器,接收所有的查询请求,并且转发给后续的Slave Node服务器;
Slave Node服务器主要作为查询处理服务器,真正处理查询请求,返回查询结果。
由上可见,本发明提供一种基于文件系统的全文检索,把全文检索的功能独立出来,成为一个单独的服务,这样可以和数据库分开部署,从而减轻数据库的压力,同时增强检索服务的性能,数据库压力降低,整体性能得到提升,同时可扩展性强。
以上对本发明实施例所提供的技术方案进行了详细介绍,本文中应用了具体个例对本发明实施例的原理以及实施方式进行了阐述,以上实施例的说明只适用于帮助理解本发明实施例的原理;同时,对于本领域的一般技术人员,依据本发明实施例,在具体实施方式以及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (2)
1.一种分布式搜索方法,其特征在于,包括一个搜索引擎集群,所述搜索引擎集群位于数据库之前、应用之后,所述搜索引擎集群包括Zookeeper、Katta、HDFS、Solr;
Solr用于创建索引:通过连接到数据库,获取数据行,创建索引分片;
HDFS用于存储索引:通过其中的Hadoop控制台,存储分片到HDFS上;
Katta用于部署、更新以及查询索引:通过Katta控制台,发布索引分片,Katta自动部署分片到索引节点;未满的分片需要继续填充索引文档,然后更新到已发布的节点上;应用发出的查询,由Katta客户端处理:首先向索引节点发出获取索引ID的请求,进行排序等处理,然后根据ID发出获取具体的文档;
Zookeeper作为分布式协调器的一部分。
2.根据权利要求1所述的一种分布式搜索方法,其特征在于,所述索引分片的大小小于等于10G或小于等于1500万行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110398424.4A CN103136286B (zh) | 2011-12-05 | 一种分布式搜索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110398424.4A CN103136286B (zh) | 2011-12-05 | 一种分布式搜索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103136286A CN103136286A (zh) | 2013-06-05 |
CN103136286B true CN103136286B (zh) | 2016-12-14 |
Family
ID=
Non-Patent Citations (4)
Title |
---|
分布式多搜索引擎系统的研究与实现;陈旭春等;《微计算机信息》;20051231;第21卷(第30期);37,38,129 * |
基于Hadoop的分布式搜索引擎关键技术;王俊生等;《北京信息科技大学学报》;20110831;第26卷(第4期);53-56,61 * |
基于Lucene的分布式并行索引;唐华姣等;《计算机技术与发展》;20110228;第21卷(第2期);123-126 * |
基于Map/Reduce的分布式搜索引擎研究;吴宝贵等;《现代图书情报技术》;20070831(第8期);52-55 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11354314B2 (en) | Method for connecting a relational data store's meta data with hadoop | |
US10241839B2 (en) | Method and system for generating a virtual device resource accessible by an application | |
WO2013163615A3 (en) | Application representation for application editions | |
CN105335479B (zh) | 一种基于sql的文本数据统计实现方法 | |
CN103942098A (zh) | 一种任务处理系统和方法 | |
WO2010144739A3 (en) | Distributed cache availability during garbage collection | |
CN102314480B (zh) | 一种针对海量数据的分布式数据存储方法 | |
CN104933173A (zh) | 一种用于异构多数据源的数据处理方法、装置和服务器 | |
CN103823846A (zh) | 一种基于图论的大数据存储及查询方法 | |
CN102567378A (zh) | 基于异构数据的信息检索系统 | |
CN102929852A (zh) | 一种在富文本编辑器内实现简繁体字互转的方法及系统 | |
CN106101710A (zh) | 一种分布式视频转码方法及装置 | |
CN204316546U (zh) | 一种中小型云存储数据同步系统 | |
CN103136286B (zh) | 一种分布式搜索方法 | |
CN104008100A (zh) | 集群环境并发处理方法 | |
CN102521318A (zh) | 基于xml的通用数据交换装置 | |
WO2011070334A9 (en) | Accessing stored electronic resources | |
CN102760137A (zh) | 分布式全文检索方法以及系统 | |
CN104239537A (zh) | 一种大数据预处理文本数据生成处理流程实现方法 | |
CN107122491A (zh) | 用于数据交互的方法 | |
CN101799890A (zh) | 证照数据处理方法和系统 | |
CN105045902A (zh) | 一种数据查询的方法及系统 | |
CN202276353U (zh) | 一种基于多传感器融合的智能楼宇信息共享平台 | |
CN104484468A (zh) | 一种基于Dblink和透明网关的数据库系统及其构建使用方法 | |
CN103873564A (zh) | 一种在多服务器负载均衡条件下实现SignalR双工通信的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |