cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "T Jake Luciani (JIRA)" <j...@apache.org>
Subject [jira] Updated: (CASSANDRA-1902) Migrate cached pages during compaction
Date Wed, 09 Mar 2011 18:28:59 GMT

     [ https://issues.apache.org/jira/browse/CASSANDRA-1902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

T Jake Luciani updated CASSANDRA-1902:
--------------------------------------

    Description: 
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/


  was:
Post CASSANDRA-1470 there is an opportunity to migrate cached pages from a pre-compacted CF
during the compaction process.  

First, add a method to MmappedSegmentFile: long[] pagesInPageCache() that uses the posix mincore()
function to detect the offsets of pages for this file currently in page cache.

Then add getActiveKeys() which uses underlying pagesInPageCache() to get the keys actually
in the page cache.

use getActiveKeys() to detect which SSTables being compacted are in the os cache and make
sure the subsequent pages in the new compacted SSTable are kept in the page cache for these
keys. This will minimize the impact of compacting a "hot" SSTable.

A simpler yet similar approach is described here: http://insights.oetiker.ch/linux/fadvise/



> 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: T Jake Luciani
>             Fix For: 0.8
>
>         Attachments: 0001-CASSANDRA-1902-cache-migration-impl-with-config-option.txt,
1902-formatted.txt, 1902-per-column-migration-rebase2.txt, 1902-per-column-migration.txt,
CASSANDRA-1902-v3.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

Mime
View raw message