yes :)

On 20 May 2014, at 14:24, Jack Krupansky <j...@basetechnology.com> wrote:

> To keep the terminology clear, your “row_key” is actually the “partition 
> key”, and “wide_row_column” is actually a “clustering column”, and the 
> combination of your row_key and wide_row_column is a “compound primary key”.
>  
> -- Jack Krupansky
>  
> From: Aaron Morton
> Sent: Tuesday, May 20, 2014 3:06 AM
> To: Cassandra User
> Subject: Re: CQL 3 and wide rows
>  
> In a CQL 3 table the only **column** names are the ones defined in the table, 
> in the example below there are three column names. 
>  
>  
>>> CREATE TABLE keyspace.widerow (
>>> row_key text,
>>> wide_row_column text,
>>> data_column text,
>>> PRIMARY KEY (row_key, wide_row_column));
>>>  
>>> Check out, for example, 
>>> http://www.datastax.com/dev/blog/schema-in-cassandra-1-1.​
>  
> Internally there may be more **cells** ( as we now call the internal 
> columns). In the example above each value for row_key will create a single 
> partition (as we now call internal storage engine rows). In each of those 
> partitions there will be cells for each CQL 3 row that has the same row_key, 
> those cells will use a Composite for the name. The first part of the 
> composite will be the value of the wide_row_column and the second will be the 
> literal name of the non primary key columns.
>  
> IMHO Wide partitions (storage engine rows) are more prevalent in CQL3 than 
> thrift models.
>  
>> But still - I do not see Iteration, so it looks to me that CQL 3 is limited 
>> when compared to CLI/Hector.
> Now days you can do pretty much everything you can in cli. Provide an example 
> and we may be able to help.
>  
> Cheers
> Aaron
>  
> -----------------
> Aaron Morton
> New Zealand
> @aaronmorton
>  
> Co-Founder & Principal Consultant
> Apache Cassandra Consulting
> http://www.thelastpickle.com
>  
> On 20/05/2014, at 8:18 am, Maciej Miklas <mac.mik...@gmail.com> wrote:
> 
>> Hi James,
>>  
>> Clustering is based on rows. I think that you meant not clustering columns, 
>> but compound columns. Still all columns belong to single table and are 
>> stored within single folder on one computer. And it looks to me (but I’am 
>> not sure) that CQL 3 driver loads all column names into memory - which is 
>> confusing to me. From one side we have wide row, but we load whole into 
>> ram…..
>>  
>> My understanding of wide row is a row that supports millions of columns, or 
>> similar things like map or set. In CLI you would generate column names (or 
>> use compound columns) to simulate set or map,  in CQL 3 you would use some 
>> static names plus Map or Set structures, or you could still alter table and 
>> have large number of columns. But still - I do not see Iteration, so it 
>> looks to me that CQL 3 is limited when compared to CLI/Hector.
>>  
>>  
>> Regards,
>> Maciej
>>  
>> On 19 May 2014, at 17:30, James Campbell <ja...@breachintelligence.com> 
>> wrote:
>> 
>>> Maciej,
>>>  
>>> In CQL3 "wide rows" are expected to be created using clustering columns.  
>>> So while the schema will have a relatively smaller number of named columns, 
>>> the effect is a wide row.  For example:
>>>  
>>> CREATE TABLE keyspace.widerow (
>>> row_key text,
>>> wide_row_column text,
>>> data_column text,
>>> PRIMARY KEY (row_key, wide_row_column));
>>>  
>>> Check out, for example, 
>>> http://www.datastax.com/dev/blog/schema-in-cassandra-1-1.​
>>>  
>>> James
>>> From: Maciej Miklas <mac.mik...@gmail.com>
>>> Sent: Monday, May 19, 2014 11:20 AM
>>> To: user@cassandra.apache.org
>>> Subject: CQL 3 and wide rows
>>>  
>>> Hi *,
>>>  
>>> I’ve checked DataStax driver code for CQL 3, and it looks like the column 
>>> names for particular table are fully loaded into memory, it this true?
>>>  
>>> Cassandra should support wide rows, meaning tables with millions of 
>>> columns. Knowing that, I would expect kind of iterator for column names. Am 
>>> I missing something here?
>>>  
>>>  
>>> Regards,
>>> Maciej Miklas
>> 
>>  
> 
>  

Reply via email to