I think we're closing in on something workable.
Dropping TRANSPOSED from Gamma as redundant with respect to the
composite PRIMARY KEY definition.
Should we support column values in non-sparse rows by adding a
VALUE(column_name) section?
CREATE TABLE timeline (
user_id int,
posted_at uuid,
body string,
posted_by string,
PRIMARY KEY(user_id, posted_at, posted_by),
VALUE(body)
);
(Open to better suggestions for that keyword.)
On Thu, Dec 29, 2011 at 3:13 PM, Eric Evans <[email protected]> wrote:
> On Thu, Dec 29, 2011 at 12:04 PM, Jonathan Ellis <[email protected]> wrote:
>> I've updated the wiki page at
>> http://wiki.apache.org/cassandra/Cassandra2474 with a more in-depth
>> Background section that hopefully clears up where I'm going with this
>> sparse/dense business.
>>
>> Eric mentioned on IRC that he's uneasy about the PRIMARY KEY syntax
>> implicitly using the first element of PRIMARY KEY as the row key. We
>> could make it explicit with another WITH option to the TRANSPOSED
>> clause:
>>
>> {{{
>> CREATE TABLE timeline (
>> user_id int,
>> posted_at uuid,
>> column string,
>> value blob,
>> PRIMARY KEY(user_id, posted_at)
>> ) TRANSPOSED WITH ROW KEY(user_id)
>> }}}
>>
>> This makes things more verbose (this would be a required clause) but
>> I'm okay with that if consensus is that being explicit here is better.
>
> I think that was a reaction to an earlier iteration. Assuming that
> the only place where order matters is in that primary key definition,
> then I think it makes sense without the "... WITH ROW KEY..." bit.
>
>
>
> --
> Eric Evans
> Acunu | http://www.acunu.com | @acunu
--
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of DataStax, the source for professional Cassandra support
http://www.datastax.com