cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sam Tunnicliffe (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-10124) Full support for multi-column and per-row indexes
Date Fri, 28 Aug 2015 09:34:46 GMT


Sam Tunnicliffe commented on CASSANDRA-10124:

Digging into this, there are actually several strands that can (and probably should) be pulled
out into separate issues.

* Index hinting, that is an extension to {{SELECT}} syntax to enable the user to override
the internal method of selecting an appropriate index for a given query. (CASSANDRA-10214)

* Supporting custom query expressions in {{WHERE}} clause of {{SELECT}}. Parsing and validation
of those expressions would be delegated to the custom index implementations which support
them. Decoupling this from index hinting per se would require some means of indicating the
target index for the expression, but that could be done by supplying the index name as the
argument to the expression function. (CASSANDRA-10217)

* Internally, once an index has been identified as being the one that should be used for a
given query, it should be included as part of the {{ReadCommand}} so that it can be retrieved
when needed during execution. Currently we don't do this, meaning that the index selection
process implemented in {{SIM::getBestIndexFor}} is run multiple times on both the coordinator
and each replica when performing a range command. (CASSANDRA-10215)

* Also, during offline discussions on the subject the necessity of having a distinction between
{{ROW}} and {{COLUMN}} based indexes came up a couple of times, so I've opened CASSANDRA-10216
to possibly remove that.

Having pulled out those separate tickets, leaves this to focus on just the DDL around multi-target
custom indexes. 

> Full support for multi-column and per-row indexes
> -------------------------------------------------
>                 Key: CASSANDRA-10124
>                 URL:
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Sam Tunnicliffe
>            Assignee: Sam Tunnicliffe
>              Labels: client-impacting
>             Fix For: 3.0 beta 2
> Since CASSANDRA-6717 decoupled a secondary index from a single column, we can expand
support for indexes with multiple target columns and for row-based indexes with truly dynamic
> Much of the plumbing for this has been done in CASSANDRA-7771, CASSANDRA-6717 & by
the API rework in CASSANDRA-9459. What remains is:
> * Decide on syntax for DDL statements
> * Decide on WHERE clause syntax for SELECT (there is some discussion on this in the comments
of CASSANDRA-9459)

This message was sent by Atlassian JIRA

View raw message