[
https://issues.apache.org/jira/browse/CASSANDRA-6830?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Benedict resolved CASSANDRA-6830.
---------------------------------
Resolution: Duplicate
> Changes to SSTable Index file
> -----------------------------
>
> Key: CASSANDRA-6830
> URL: https://issues.apache.org/jira/browse/CASSANDRA-6830
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Benedict
> Priority: Minor
> Labels: performance
> Fix For: 3.0
>
>
> Building on the ideas introduced in CASSANDRA-6709, and _possibly_ obseleting
> them before they are introduced:
> Once we have CASSANDRA-6810, we could make the following change to the
> (current) index file: instead of producing a sorted decoratedkey file, we
> could instead generate a near\-optimal hash table of murmurhash\-of\-key \->
> position in data/(6810\-)index file. This index might permit multiple
> locations for each hash, in which case all locations would need to be
> checked, but a hash table could be built that minimises this (whilst also
> maximising compact representation on disk)
> This then might completely obviate the need for a separate key cache, as we
> simply rely on whatever buffer cache we have to map in/out the pages we need
> for our query in any index. We should be able to guarantee we only ever need
> to look at one page for any query. Once we bring page-caching in process, the
> size of the pages we actually choose to cache could be configurable which
> would bring behaviour to near same as key cache currently stands, except more
> compact, and also effectively auto-sizing itself to optimally reduce reads
> (by using more buffer cache space if it is helpful, and yielding it to other
> reads otherwise).
> The obvious disadvantage is that partition key ranges become a little more
> expensive, but (the?/)an index summary should reduce the problem here, so
> that binary search for a start point can be targeted to a few or single
> (6810\-)index page.
--
This message was sent by Atlassian JIRA
(v6.2#6252)