行动是治愈恐惧的良药,而犹豫、拖延将不断滋养恐惧。

如何解决ES 一秒钟的事务问题?

Elasticsearch | 作者 Dalon | 发布于2022年09月23日 | 阅读数:1852

索引结构一字段是nested结构。nested的子集大概3000个左右。所以想要修改子集中某一条数据。只能先查询出该条文档。如果这时候有多个请求过来修改这条doc。那么有可能造成数据不一致。我暂时是通过加分布式锁,然后在redis中维护一个1s的事务锁完成的。不知道各位大佬有什么,好点的解决方案
已邀请:

ylcool

赞同来自:

可以用“部分更新”解决不同字段的并发更新问题。对于同一个字段的并发更新,看看ES的乐观锁机制能不能满足

Charele - Cisco4321

赞同来自:

一头雾水,完全理解不了你说的这个东东。
 
1 为什么要对这个“nested结构”做这样的处理?如果你担心并发问题,那岂不是所有索引都有并发问题,不是都要这种处理?
2 你在redis里搞一个事务锁?是如何跟es联系起来的呢?
3 “1s的事务锁”,为什么是1秒?而不是3秒或5秒?难道和索引那刷新间隔有关?
 
 
 

要回复问题请先登录注册