incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jonathan Ellis <jbel...@gmail.com>
Subject Re: order of index expressions
Date Mon, 07 Feb 2011 22:55:44 GMT
On Sun, Feb 6, 2011 at 11:03 AM, Shaun Cutts <shaun@cuttshome.net> wrote:
> What I think you should be doing is the following: open iterators on the matching keys
for each of the indexes; the inside loop would pick an iterator at random, and pull a match
from it. This would assure that the expected number of entries examined is a small multiple
(# of other indexes) of the index with the most "precision".

Isn't this a bad approximation of performing an intersection by
iterating through each index results (which, since they return in
sorted order, can be done without horrible memory cost)?

I'm not opposed to doing that.  But I have no idea how to guess when
that is better than the current inner-loop method.

> I know you have a new type of index in the works... but it doesn't look like "trunk"
has any modifications for "scan", and presumably the strategy I just mentioned is pretty general
(not depending on histograms, etc). Does it sound like a good idea?

I think you're thinking of
https://issues.apache.org/jira/browse/CASSANDRA-1472, and my
understanding is that the bitmap approach basically does what you want
only faster.

-- 
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of DataStax, the source for professional Cassandra support
http://www.datastax.com

Mime
View raw message