【问题标题】:how to get value from counter Column in cassandra with multiple row keys?如何从具有多个行键的 cassandra 中的计数器列中获取值?
【发布时间】:2014-05-13 10:37:05
【问题描述】:

我有一个包含多个计数器列的列族。现在我想代表不同的行键获取它们的值,例如 RangeSlicesQuery 或 MultigetSliceQuery,我想应用于计数器列,请在计数器列中给我让路。

【问题讨论】:

    标签: java scala hector cassandra-cli column-family


    【解决方案1】:

    它为我工作在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());
        }
    }
    

    【讨论】:

      【解决方案2】:

      根据您的 scala 标签,您可以如何在 Scala 中进行操作

          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)
          }
      

      【讨论】:

        猜你喜欢
        • 2014-05-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-27
        • 1970-01-01
        • 2019-03-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多