Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 87A289C89 for ; Sat, 7 Jan 2012 23:26:02 +0000 (UTC) Received: (qmail 17899 invoked by uid 500); 7 Jan 2012 23:26:02 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 17822 invoked by uid 500); 7 Jan 2012 23:26:01 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 17814 invoked by uid 99); 7 Jan 2012 23:26:01 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Jan 2012 23:26:01 +0000 X-ASF-Spam-Status: No, hits=-2001.6 required=5.0 tests=ALL_TRUSTED,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Jan 2012 23:26:00 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id E5FC213DD7D for ; Sat, 7 Jan 2012 23:25:39 +0000 (UTC) Date: Sat, 7 Jan 2012 23:25:39 +0000 (UTC) From: "Vijay (Commented) (JIRA)" To: commits@cassandra.apache.org Message-ID: <594624493.19353.1325978739943.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <2879354.236591294559325212.JavaMail.jira@thor> Subject: [jira] [Commented] (CASSANDRA-1956) Convert row cache to row+filter cache MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/CASSANDRA-1956?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13182148#comment-13182148 ] Vijay commented on CASSANDRA-1956: ---------------------------------- How about a query cache which will cache all query's by default 1) Users can set an upper bound on the size per row (cache rejection handle) 2) Users can also say cache everything startWith="a" to endWith="x" if the query falls within. (The first time we see see for a row) We will populate the cache with the predefined query and subsequent queries which will fetch results within these limits will served from the cache and the rest will go to the disk. 3) the existing row cache is nothing but a configuration with startWith="" and endWith="" (everything in a row). Makes sense? > Convert row cache to row+filter cache > ------------------------------------- > > Key: CASSANDRA-1956 > URL: https://issues.apache.org/jira/browse/CASSANDRA-1956 > Project: Cassandra > Issue Type: Improvement > Components: Core > Reporter: Stu Hood > Assignee: Vijay > Priority: Minor > Fix For: 1.2 > > Attachments: 0001-1956-cache-updates-v0.patch, 0001-re-factor-row-cache.patch, 0001-row-cache-filter.patch, 0002-1956-updates-to-thrift-and-avro-v0.patch, 0002-add-query-cache.patch > > > Changing the row cache to a row+filter cache would make it much more useful. We currently have to warn against using the row cache with wide rows, where the read pattern is typically a peek at the head, but this usecase would be perfect supported by a cache that stored only columns matching the filter. > Possible implementations: > * (copout) Cache a single filter per row, and leave the cache key as is > * Cache a list of filters per row, leaving the cache key as is: this is likely to have some gotchas for weird usage patterns, and it requires the list overheard > * Change the cache key to "rowkey+filterid": basically ideal, but you need a secondary index to lookup cache entries by rowkey so that you can keep them in sync with the memtable > * others? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira