[
https://issues.apache.org/jira/browse/CASSANDRA-1902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Pavel Yaskevich updated CASSANDRA-1902:
---------------------------------------
Attachment: CASSANDRA-1902-v9.patch
v9 adds a last improvement - skip old sstables data file page cache right after
they are replaced by compacted file.
Benchmarks comparing (current 0.7/new with migration OFF/new with migration
ON), server is the same as previously and benchmark it the same too:
{noformat}
CUR|OFF|ON
201|189|188 (write)
22 |22 |17 (read)
14 |14 |14 (read)
189|189|189 (write)
--- reads during compaction ---
CUR: 81, 30, 18, 17, ..., 59, 28, 14, 34, 40
OFF: 54, 32, 23, 15, ..., 54, 30, 18, 38, 40, 35
ON : 22, 16, 16, 16, ..., 15, 15, 28, 18, 15, 13
--- reads after compaction ---
CUR: 35, 28
OFF: 35, 22
ON : 13, 12
{noformat}
> Migrate cached pages during compaction
> ---------------------------------------
>
> Key: CASSANDRA-1902
> URL: https://issues.apache.org/jira/browse/CASSANDRA-1902
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Affects Versions: 0.7.1
> Reporter: T Jake Luciani
> Assignee: Pavel Yaskevich
> Fix For: 0.7.5, 0.8
>
> Attachments:
> 0001-CASSANDRA-1902-cache-migration-impl-with-config-option.txt,
> 1902-BufferedSegmentedFile-logandsleep.txt, 1902-formatted.txt,
> 1902-per-column-migration-rebase2.txt, 1902-per-column-migration.txt,
> CASSANDRA-1902-v3.patch, CASSANDRA-1902-v4.patch, CASSANDRA-1902-v5.patch,
> CASSANDRA-1902-v6.patch, CASSANDRA-1902-v7.patch, CASSANDRA-1902-v8.patch,
> CASSANDRA-1902-v9.patch
>
> Original Estimate: 32h
> Time Spent: 56h
> Remaining Estimate: 0h
>
> Post CASSANDRA-1470 there is an opportunity to migrate cached pages from a
> pre-compacted CF during the compaction process. This is now important since
> CASSANDRA-1470 caches effectively nothing.
> For example an active CF being compacted hurts reads since nothing is cached
> in the new SSTable.
> The purpose of this ticket then is to make sure SOME data is cached from
> active CFs. This can be done my monitoring which Old SSTables are in the page
> cache and caching active rows in the New SStable.
> A simpler yet similar approach is described here:
> http://insights.oetiker.ch/linux/fadvise/
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira