On Thu, Jun 4, 2009 at 12:33 AM, Thorsten von Eicken <t...@rightscale.com> 
wrote:
> I'm looking at the cassandra data model and operations and I'm running into
> a number of questions I have not been able to answer:
>
> - what does get_columns_since do? I thought there's only one version of a
> column stored. I'm puzzled about the "since" aspect.

this is for use with time-sorted CFs or supercolumns -- it's like a
slice by time.

> - is the Thrift interface for get_superColumn correct? It seems to me that
> "3:string columnFamily" should really be "3:string
> columnFamily_superColumnName" (I know this doesn't have any functional
> impact, just makes it hard to understand what the operation does)
>
> - is the Thrift interface for get_slice_super correct? It seems to me that
> "3:string columnFamily_superColumnName" should really be "3:string
> columnFamily"

I think you're right.

> - what does get_key_range do? It looks like it returns a list of keys, but
> why does one have to specify a list of column family names?

The CF is the unit of data storage, so it will be more efficient if
you can narrow down which CFs you are interested in keys from.  But if
you pass an empty list it will scan all of them.

> - what does touch do?

It's intended to force the index information for the key in question
into an explicit LRU cache to save a seek on the next lookup, and also
get the row data into the OS fs cache.  But the first part is buggy
and the second part works poorly with large rows so it's going to be
removed in trunk RSN.

-Jonathan

Reply via email to