【发布时间】:2016-01-01 10:12:46
【问题描述】:
想详细了解SolrCloud的写操作,对架构有几个疑问:
【问题讨论】:
标签: solr lucene apache-zookeeper solrcloud
想详细了解SolrCloud的写操作,对架构有几个疑问:
【问题讨论】:
标签: solr lucene apache-zookeeper solrcloud
这是我的理解
1) ZooKeeper 不会向 SolrCloud 写入任何文档。 ZooKeeper 是每个 SolrCloud 节点用来存储共享配置和跟踪每个节点的共享状态以帮助选举领导者和监控副本状态的资源。 ZooKeeper 不参与对任何集合或任何更新的任何查询。 另见https://stackoverflow.com/a/19628852/277023
2) 至少对于 SolrJ 客户端而言,将节点写入哪个分片的选择是由客户端而不是领导者完成的 请参阅here 并参阅https://lucene.apache.org/solr/guide/7_0/shards-and-indexing-data-in-solrcloud.html 了解更多详情
3) 我不知道那个问题的答案
4) 如下认为写操作成功
事务日志是 Solr4 数据保证不可或缺的一部分,也是人们遇到麻烦的地方,所以让我们稍微谈谈它们。 SolrCloud中的索引流程如下: 传入的文档由节点接收并转发给适当的领导者。 从领导者那里,它们被发送到相关分片的所有副本。 副本响应他们的领导者。 领导者响应始发节点。 在所有领导者都响应后,始发节点回复客户端。 至此,集群中所有节点的所有文档都已经刷到tlog了!
来自
https://lucidworks.com/2013/08/23/understanding-transaction-logs-softcommit-and-commit-in-sorlcloud/
希望对你有帮助
【讨论】: