我在hbase中遇到一个奇怪的错误。 当我使用此过滤器时:-
SingleColumnValueFilter Filter = new SingleColumnValueFilter(CF_NAME, QF_NAME, CompareOperator.GREATER_OR_EQUAL,new BinaryComparator(Bytes.toBytes(1539340372000L)))
它不会引发任何异常,但是当我开始使用此
时new SingleColumnValueFilter(CF_NAME, QF_NAME, CompareOperator.EQUAL,
new LongComparator(1539340372000L))
我收到此错误:
org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException: org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException: 列族表在区域hbase:meta,1.1588230740中不存在 在表'hbase:meta'中,{TABLE_ATTRIBUTES => {IS_META =>'true', 协处理器$ 1 => '| org.apache.hadoop.hbase.coprocessor.MultiRowMutationEndpoint | 536870911 |'}, {NAME =>'info',BLOOMFILTER =>'NONE',VERSIONS =>'10',IN_MEMORY => 'true',KEEP_DELETED_CELLS =>'FALSE',DATA_BLOCK_ENCODING =>'NONE', TTL =>'FOREVER',COMPRESSION =>'NONE',CACHE_DATA_IN_L1 =>'true', MIN_VERSIONS =>'0',BLOCKCACHE =>'true',BLOCKSIZE =>'8192', REPLICATION_SCOPE =>'0'}“
我有一个问题,为什么它要在hbase:meta
表中进行检查,而如果我使用普通的比较器,它只会在给定的表中进行搜索。