I have one scylla db cluster with 9 nodes and RF=3 using amazon AWS i3en.xlarge
instance.
I'm curious if 3 i3en.3xlarge
are much better than 9 i3en.xlarge
.
So, multiple instances will allow you to scale each customer at different times and rates and will allow you to develop each solution without affecting each other.
As the name suggests, memory-optimized instances are used for memory-intensive workloads that are required to process large datasets at a fast speed. Examples of memory-intensive applications include Big Data analytics or those running on Hadoop or Apache Spark.
The compute-optimized AWS EC2 instance type is intended for running computer-intensive tasks that require many CPU resources but don't have high memory and storage requirements. This EC2 instance type provides access to many virtual processors with high performance.
One thing to note is that your account EC2 instance limits should be set to more than 20 instances per region, otherwise you could end up being unable to launch new instances when you most need them.
Full disclosure - I work on the ScyllaDB project.
Theoretically, Scylla's shard-per-core architecture means that 16 4xlarges or 4 16xlarges should perform fundamentally the same. Each vCPU performs as in independent shared-nothing shard doing its own thing. So, how those shards are configured is irrelevant.
However, in the real world, there are good reasons for scaling up, rather than scaling out. For example:
Generally speaking, our users have had better experiences with larger nodes. But the choice is yours.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With