Details
-
Improvement
-
Status: Resolved
-
Low
-
Resolution: Fixed
-
None
-
Docs
Description
It seems an unnecessary oversight that we don't compress the commit log. Doing so should improve throughput, but some care will need to be taken to ensure we use as much of a segment as possible. I propose decoupling the writing of the records from the segments. Basically write into a (queue of) DirectByteBuffer, and have the sync thread compress, say, ~64K chunks every X MB written to the CL (where X is ordinarily CLS size), and then pack as many of the compressed chunks into a CLS as possible.
Attachments
Attachments
Issue Links
- blocks
-
CASSANDRA-6018 Add option to encrypt commitlog
- Resolved
-
CASSANDRA-8771 Remove commit log segment recycling
- Resolved
- is depended upon by
-
CASSANDRA-8634 Multi-thread commit log compression
- Open
- is duplicated by
-
CASSANDRA-7994 Commit logs on the fly compression
- Resolved
-
CASSANDRA-4148 Explore commitlog compression
- Resolved
- is related to
-
CASSANDRA-8729 Commitlog causes read before write when overwriting
- Resolved
-
CASSANDRA-9096 Improve ByteBuffer compression interface
- Resolved
-
CASSANDRA-9095 Compressed commit log should measure compressed space used
- Resolved