public class IndexUtils extends Object
Copyright © 2022 xpc1024 All Rights Reserved
| 构造器和说明 |
|---|
IndexUtils() |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
activeReleaseIndex(org.elasticsearch.client.RestHighLevelClient client,
Class<?> entityClass,
int maxRetry)
激活最新索引
|
static void |
addDefaultAlias(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
添加默认索引别名
|
static boolean |
changeAliasAtomic(org.elasticsearch.client.RestHighLevelClient client,
String oldIndexName,
String releaseIndexName)
原子操作: 删除旧索引别名,将旧索的引别名添加至新索引
|
static boolean |
createEmptyIndex(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
创建空索引,不含字段,仅框架内部使用
|
static boolean |
createIndex(org.elasticsearch.client.RestHighLevelClient client,
EntityInfo entityInfo,
CreateIndexParam indexParam)
创建索引
|
static boolean |
deleteIndex(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
删除索引
|
static boolean |
existsIndex(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
是否存在索引
|
static boolean |
existsIndexWithRetry(EntityInfo entityInfo,
org.elasticsearch.client.RestHighLevelClient client)
追加后缀重试是否存在索引
|
static boolean |
existsIndexWithRetryAndSetActiveIndex(EntityInfo entityInfo,
org.elasticsearch.client.RestHighLevelClient client)
追加后缀重试是否存在索引,若存在,则更新当前被激活的索引名
|
static CreateIndexParam |
getCreateIndexParam(EntityInfo entityInfo)
根据配置生成创建索引参数
|
static String |
getEsFieldType(cn.easyes.common.enums.FieldType fieldType,
String typeName)
根据注解/字段类型名称获取在es中的索引类型
|
static org.elasticsearch.client.indices.GetIndexResponse |
getIndex(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
获取索引信息
|
static EsIndexInfo |
getIndexInfo(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
获取索引信息
|
static List<EsIndexParam> |
initIndexParam(EntityInfo entityInfo,
List<EntityFieldInfo> fieldList,
boolean isNested)
初始化索引参数
|
static Map<String,Object> |
initMapping(EntityInfo entityInfo,
List<EsIndexParam> indexParamList)
初始化索引mapping
|
static boolean |
isIndexNeedChange(EsIndexInfo esIndexInfo,
EntityInfo entityInfo)
判断索引是否需要变更
|
static EsIndexInfo |
parseGetIndexResponse(org.elasticsearch.client.indices.GetIndexResponse getIndexResponse,
String indexName)
解析索引信息
|
static boolean |
reindex(org.elasticsearch.client.RestHighLevelClient client,
String oldIndexName,
String releaseIndexName)
重建索引时的数据迁移,从旧索引迁移至新索引
|
static void |
saveReleaseIndex(String releaseIndexName,
org.elasticsearch.client.RestHighLevelClient client)
保存最新索引
|
static void |
supplyAsync(java.util.function.BiFunction<Class<?>,org.elasticsearch.client.RestHighLevelClient,Boolean> biFunction,
Class<?> entityClass,
org.elasticsearch.client.RestHighLevelClient client)
异步执行索引托管操作
|
public static boolean existsIndex(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
client - RestHighLevelClientindexName - 索引名public static boolean createIndex(org.elasticsearch.client.RestHighLevelClient client,
EntityInfo entityInfo,
CreateIndexParam indexParam)
client - RestHighLevelCliententityInfo - 实体信息indexParam - 创建索引参数public static boolean createEmptyIndex(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
client - RestHighLevelClientindexName - 索引名public static EsIndexInfo getIndexInfo(org.elasticsearch.client.RestHighLevelClient client, String indexName)
client - RestHighLevelClientindexName - 索引名public static org.elasticsearch.client.indices.GetIndexResponse getIndex(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
client - RestHighLevelClientindexName - 索引名public static void addDefaultAlias(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
client - RestHighLevelClientindexName - 索引名public static boolean reindex(org.elasticsearch.client.RestHighLevelClient client,
String oldIndexName,
String releaseIndexName)
client - RestHighLevelClientoldIndexName - 旧索引名releaseIndexName - 新索引名public static EsIndexInfo parseGetIndexResponse(org.elasticsearch.client.indices.GetIndexResponse getIndexResponse, String indexName)
getIndexResponse - es返回的responseindexName - 索引名public static String getEsFieldType(cn.easyes.common.enums.FieldType fieldType, String typeName)
fieldType - 注解中指定的es索引类型typeName - 字段类型public static Map<String,Object> initMapping(EntityInfo entityInfo, List<EsIndexParam> indexParamList)
entityInfo - 实体信息indexParamList - 索引参数列表public static boolean changeAliasAtomic(org.elasticsearch.client.RestHighLevelClient client,
String oldIndexName,
String releaseIndexName)
client - RestHighLevelClientoldIndexName - 旧索引releaseIndexName - 新索引public static boolean deleteIndex(org.elasticsearch.client.RestHighLevelClient client,
String indexName)
client - RestHighLevelClientindexName - 索引名public static CreateIndexParam getCreateIndexParam(EntityInfo entityInfo)
entityInfo - 配置信息public static List<EsIndexParam> initIndexParam(EntityInfo entityInfo, List<EntityFieldInfo> fieldList, boolean isNested)
entityInfo - 实体信息fieldList - 字段列表isNested - 是否嵌套public static boolean isIndexNeedChange(EsIndexInfo esIndexInfo, EntityInfo entityInfo)
esIndexInfo - es中的索引信息entityInfo - 配置中的索引信息public static boolean existsIndexWithRetryAndSetActiveIndex(EntityInfo entityInfo, org.elasticsearch.client.RestHighLevelClient client)
entityInfo - 配置信息client - RestHighLevelClientpublic static boolean existsIndexWithRetry(EntityInfo entityInfo, org.elasticsearch.client.RestHighLevelClient client)
entityInfo - 配置信息client - RestHighLevelClientpublic static void saveReleaseIndex(String releaseIndexName, org.elasticsearch.client.RestHighLevelClient client)
releaseIndexName - 最新索引名称client - RestHighLevelClientpublic static void activeReleaseIndex(org.elasticsearch.client.RestHighLevelClient client,
Class<?> entityClass,
int maxRetry)
client - RestHighLevelCliententityClass - 实体类maxRetry - 重试次数public static void supplyAsync(java.util.function.BiFunction<Class<?>,org.elasticsearch.client.RestHighLevelClient,Boolean> biFunction, Class<?> entityClass, org.elasticsearch.client.RestHighLevelClient client)
biFunction - 索引变更方法entityClass - 实体类client - RestHighLevelClientCopyright © 2022. All rights reserved.