重建索引方法及装置制造方法及图纸

技术编号:23764331 阅读:29 留言:0更新日期:2020-04-11 19:02
本申请提供一种重建索引方法及装置,所述方法包括:接收携带新的索引结构的重建索引请求,确定所述重建索引请求对应的主分片,并为所述主分片创建副本分片;将所述主分片中记录的原始数据复制到所述副本分片上,并按照所述新的索引结构对所述原始数据建立索引,得到新的索引数据;删除所述主分片,并将所述副本分片切换为主分片。本申请通过将主分片的原始数据同步到对应的副本分片中,以对原始数据重建索引,而不需要外部客户端通过查询请求和写入请求,读取并写入原始数据的过程,从而减少了网络资源的消耗。

Index reconstruction method and device

【技术实现步骤摘要】
重建索引方法及装置
本申请涉及通信
,尤其涉及一种重建索引方法及装置。
技术介绍
ElasticSearch是一个基于Lucene的搜索服务器。该搜索服务器包含多个索引库,客户端首先将原始数据和索引结构写入索引库中,然后搜索服务器根据该索引结构对原始数据建立索引,得到索引数据。但当索引结构发生变化时,老的索引数据并不能满足用户的需求,搜索服务器需要对索引库的原始数据重建索引,以得到新的索引数据。在现有技术中,搜索服务器先为该老的索引库重建一个新的索引库,通过客户端读取该老的索引库中的原始数据,并将读取出来的原始数据和新的索引结构写入新的索引库中,然后根据新的索引结构对该原始数据重建索引,得到新的索引数据,并通过修改索引别名方式从该老的索引库切换到新的索引库,并删除该老的索引库。然而,由于客户端在读取和写入原始数据的过程中,都需要通过网络传输,网络资源消耗比较大,导致重建索引效率低。
技术实现思路
有鉴于此,本申请提供一种重建索引方法及装置,以解决现有的重建方式重建索引效率低的问题。根据本申请实施例的第一本文档来自技高网...

【技术保护点】
1.一种索引数据的获取方法,所述方法应用在搜索服务器上,其特征在于,所述搜索服务器包含主分片,所述主分片对应有索引结构,且记录有原始数据和索引数据,所述方法包括:/n接收携带新的索引结构的重建索引请求;/n根据所述重建索引请求对应的主分片,创建所述主分片对应的副本分片;/n在所述副本分片上写入所述主分片记录的原始数据;/n按照所述新的索引结构对所述副本分片上的原始数据建立索引,并通过状态标识对所述副本分片上的索引数据是否建立完成进行标记;/n在接收到搜索请求的情况下,若副本分片被标记为已完成索引数据的建立,则从所述副本分片上获取所述搜索请求对应的索引数据;若副本分片被标记为未完成索引数据的建立...

【技术特征摘要】
1.一种索引数据的获取方法,所述方法应用在搜索服务器上,其特征在于,所述搜索服务器包含主分片,所述主分片对应有索引结构,且记录有原始数据和索引数据,所述方法包括:
接收携带新的索引结构的重建索引请求;
根据所述重建索引请求对应的主分片,创建所述主分片对应的副本分片;
在所述副本分片上写入所述主分片记录的原始数据;
按照所述新的索引结构对所述副本分片上的原始数据建立索引,并通过状态标识对所述副本分片上的索引数据是否建立完成进行标记;
在接收到搜索请求的情况下,若副本分片被标记为已完成索引数据的建立,则从所述副本分片上获取所述搜索请求对应的索引数据;若副本分片被标记为未完成索引数据的建立,则从所述副本分片对应的主分片上获取所述搜索请求对应的索引数据。


2.根据权利要求1所述方法,其特征在于,
所述通过状态标识对所述副本分片上的索引数据是否建立完成进行标记,包括:在按照所述新的索引结构对所述副本分片上的原始数据建立索引之前,将所述副本分片的状态标识设置为第一标识;在按照所述新的索引结构对所述副本分片上的原始数据建立索引之后,将所述副本分片的状态标识设置为第二标识;
获取所述搜索请求对应的索引数据,包括:在所述副本分片的状态标识为第一标识的情况下,从所述副本分片上获取所述搜索请求对应的索引数据;在所述副本分片的状态标识为第二标识的情况下,从所述副本分片对应的主分片上获取所述搜索请求对应的索引数据。


3.根据权利要求1所述方法,其特征在于,在按照所述新的索引结构对所述副本分片上的原始数据建立索引之前,还包括:
确定所述副本分片是否存在重建索引标识;
在所述副本分片不存在重建索引标识的情况下,在所述副本分片上写入所述主分片记录的索引数据;
其中,在所述副本分片存在重建索引标识的情况下,写入所述副本分片的原始数据被用于按照所述新的索引结构建立索引。


4.根据权利要求1所述方法,其特征在于,还包括:
在所述副本分片上的索引数据完成建立后,删除主分片并将所述副本分片切换为主分片。<...

【专利技术属性】
技术研发人员:牟宣理
申请(专利权)人:杭州数梦工场科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1