Search code examples
javacassandrahectorcassandra-2.0cassandra-cli

How to get multiple rows key values from counter column family in Cassandra .


I am new bie in cassandra and i want to fetch multiple row keys in column counter family,just like MultigetSliceQuery.is it possible or not ??? for example my colunfamily definition is

create column family MyCounters 
with default_validation_class=CounterColumnType 
and comparator=UTF8Type;

and data structure is

RowKey:111111
=>name=like, value=2222
=>name=share, value=2542
=>name=comment, value=3532

RowKey:111112
=>name=like, value=2542
=>name=share, value=25524
=>name=comment, value=32

RowKey:111113
=>name=like, value=22
=>name=share, value=22
=>name=comment, value=32

RowKey:111114
=>name=like, value=22
=>name=share, value=542
=>name=comment, value=332

RowKey:111115
=>name=like, value=949
=>name=share, value=226
=>name=comment, value=342

now i want to fetch all row keys using multi getslice query.it is possible to fetch record using multiget slice query or any other query?


Solution

  • finally i got the solution

    MultigetSliceCounterQuery<String, String> query=HFactory.createMultigetSliceCounterQuery(keyspace, se, se);
    query.setColumnFamily("MyCounters").setKeys(list).setRange(null, null, false, 3);
    CounterRows<String,String> resultRows1 = query.execute().get();
    
    for (CounterRow<String, String> row : resultRows1) {
        System.out.println("Row Key "+ row.getKey());
        for (HCounterColumn<String> col : row.getColumnSlice().getColumns())
            System.out.println("column Name "+col.getName()+"column value "+col.getValue());
        }
    }