Search code examples
amazon-ec2cassandrascylla

Is one large AWS instance better than several smaller instances for the scylladb


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.


Solution

  • 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:

    • Larger nodes have better network guarantees from AWS.
    • Larger nodes have fewer noisy neighbor problems.
    • Managing a few nodes is generally easier than managing many nodes.

    Generally speaking, our users have had better experiences with larger nodes. But the choice is yours.