cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Per Olesen <...@trifork.com>
Subject Re: Are 6..8 seconds to read 23.000 small rows - as it should be?
Date Fri, 04 Jun 2010 15:01:39 GMT
On Jun 4, 2010, at 4:46 PM, Jonathan Ellis wrote:

> get_slice reads a single row.  do you mean there are 23,000 columns,
> or are you running get_slice in a loop 23000 times?

Hi Jonathan, thanks for answering!

No, I do only one get_slice call.

There are 23.000 SUPER columns, which I read using get_slice with ColumnParent parameter set
to only CF name (Dashboard) and a SlicePredicate, that has "" for begin on super column name
and "" for end on super column name.

So, I do one single get_slice to get all the super-columns. This is the thrift call, that
takes approx. 6-8 secs.

I then iterate over this after the call, to extract columns for each super-column, but that
is not in my timings and it also performs no thrift calls.

Like this:

>>  ColumnParent parent = new ColumnParent("Dashboard");
>> 
>>  SlicePredicate predicate = new SlicePredicate();
>>  SliceRange sliceRange = new SliceRange();
>>  sliceRange.setCount(Integer.MAX_VALUE);
>>  sliceRange.setStart(toRawValue(""));
>>  sliceRange.setFinish(toRawValue(""));
>>  predicate.setSlice_range(sliceRange);
>> 
>>  // timing this takes 6-8 secs.
>>  return client.get_slice(
>>   "keyspace",
>>   "theusername",
>>   columnParent,
>>   slicePredicate,
>>   ConsistencyLevel.QUORUM
>>  );


Mime
View raw message