[英]Optimal Elasticsearch Index Shards with high Reads and very low data
我正在关注有关 Elasticsearch 索引的“选择分片数量”的 AWS 文档。
我的 ES 索引读取 TPS 将非常高(大约 1300 TPS,并且可以增加到 6500 TPS),但是将出现的数据量将非常少(小于 GB)。
问题:
In Elasticsearch, each query is executed in a single thread per shard. Multiple shards can however be processed in parallel, as can multiple queries and aggregations against the same shard.
In Elasticsearch, each query is executed in a single thread per shard. Multiple shards can however be processed in parallel, as can multiple queries and aggregations against the same shard.
. 如果上面的理解是正确的,如果我只有一个分片,所有的请求将在一个数据节点上单线程。 因此不能实现水平缩放。由于数据量很小,并且您需要非常高的吞吐量,因此我会选择拥有 1 个主节点和与节点数量一样多的副本 - 1(它将保存主节点)。 现在节点的数量取决于。 您必须进行测试,但您可以使用 3 个节点的 go(这是一种常见的弹性/高性能首次设置)。 所以总共有 1 个主副本和 2 个副本。 检查该设置并尝试对其进行压力测试。
对于压力测试,您可以使用rally ,这是 elasticsearch 在测试新版本时使用的框架。
这是一个有趣的场景,是的,提供的大部分信息都很好,只是想补充以下几点:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.