You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Constance Eustace (Jira)" <ji...@apache.org> on 2020/12/10 17:23:00 UTC

[jira] [Created] (CASSANDRA-16326) Cloud/AWS - use local instance stores for reads and mirror sstables to EBS

Constance Eustace created CASSANDRA-16326:
---------------------------------------------

             Summary: Cloud/AWS - use local instance stores for reads and mirror sstables to EBS
                 Key: CASSANDRA-16326
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-16326
             Project: Cassandra
          Issue Type: New Feature
            Reporter: Constance Eustace


Using instance stores for cassandra in AWS is difficult because instance restart involves a node reconstruction.

EBS has gotten better, but still suffers from restrictions in IOPS and more importantly, overall network bandwidth to the EBS subsystem.

If we could view the instance store as an actively managed sstable cache that is replicated to a mirrored ebs volume, we could utilize it for improved read performance. 

Flushing: a flush would flush to both the instance local ssd and to the ebs volume. Commitlogs are only removed once the flush to the ebs volume is completed.

Compaction: compaction would perform the sstable merge work on the instance local store with its vastly higher throughput. Once calculated, the sstables are only switched over once we have the compacted table mirrored. 

Read path: redirect all reads to instance local store sstables for servicing.

Write path is normal to the commitlog, and is impacted with the additional flush mechanics.

On instance restart, cassandra has to know that the instance store is cleared and needs to be warmed. This would trigger either a throttled copy and/or as sstables are read they are mirrored to the instance local store. 

I'm thinking this may become particularly important as extremely high performance SSDs like Intel's XPoint develops. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org