Ho una famiglia di colonne con più colonne contatore. Ora voglio ottenere il loro valore per conto di diverse chiavi di riga, come RangeSlicesQuery o MultigetSliceQuery, voglio applicare sulla contrononna per favore dammi il modo in counter column.come ottenere il valore dal contatore Colonna in cassandra con più chiavi di riga?
7
A
risposta
9
ha funzionato per me in java.
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());
}
}
0
come si può fare a Scala, secondo il vostro Scala tag
val query = HFactory.createMultigetSliceCounterQuery(keyspaceName, se, se)
query.setColumnFamily("counterFamily").setKeys(list).setRange(null, null, false,3)
val resultRows = query.execute().get
resultRows.map{row=>
var countStatus = new scala.collection.immutable.HashMap[S, S]()
row.getColumnSlice.getColumns.map{col=>
countStatus += (col.getName -> col.getValue)
}
println(row.getKey -> countStatus)
}