Elasticsearch 设置默认值的三种方式,2024年Java春招面试经历

是借助索引设计层面在 setting 中关联 default_pipeline 实现的。

实现方式相对简单,能保证用户在设置索引的前提下,用户只关注写入数据,其他后台预处理管道帮助实现细节。

引申一下,针对开篇提到的第二个问题:

  • create_time 借助 pipeline 管道预处理 set processor 实现即可。

PUT _ingest/pipeline/create_time_pipeline

{

“description”: “Adds create_time timestamp to documents”,

“processors”: [

{

“set”: {

“field”: “_source.create_time”,

“value”: “{ {_ingest.timestamp}}”

}

}

]

}

DELETE my_index_0003

PUT my_index_0003

{

“settings”: {

“index.default_pipeline”: “create_time_pipeline”

}

}

POST my_index_0003/_doc/1

{}

GET my_index_0003/_search

  • update_time 自己维护更新,业务更新的时刻通过代码或者脚本加上时间戳就可以。

3.2 方案 二:update_by_query 通过更新添加默认值


POST customer/_doc/2

{

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值