incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron Morton <aa...@thelastpickle.com>
Subject Re: Can we filter a key or a column name using regular expression?
Date Mon, 26 Jul 2010 00:04:37 GMT
Have a look at how the SliceRange works  for both get_slice and KeyRange works for get_range_slices.

You can query for things that start with a sub string but specifying a start value and an
empty end value or an end value that is the start value concatenated with the max ascii character.
Then just make multiple calls, say getting 1000 cols/rows at a time.

You cannot do a "contains" type query, it's just byte/string matching. You'll need to think
about how to store your data in a way that lets you get the same result. For example you could
store the keys in the a Column Family for "all" and a CF for ones that have a sub part. Or
your could store just "root@foo" as the key, then store columns for every child.

Not great examples but the general idea is to denormalise to support the queries.

Hope that helps
Aaron

On 26 Jul, 2010,at 01:05 AM, Miriam Allalouf <miriam.allalouf@gmail.com> wrote:

> Hi,
> I need to build a mode where I can retrieve an ordered list of objects
> sharing the same prefix and contains a certain delimiter.
>
> For example: Get all the object names that start with 'root' and
> contain '/' in it,
> given the names:
> root@abc/ddd
> roo@bbb/c
> root@pppp
>
> should return the first two names (root@abc/ddd roo@bbb/c)
>
> I can build the model such that the a lot object name is a key or a column name.
> Can we retrieve a key or a column name using such filter or other
> regular expression-like filters?
> Thanks and I will appreciate you help,
> Miriam

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
    • Unnamed multipart/related (inline, None, 0 bytes)
View raw message