[英]Optimal Elasticsearch Index Shards with high Reads and very low data
I am following the AWS documentation for "Choosing the number of shards" for an Elasticsearch Index.我正在关注有关 Elasticsearch 索引的“选择分片数量”的 AWS 文档。
My Read TPS for the ES Index will be very high (around 1300 TPS, and can increase to 6500 TPS), but the amount of data which will be present will be very less (lesser than a GB).我的 ES 索引读取 TPS 将非常高(大约 1300 TPS,并且可以增加到 6500 TPS),但是将出现的数据量将非常少(小于 GB)。
Questions:问题:
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.
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.
. Since the data size is small, and you need a very high throughput, I would opt to have 1 primary and as many replicas as the number of nodes - 1 (which will hold the primary).由于数据量很小,并且您需要非常高的吞吐量,因此我会选择拥有 1 个主节点和与节点数量一样多的副本 - 1(它将保存主节点)。 Now the number of nodes depends.
现在节点的数量取决于。 You'll have to test, but you could go with 3 nodes (which is a common resilient/performant first setup).
您必须进行测试,但您可以使用 3 个节点的 go(这是一种常见的弹性/高性能首次设置)。 So 1 primary and 2 replicas in total.
所以总共有 1 个主副本和 2 个副本。 Check with that setup and try stress testing it.
检查该设置并尝试对其进行压力测试。
For the stress test you can use rally , which is the framework that elasticsearch is using when testing new releases.对于压力测试,您可以使用rally ,这是 elasticsearch 在测试新版本时使用的框架。
It's an interesting scenario, and yeah most of the information provided is quite good, just wanted to add below points:这是一个有趣的场景,是的,提供的大部分信息都很好,只是想补充以下几点:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.