-
private String id :文档ID,所谓的文档,类似于关系数据库的行,id,类似于关系数据库的主键ID。
-
private String routing:分片值,默认为id的值,elasticsearch的分片路由算法为( hashcode(routing) % primary_sharding_count(主分片个数) )。
-
private String parent:
-
Script script:通过脚步更新文档。
-
private String[] fields:指定更新操作后,需要返回的文档的字段信息,默认为不返回,已废弃,被fetchSourceContext取代。
-
private FetchSourceContext fetchSourceContext:执行更新操作后,如果命中,需要返回_source的上下文配置,与fields的区别是fetchSourceContext支持通配符表达式来匹配字段名,其详细已经在《Elasticsearch Document Get API详解、原理与示例》中详细介绍过。
-
private long version = Versions.MATCH_ANY:版本号。
-
private VersionType versionType = VersionType.INTERNAL:版本类型,分为内部版本、外部版本,默认为内部版本。
-
private int retryOnConflict = 0:更新冲突时重试次数。
-
private RefreshPolicy refreshPolicy = RefreshPolicy.NONE:刷新策略。NONE:代表不重试;
-
private ActiveShardCount waitForActiveShards = ActiveShardCount.DEFAULT:执行操作之前需要等待激活的副本数,已在《Elasticsearch Document Get API详解、原理与示例》中详细介绍。
-
private IndexRequest upsertRequest:使用该 字段进行更新操作,如果原索引不存在,则更新,类似于saveOrUpdate操作,该操作需要
Elasticsearch Document Update API详解、原理与示例,nginx高可用架构
最新推荐文章于 2024-07-25 18:20:01 发布
本文深入解析了Elasticsearch的Document Update API,包括Script脚本更新、部分字段更新、检测空更新(noop检测)和 Upsert 操作。介绍了核心参数如retry_on_conflict、routing等,并提供了Java API的使用示例,展示了常规更新、noop检测及不开启noop时的更新效果。
摘要由CSDN通过智能技术生成