Cassandra 的一个常见用例是将数据存储在动态创建的列族的列名中。在这种情况下,不需要行值本身,通常的做法是在那里存储空值。但是,在处理 Hector 时,似乎无法插入空值,因为 Hector HColumnImpl 在列的构造函数中进行了显式的空检查:
public HColumnImpl(N name, V value, long clock, Serializer<N> nameSerializer,
Serializer<V> valueSerializer) {
this(nameSerializer, valueSerializer);
notNull(name, "name is null");
notNull(value, "value is null");
this.column = new Column(nameSerializer.toByteBuffer(name));
this.column.setValue(valueSerializer.toByteBuffer(value));
this.column.setTimestamp(clock);
}
有什么方法可以通过 Hector 插入空值?如果不是,那么在您不关心列值并且只需要它们的名称的情况下,最佳实践是什么?