...
|
...
|
@@ -155,8 +155,7 @@ public class YohoIndexServiceImpl implements IYohoIndexService, ApplicationEvent |
|
|
return Integer.valueOf(numberOfReplicas);
|
|
|
}
|
|
|
//获取索引配置的主分片数
|
|
|
int numberOfShards = MapUtils.getIntValue(indexSettings, "number_of_shards", 1);
|
|
|
return Math.max(1, numberOfDataNodes - numberOfShards);
|
|
|
return Math.max(1, numberOfDataNodes - 1);
|
|
|
} catch (Exception e) {
|
|
|
INDEX_REBUILD_LOG.error(e.getMessage(), e);
|
|
|
return 0;
|
...
|
...
|
@@ -196,6 +195,13 @@ public class YohoIndexServiceImpl implements IYohoIndexService, ApplicationEvent |
|
|
indexSettings.putAll(index.getAnalysisSettings());//设置分词器信息
|
|
|
indexSettings.put("max_result_window", "100000000");
|
|
|
indexSettings.put("number_of_replicas", this.genNumberOfReplicas(client, index.getIndexSettings()));//处理复制分片
|
|
|
|
|
|
//段合并策略
|
|
|
indexSettings.put("merge.policy.floor_segment", "2mb");
|
|
|
indexSettings.put("merge.policy.max_merged_segment", "1gb");
|
|
|
indexSettings.put("merge.scheduler.max_thread_count", 2);
|
|
|
indexSettings.put("merge.scheduler.max_merge_count",6);
|
|
|
|
|
|
client.createIndex(newRealIndexName, type, indexSettings, mappingContent);
|
|
|
// 打印索引设置
|
|
|
INDEX_REBUILD_LOG.info("rebuild [{}],step=[3.createTempIndex success],newRealIndexName = [{}], mappingContent=[{}],indexSettings=[{}]", yohoIndexName, newRealIndexName, mappingContent, indexSettings);
|
...
|
...
|
|