HBase如何知道一行是否包含特定的列?例如,考虑以下情况:
Scan s = new Scan();
s.setStartRow ( Bytes.toBytes(“R1”) );
s.setStopRow ( Bytes.toBytes(“R2”) );
s.addColumn( STAT_FAM, Bytes.toBytes(“S500”) );
s.addColumn( STAT_FAM, Bytes.toBytes(“S2500”) );
提前感谢!
Hfile的KeyValue由以下内容组成:
<keylength> <valuelength> <key> <value>
键分解为:
<rowlength> <row> <columnfamilylength> <columnfamily> <columnqualifier> <timestamp> <keytype>
它将在一起
<keylength> <valuelength> <key> <rowlength> <row> <columnfamilylength> <columnfamily> <columnqualifier> <timestamp> <keytype> <value>
类名:org.apache.hadoop.hbase.filter.SingleColumnValueFilter
if (!keyValue.matchingColumn(this.columnFamily, this.columnQualifier)) {
return ReturnCode.INCLUDE;
}
if (filterColumnValue(keyValue.getBuffer(), keyValue.getValueOffset(), keyValue.getValueLength())) {
return this.latestVersionOnly? ReturnCode.NEXT_ROW: ReturnCode.INCLUDE;
}
和org.apache.hadoop.hbase.KeyValue类。
/**
*
* @param family column family
* @param qualifier column qualifier
* @return True if column matches
*/
public boolean matchingColumn(final byte[] family, final byte[] qualifier) {
int rl = getRowLength();
int o = getFamilyOffset(rl);
int fl = getFamilyLength(o);
int ql = getQualifierLength(rl,fl);
if (!Bytes.equals(family, 0, family.length, this.bytes, o, fl)) {
return false;
}
if (qualifier == null || qualifier.length == 0) {
if (ql == 0) {
return true;
}
return false;
}
return Bytes.equals(qualifier, 0, qualifier.length,
this.bytes, o + fl, ql);
}
Image credit: Cloudera-blog
问题内容: 如何知道一个字符串是否包含重音? 问题答案: 在列表中添加您想要的任何重音
问题内容: 我正在尝试确定Pandas列中是否有一个具有特定值的条目。我试图用来做到这一点。我以为这是行得通的,除非当我向它提供一个我不知道的值时,它仍然返回。当我将一个子集添加到仅包含与缺少的ID匹配的条目的数据框时,显然其中没有条目。如何确定Pandas数据框中的列是否包含特定值,为什么我的当前方法不起作用?)。 问题答案: Series的值检查值是否在索引中: 一种选择是查看它是否具有唯一值
问题内容: 控制台说“假”。我有一个ArrayList,我无法检查它是否包含特定的String数组。怎么办,为什么? 问题答案: 使用方法实现检查对象是否相等。但是,对于数组,等效于引用相等。即翻译为。 在上面,传递给方法的将创建一个 新 数组,该数组与最初添加到中的数组不同。 一种检查方法是遍历中的每个数组,并使用以下命令检查是否相等: 另一种方法是从Apache 使用。
我想找到属性中的是否包含某个值。然后我想获取包含该值的条目的索引。
下面是我要做的:我有一些,如果列表包含特定字符串,我想打印一条语句,否则抛出一个异常,但当我尝试以下代码时 它遍历列表,在处,它显然找到“apple”,并立即转到块并抛出异常。我也试过下面的,但这也不起作用。 有没有一个简单的方法来做我想做的事情?
问题内容: 我在Java中使用DOM表示形式 如何区分xml标记中是否包含值或是否包含另一个嵌入式标记?例如,我可以拥有: 要么 我想做以下 如何写条件1? 问题答案: 您可以通过遍历子节点列表来测试每个子节点: 然后condition1是。 或者,您可以使用实施测试。但是,如果 是 子元素,这种方法会遍历整个片段您正在测试,并分配大量内存。