锁定弹性搜索

时间:2015-09-07 13:27:03

标签: multithreading elasticsearch locking multiprocessing database-locking

我试图在谷歌上找到但没有成功。

任何人都可以解释弹性搜索在什么级别锁定来处理多线程或多进程环境?

是索引还是doctype还是doc-type中的特定文档?

1 个答案:

答案 0 :(得分:4)

答案不是以上所述。 Elasticsearch基于Lucene,从v4.0(Elasticsearch v1.0)开始使用lockless concurrent updates。因为没有锁,如果应用程序需要同时更新同一条记录,则必须依赖optimistic concurrency control

但这并不意味着Elasticsearch中没有锁。一些全球运作必须以集中的方式进行。例如,如果多个客户端尝试同时创建具有相同名称的索引,则只有其中一个会成功,因为此操作会影响群集状态,因此会在单个线程上的主节点上执行。