CN103425673A - 基于lucene的索引同步搜索方法及其装置 - Google Patents
基于lucene的索引同步搜索方法及其装置 Download PDFInfo
- Publication number
- CN103425673A CN103425673A CN2012101542709A CN201210154270A CN103425673A CN 103425673 A CN103425673 A CN 103425673A CN 2012101542709 A CN2012101542709 A CN 2012101542709A CN 201210154270 A CN201210154270 A CN 201210154270A CN 103425673 A CN103425673 A CN 103425673A
- Authority
- CN
- China
- Prior art keywords
- index
- server
- search
- rsync
- synchronous
- 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 17
- 230000001360 synchronised effect Effects 0.000 claims abstract description 33
- 238000004891 communication Methods 0.000 claims abstract description 22
- 230000003993 interaction Effects 0.000 claims abstract description 4
- 238000012423 maintenance Methods 0.000 claims description 6
- 241001672694 Citrus reticulata Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种基于lucene的索引同步搜索方法及其装置,其特点是:在索引服务器上部署rsync服务端,在搜索服务器上部署rsync客户端。索引服务器在本地创建索引,更新索引的版本文件,与搜索服务器的版本文件一致,进行索引同步。其装置包括有搜索负载均衡服务器,搜索负载均衡服务器的数据主通讯端连接用户交互组件。同时,搜索负载均衡服务器数据的副通讯端连接数据交换枢纽组件,数据交换枢纽组件通过搜索服务器组连接rsync服务器,且rsync服务器的通讯端连接索引组件。由此,能够有效解决单台服务器搜索性能瓶颈,避免了单台服务器出错影响用户搜索问题。同时,可通过搜索服务器的扩展,避免出现磁盘的存储瓶颈。
Description
技术领域
本发明涉及一种搜索方法及其装置,尤其涉及一种基于lucene的索引同步搜索方法及其装置。
背景技术
索引放在单服务器上时,如果单服务器性能不行的时候通常会考虑多服务器共享索引方式来提高性能,但存放索引的服务器的磁盘性能必须很强,不然如果数据量一直扩展下去,很容易达到磁盘的存储瓶颈,而且如果有索引的服务器出问题的话,其他服务器也不能搜索了。
关于Lucene,是一个基于Java的全文信息检索工具包,它不是一个完整的搜索应用程序,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种语言)。Lucene目前是Apache Jakarta家族中的一个顶级开源项目。它的作者是Doug Cutting,他是一位资深全文索引/检索专家。
同时,Lucene提供的服务实际包含两部分:一入一出。所谓入是写入,即将你提供的源(本质是字符串)写入索引或者将其从索引中删除;所谓出是读出,即向用户提供全文搜索服务,让用户可以通过关键词定位源。下图表示了一入一出,也表示了搜索应用程序和Lucene之间的关系,具体来说:
写入流:源字符串首先经过analyzer处理,包括:分词,分成一个个单词后将源中需要的信息加入Document的各个Field中,并把需要索引的Field索引起来,把需要存储的Field存储起来并将索引写入存储器,存储器可以是内存或磁盘
读出流:用户提供搜索关键词,经过analyzer处理。对处理后的关键词搜索索引找出对应的Document。用户根据需要从找到的Document中提取需要的Field。
并且,rsync是Unix下的一款应用软件,它能同步更新两处计算机的档案与目录,并适当利用差分编码以减少数据传输。rsync中一项与其他大部分类似程式或协定中所未见的重要特性是镜像对每个目标只需要一次传送。rsync可拷贝/显示目录属性,以及拷贝档案,并可选择性的压缩以及递归拷贝。关于同步框架描述,原单机服务器搜索性能有极限。而且后期扩展几乎是不可能的。
发明内容
本发明的目的就是为了解决现有技术中存在的上述问题,提供一种基于lucene的索引同步搜索方法及其装置。
本发明的目的通过以下技术方案来实现:
基于lucene的索引同步搜索方法,其包括以下步骤:步骤①,在索引服务器(Indexer 服务器)上部署rsync服务端,在搜索服务器上部署rsync客户端;步骤②,索引服务器在本地创建索引,更新索引的版本文件,与搜索服务器的版本文件一致,进行索引同步。
上述的基于lucene的索引同步搜索方法,其中:所述的索引同步后,索引同步程序发现索引有问题时尝试重新同步索引,搜索服务器上的搜索程序发现索引变更后重新加载索引。
进一步地,上述的基于lucene的索引同步搜索方法,其中:所述的发现索引有问题时,不立即造成搜索报错,在此期间,搜索索引不会实时保持最新。
基于lucene的索引同步搜索装置,包括有搜索负载均衡服务器,其中:所述的搜索负载均衡服务器的数据主通讯端连接用户交互组件,所述搜索负载均衡服务器数据的副通讯端连接数据交换枢纽组件,所述数据交换枢纽组件通过搜索服务器组连接rsync服务器,所述rsync服务器的通讯端连接索引组件。
上述的基于lucene的索引同步搜索装置,其中:所述的搜索服务器组至少有四台搜索服务器组成,各个搜索服务器均设有独立的主数据通讯端,连入数据交换枢纽组件,所述各个搜索服务器均设有独立的副数据通讯端,连入接rsync服务器。
进一步地,上述的基于lucene的索引同步搜索装置,其中:所述的索引组件包括有索引维护服务器,所述的索引维护服务器内设有数据源通讯模块。
更进一步地,上述的基于lucene的索引同步搜索装置,其中:所述的数据交换枢纽组件设有预留扩展端口。
再进一步地,上述的基于lucene的索引同步搜索装置,其中:所述的rsync服务器设有预留扩展端口。
本发明技术方案的优点主要体现在:依托于搜索负载均衡服务器与搜索服务器组之间的配合,能够有效解决单台服务器搜索性能瓶颈,避免了单台服务器出错影响用户搜索问题。同时,可以通过搜索服务器的扩展,即使数据量一直扩展下去,也可以有效避免出现磁盘的存储瓶颈,令搜索的数据更新得到保障。
附图说明
本发明的目的、优点和特点,将通过下面优选实施例的非限制性说明进行图示和解释。这些实施例仅是应用本发明技术方案的典型范例,凡采取等同替换或者等效变换而形成的技术方案,均落在本发明要求保护的范围之内。这些附图当中,
图1是基于lucene的索引同步搜索装置的构造示意图。
具体实施方式
基于lucene的索引同步搜索方法,其特别之处在于包括以下步骤:首先,在索引服务器(Indexer 服务器)上部署rsync服务端(rsync服务端),在搜索服务器上部署rsync客户端。在此期间,rsync的版本一定要一致。
之后,通过索引服务器在本地创建索引,更新索引的版本文件,与搜索服务器的版本文件一致,进行索引同步。具体来说,会更新索引的版本文件version文件,一旦搜索服务器上检测到索引服务器上version文件的变化,便使用rsync将索引同步到本地。
就本发明一较佳的实施方式来看,所述的索引同步后,索引同步程序发现索引有问题时尝试重新同步索引,搜索服务器上的搜索程序发现索引变更后重新加载索引。并且,在发现索引有问题时,不立即造成搜索报错,在此期间,搜索索引不会实时保持最新。这样,这就给服务器管理员一定的时间更换服务器或排查软件等其他上的问题。同时,同步算法上一定要先同步后将旧的索引删除,因为旧的索引此时正在搜索,没有新的可替代的索引在本地的话,搜索的时候会报错。
为了更好的实施本发明,如图1所示,将本发明的方法与装置相结合,提供一种基于lucene的索引同步搜索装置,其包括有搜索负载均衡服务器1,与众不同之处在于:采用的搜索负载均衡服务器1的数据主通讯端连接用户交互组件2,且搜索负载均衡服务器1数据的副通讯端连接数据交换枢纽组件3。同时,数据交换枢纽组件3通过搜索服务器组连接rsync服务器5,rsync服务器5的通讯端连接索引组件。
结合本发明的实际使用情况来看,为了减少搜索服务器4的负担,提高整体利用率,搜索服务器组至少有四台搜索服务器4组成,各个搜索服务器4均设有独立的主数据通讯端,连入数据交换枢纽组件3。并且,为了有利于数据的通讯传导,各个搜索服务器4均设有独立的副数据通讯端,连入接rsync服务器5。这样,索引同步到多台搜索服务器4上,即使一台服务器有问题也不会影响到其他搜索服务器4。同时,即使数据量一直扩展下去,也可以有效避免出现磁盘的存储瓶颈,只需要扩充搜索服务器4即可。
进一步来看,为了便于信息索引,采用的索引组件包括有索引维护服务器6,在索引维护服务器6内设有数据源通讯模块7。
再进一步来看,考虑到搜索的发展,为了便于后续新组件的扩展安装,在数据交换枢纽组件3设有预留扩展端口8。与之对应的是,rsync服务器5上设有预留扩展端口8。
通过上述的文字表述可以看出,采用本发明后,依托于搜索负载均衡服务器与搜索服务器组之间的配合,能够有效解决单台服务器搜索性能瓶颈,避免了单台服务器出错影响用户搜索问题。同时,可以通过搜索服务器的扩展,即使数据量一直扩展下去,也可以有效避免出现磁盘的存储瓶颈,令搜索的数据更新得到保障。
Claims (8)
1.基于lucene的索引同步搜索方法,其特征在于包括以下步骤:
步骤①,在索引服务器上部署rsync服务端,在搜索服务器上部署rsync客户端;
步骤②,索引服务器在本地创建索引,更新索引的版本文件,与搜索服务器的版本文件一致,进行索引同步。
2.根据权利要求1所述的基于lucene的索引同步搜索方法,其特征在于:所述的索引同步后,索引同步程序发现索引有问题时尝试重新同步索引,搜索服务器上的搜索程序发现索引变更后重新加载索引。
3.根据权利要求1所述的基于lucene的索引同步搜索方法,其特征在于:所述的发现索引有问题时,不立即造成搜索报错,在此期间,搜索索引不会实时保持最新。
4.基于lucene的索引同步搜索装置,包括有搜索负载均衡服务器,其特征在于:所述的搜索负载均衡服务器的数据主通讯端连接用户交互组件,所述搜索负载均衡服务器数据的副通讯端连接数据交换枢纽组件,所述数据交换枢纽组件通过搜索服务器组连接rsync服务器,所述rsync服务器的通讯端连接索引组件。
5.根据权利要求4所述的基于lucene的索引同步搜索装置,其特征在于:所述的搜索服务器组至少有四台搜索服务器组成,各个搜索服务器均设有独立的主数据通讯端,连入数据交换枢纽组件,所述各个搜索服务器均设有独立的副数据通讯端,连入接rsync服务器。
6.根据权利要求4所述的基于lucene的索引同步搜索装置,其特征在于:所述的索引组件包括有索引维护服务器,所述的索引维护服务器内设有数据源通讯模块。
7.根据权利要求4所述的基于lucene的索引同步搜索装置,其特征在于:所述的数据交换枢纽组件设有预留扩展端口。
8.根据权利要求4所述的基于lucene的索引同步搜索装置,其特征在于:所述的rsync服务器设有预留扩展端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012101542709A CN103425673A (zh) | 2012-05-18 | 2012-05-18 | 基于lucene的索引同步搜索方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012101542709A CN103425673A (zh) | 2012-05-18 | 2012-05-18 | 基于lucene的索引同步搜索方法及其装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103425673A true CN103425673A (zh) | 2013-12-04 |
Family
ID=49650431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012101542709A Pending CN103425673A (zh) | 2012-05-18 | 2012-05-18 | 基于lucene的索引同步搜索方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103425673A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955498A (zh) * | 2014-04-22 | 2014-07-30 | 北京联时空网络通信设备有限公司 | 一种搜索引擎创建方法及装置 |
CN106484694A (zh) * | 2015-08-25 | 2017-03-08 | 杭州华为数字技术有限公司 | 基于分布式数据库的全文搜索方法及*** |
US11194804B2 (en) | 2017-12-05 | 2021-12-07 | Walmart Apollo, Llc | System and method for an index search engine |
CN114710501A (zh) * | 2022-05-30 | 2022-07-05 | 武汉四通信息服务有限公司 | 服务请求处理方法、装置、服务器及计算机可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202084034U (zh) * | 2011-05-12 | 2011-12-21 | 苏州同程旅游网络科技有限公司 | 分布式搜索*** |
-
2012
- 2012-05-18 CN CN2012101542709A patent/CN103425673A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202084034U (zh) * | 2011-05-12 | 2011-12-21 | 苏州同程旅游网络科技有限公司 | 分布式搜索*** |
Non-Patent Citations (2)
Title |
---|
TERRY: ""Lucene和分布式"", 《新浪博客》 * |
谭文堂等: ""基于Lucene.Net的分布式全文检索***"", 《计算机应用与软件》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955498A (zh) * | 2014-04-22 | 2014-07-30 | 北京联时空网络通信设备有限公司 | 一种搜索引擎创建方法及装置 |
CN106484694A (zh) * | 2015-08-25 | 2017-03-08 | 杭州华为数字技术有限公司 | 基于分布式数据库的全文搜索方法及*** |
CN106484694B (zh) * | 2015-08-25 | 2019-09-20 | 杭州华为数字技术有限公司 | 基于分布式数据库的全文搜索方法及*** |
US11194804B2 (en) | 2017-12-05 | 2021-12-07 | Walmart Apollo, Llc | System and method for an index search engine |
CN114710501A (zh) * | 2022-05-30 | 2022-07-05 | 武汉四通信息服务有限公司 | 服务请求处理方法、装置、服务器及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220147488A1 (en) | System And Method For Synchronizing File Systems With Large Namespaces | |
US9892151B2 (en) | Database system and method | |
US8572136B2 (en) | Method and system for synchronizing a virtual file system at a computing device with a storage device | |
US9124612B2 (en) | Multi-site clustering | |
CN101601029B (zh) | 数据对象搜索和检索 | |
US9015126B2 (en) | Method and apparatus for eventually consistent delete in a distributed data store | |
US9235594B2 (en) | Synchronizing updates across cluster filesystems | |
CN102981933B (zh) | 物联网感知层的数据增量备份方法及*** | |
US20150339308A1 (en) | Managing site-based search configuration data | |
US20060074964A1 (en) | Index processing | |
CN103002027A (zh) | 基于键值对***实现树形目录结构的数据存储***及方法 | |
CN101243447A (zh) | 可搜索备份 | |
CN107181686B (zh) | 路由表的同步方法、装置及*** | |
CN105956123A (zh) | 基于局部更新软件的数据处理方法及装置 | |
CN104217174A (zh) | 分布式文件安全存储***及其存储方法 | |
WO2018118287A1 (en) | Method and system for maintaining and searching index records | |
US20150006485A1 (en) | High Scalability Data Management Techniques for Representing, Editing, and Accessing Data | |
CN107291876A (zh) | 一种分布式数据管理方法 | |
CN103425673A (zh) | 基于lucene的索引同步搜索方法及其装置 | |
CN202650007U (zh) | 索引同步构架装置 | |
CN116821232A (zh) | 一种数据同步方法及相关装置 | |
JP5685213B2 (ja) | 差分レプリケーションシステム、マスターデータベース装置、及びスレーブデータベース装置 | |
US20060085481A1 (en) | File index processing | |
US20200301788A1 (en) | Distributed model for data ingestion | |
CN116955417A (zh) | 数据多表联合检索的优化方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131204 |
|
RJ01 | Rejection of invention patent application after publication |