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: [email protected]
For additional commands, e-mail: [email protected]