1

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

  • 每个节点是-Xms1G -Xmx12G
  • 单一索引;索引约为 10M 文档;每个文档的大小约为 4KB,具有唯一的 ID。我在单个节点上建立了大约 6M 的索引,然后向环中添加了一个新节点并使用“移动”将新令牌分配给余额。
  • 使用所有 Solandra 默认配置 - 例如:solandra.maximum.docs.per.shard = 1048576, solandra.index.id.reserve.size = 16384, solandra.shards.at.once = 4
  • Nodetool环显示:node1 Up Normal 35.11 GB 50.00% 0,node2 Up Normal 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 节点集群中的单个节点的性能与单节点集群大致相同 - 任何想法为什么?
4

0 回答 0