1
rowkey 1にはf1:c1、f1:c2の値があるとします。 ここで、rowkey 2にはf1:c1の値のみがあります。行2はf1:c2を持たない。Hbase:行に特定の列ファミリがあったかどうかを確認する方法?
このような行(列が移入されていない行)はどのように認識できますか?あなたはこのようにしてみてくださいその行から知りたい
rowkey 1にはf1:c1、f1:c2の値があるとします。 ここで、rowkey 2にはf1:c1の値のみがあります。行2はf1:c2を持たない。Hbase:行に特定の列ファミリがあったかどうかを確認する方法?
このような行(列が移入されていない行)はどのように認識できますか?あなたはこのようにしてみてくださいその行から知りたい
...
HTable t = new HTable(conf....);
ResultScanner scanner = t.getScanner(new Scan());
for (Result rr = scanner.next(); rr != null; rr = scanner.next())
{
if (rr.getValue("YourFamily" , "YourQualifier").equals(Bytes.toBytes("d"))
{
// do some thing
} else { return; // if you want to skip } } }
result.getFamilyMap()
は、もう一つの方法です参照してください。パフォーマンスのために推奨されていません。このメソッドのドキュメントを参照してください。
ただし、HTableDescriptor.htmlは既にhasfamilyメソッドを持っています。
boolean hasFamily(byte[] familyName)
Checks to see if this table contains the given column family
私の回答は役に立ちましたか? –