0

在这里,我试图获取最大值行及其值。代替标准迭代,我想知道是否存在任何功能

Scan s = new Scan();
ResultScanner re = table.getScanner(s);
int maxVal =0;         
try{
    for (Result rr = re.next(); rr != null; rr = re.next()) {
        byte [] row = rr.getRow();
        Get g = new Get(row);
        Result r = table.get(g);                   
        String rn = Bytes.toString(r.value());
        int temp = Integer.parseInt(rn);
        if(maxVal < temp)
        maxVal = temp;
    }
    System.out.println(maxVal);
}
finally {
    re.close();
}
4

1 回答 1

0

有一个 max() 方法,但它存在于“org.apache.hadoop.hbase.client.coprocessor”中。如果你对 co-procs 没问题,那么你可以试一试。它给出了给定范围内给定列族的列的最大值。您可以在此处将第一列和最后一列作为范围并获取最大值。有关这方面的详细信息,你可以去这里

于 2012-12-20T20:28:16.437 回答