Details
-
Improvement
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
None
-
All
Description
The basic idea is to allow rows to get large enough that they don't have to fit in memory entirely, but can easily fit on a disk. The compaction algorithm today de-serializes the entire row in memory before writing out the compacted SSTable (see ColumnFamilyStore.doCompaction() and associated methods).
The requirement is to have a compaction method with a lower memory requirement so we can support rows larger than available main memory. To re-use the old FB example, if we stored a user's inbox in a row, we'd want the inbox to grow bigger than memory so long as it fit on disk.
Attachments
Attachments
Issue Links
- is blocked by
-
CASSANDRA-777 Extract SSTable interfaces to allow for alternative implementations
- Resolved
-
CASSANDRA-847 Make the reading half of compactions memory-efficient
- Resolved
1.
|
use long instead of int for sstable data | Resolved | Unassigned | |
2.
|
merge RowIndexed* back into SSTable* | Resolved | Jonathan Ellis |