I'm running into a problem trying to read data from a column family that
includes a number of collections.
Cluster details:
4 nodes running 1.2.6 on VMs with 4 cpus and 7 Gb of ram.
raid 0 striped across 4 disks for the data and logs
each node has about 500 MB of data currently loaded
Here is the schema:
create table user_scores
(
user_id varchar,
post_type varchar,
score double,
team_to_score_map map<varchar, double>,
affiliation_to_score_map map<varchar, double>,
campaign_to_score_map map<varchar, double>,
person_to_score_map map<varchar, double>,
primary key(user_id, post_type)
)
with compaction =
{
'class' : 'LeveledCompactionStrategy',
'sstable_size_in_mb' : 10
};
I used the leveled compaction strategy as I thought it would help with read
latency…
Here is a trace of a simple select against the cluster when it had nothing else
was reading or writing (cpu was < 2%):
activity |
timestamp | source | source_elapsed
-------------------------------------------------------------------------+--------------+----------------+----------------
execute_cql3_query |
05:51:34,557 | 100.69.176.51 | 0
Message received from /100.69.176.51 |
05:51:34,195 | 100.69.184.134 | 102
Executing single-partition query on user_scores |
05:51:34,199 | 100.69.184.134 | 3512
Acquiring sstable references |
05:51:34,199 | 100.69.184.134 | 3741
Merging memtable tombstones |
05:51:34,199 | 100.69.184.134 | 3890
Key cache hit for sstable 5 |
05:51:34,199 | 100.69.184.134 | 4040
Seeking to partition beginning in data file |
05:51:34,199 | 100.69.184.134 | 4059
Merging data from memtables and 1 sstables |
05:51:34,200 | 100.69.184.134 | 4412
Parsing select * from user_scores where user_id='26257166' LIMIT 10000; |
05:51:34,558 | 100.69.176.51 | 91
Peparing statement |
05:51:34,558 | 100.69.176.51 | 238
Enqueuing data request to /100.69.184.134 |
05:51:34,558 | 100.69.176.51 | 567
Sending message to /100.69.184.134 |
05:51:34,558 | 100.69.176.51 | 979
Request complete |
05:51:54,562 | 100.69.176.51 | 20005209
You can see that I increased the timeout and it still fails. This seems to
happen with rows that have maps with a larger number of entries. It is very
reproducible with my current data set.
Any ideas on why I can't query for a row?
Thanks!
Paul