1

私は hbase 0.94.0 を持っています。すべてのリージョンの StartKey と EndKey を取得しようとしています。

次のコードを使用して、hbase でリージョンを取得しました。

MetaScanner ms=new MetaScanner();
System.out.println("Region of .META. "+ms.listAllRegions(config));

次の出力が生成されました。

Region of .META. [{NAME => 'Student9,,1364452609604.9955bddb298229d6b9fa749dfa7d6b40.', STARTKEY => '', ENDKEY => '0011000', ENCODED => 9955bddb298229d6b9fa749dfa7d6b40,}, {NAME => 'Student9,0011000,1364452609604.f1766f38ceabbe6400c266f99d1a9a29.', STARTKEY => '0011000', ENDKEY => '0011\x85\x85\x85', ENCODED => f1766f38ceabbe6400c266f99d1a9a29,},

ここで、テーブル内の各リージョンの startkey と endkey を取得したいと考えてい.META.ます。

どうすればいいのですか?サンプルコードを手伝ってください!

4

2 に答える 2

0

ジャワでは、

    try (HTable table = new HTable(new JobConf(HBaseConfiguration.create()), TABLE_NAME)) {
        byte[][] keys = table.getStartKeys();
        for (byte[] keyBytes : keys) {
            String key = new String(keyBytes, StandardCharsets.UTF_8);
            // first region does not have start key (is null)
            // last region does not have end key
            if (StringUtils.isNotBlank(key)) {
                System.out.println(key);
            }
        }
    }
于 2015-07-21T19:40:24.177 に答える