首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spring+elaticsearch @文档注释,碎片属性动态赋值

问spring+elaticsearch @文档注释,碎片属性动态赋值
EN

Stack Overflow用户
提问于 2019-03-25 02:06:18
回答 1查看 243关注 0票数 1

我有100亿个数据,现在必须按月将其划分为12个索引,所以如果使用springboot+spring-boot-starter-data-elasticsearch,@Document注释的indexName,碎片必须实现动态赋值,现在indexName是OK动态赋值,如下面的代码所示:

代码语言:javascript
复制
@Bean
public DocumentConfig documentConfig() {
    return new DocumentConfig();
}

@Document(
         indexName = "#{documentConfig.getIndexName() == 
             null?'jan':documentConfig.getIndexName()}",
          type = "_doc",
          shards = 3,
          replicas = 1
     )

然后像这样切换索引:

代码语言:javascript
复制
documentConfig.setIndexName(name);
es.save(obj);

但是,当我创建一个新的索引时,碎片将成为默认值5。

代码语言:javascript
复制
shards = "#{documentConfig.getShards() == null? 
    3:documentConfig.getShards()}"

怎么处理呢?谢谢

EN

回答 1

Stack Overflow用户

发布于 2022-07-06 09:31:46

​

​

https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/#elasticsearc.misc.index.settings

在spring-data-elasticsearch中,按实体创建es索引(pojo @Document ),您可以通过@ can、@can、whitch需要在类路径中提供更多的设置文件来定制索引细节。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55330432

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档