为什么Solandra 2节点集群执行的索引比单个节点集群更差?

时间:2012-03-22 18:40:37

标签: solrj solandra

在使用Solrj的索引测试中,2个Solandra节点的性能低于1。

  • 每个节点都是-Xms1G -Xmx12G
  • 单一索引;索引是~10M docs;每个doc大小约为4KB,具有唯一的id。我在单个节点上建立了大约6M的索引,然后在环上添加了一个新节点,并使用“移动”来分配新的令牌以进行平衡。
  • 使用所有Solandra默认配置 - 例如:solandra.maximum.docs.per.shard = 1048576,solandra.index.id.reserve.size = 16384,solandra.shards.at.once = 4
  • Nodetool环显示:node1 Up正常35.11 GB 50.00%0,node2 Up正常54.5 GB 50.00%85070591730234615865843651857942052864
  • 索引效果: 单个节点:166个docs / s 2个节点(发送到单个节点):111个docs / s 2个节点(并行发送):55个docs / s(见下面的注释)

(注意)我发送了100K的批次(一批正在建立一个SolrInputDocuments +提交列表的整个列表),当我切换到10K的批次时,98 docs / s的性能有所改善

有些问题:

  • 一般来说,对于索引和搜索,我怎样才能让Solandra在1个以上的节点上表现更好?
  • 为什么索引性能会因2个节点而不是1而降低?我什么时候应该期待性能升级?
  • 使用Solandra索引文档的建议方法是什么 - 发送到环中的单个节点或多个节点?
  • 使用Solandra查询向单个节点或多个节点发送查询请求的推荐方法是什么?
  • 将所有查询请求发送到2节点群集中的单个节点执行与单个节点群集大致相同 - 任何想法为什么?

0 个答案:

没有答案