cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rustam Aliyev (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-7637) Add CQL3 keyword for efficient lexical range queries (e.g. START_WITH)
Date Tue, 29 Jul 2014 12:45:38 GMT
Rustam Aliyev created CASSANDRA-7637:
----------------------------------------

             Summary: Add CQL3 keyword for efficient lexical range queries (e.g. START_WITH)
                 Key: CASSANDRA-7637
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7637
             Project: Cassandra
          Issue Type: Improvement
            Reporter: Rustam Aliyev


Currently, if I want to perform range query on lexical type I need to do something like this:

{code}
SELECT * FROM profile WHERE profile_id = 123 AND
                  attribute > 'interests.food.' AND
                  attribute < 'interests.food.z';
{code}

This is very efficient range query. Yet, many users who are not familiar with Thrift and storage
level implementation are unaware of this "trick".

Therefore, it would be convenient to introduce CQL keyword which will do this more simply:

{code}
SELECT * FROM profile WHERE profile_id = 123 AND
                  attribute START_WITH('interests.food.');
{code}

Keyword would have same restrictions as other inequality search operators plus some type restrictions.

Allowed types would be:
 * {{ascii}}
 * {{text}} / {{varchar}}
 * {{inet}} (?)
 * {{map<text, *>}} (same for ascii) (?)
 * {{set<text>}} (same for ascii) (?)

(?) may require more work, therefore optional



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message