Cassandra

js81xvg6  于 2021-06-15  发布在  Cassandra
关注(0)|答案(1)|浏览(393)

我正在尝试使用thrift 1.0 lib检索cassandra中一行的所有列。我在谷歌上找到了一些例子,特别是:

SliceQuery<String, String, String> sliceQuery = hectorTemplate.createSliceQuery(
    StringSerializer.get(), StringSerializer.get(), StringSerializer.get());
sliceQuery.setColumnFamily("myname");
sliceQuery.setKey("myid");
sliceQuery.setRange(null, null, false, 20);
QueryResult<ColumnSlice<String,String>> queryResult = sliceQuery.execute();
ColumnSlice<String,String> slice = queryResult.get();
List<HColumn<String, String>> retrievedColumns = slice.getColumns();
for (HColumn<String, String> column : retrievedColumns) {
    System.out.println(column.getName() +"::"+ column.getValue());
}

但是,我找不到任何关于hector对象中的参数和类型的信息??
例如,这里:

SliceQuery<String, String, String>

这里所有的类型都是字符串-它们是什么类型的?列名类型?列值类型?
然后,我们为createslicequery()指定参数:

hectorTemplate.createSliceQuery(
    StringSerializer.get(), StringSerializer.get(), StringSerializer.get());

再说一遍-那些序列化程序是用来做什么的?为什么只有3个序列化程序-第一列和最后一列是if,还有其他什么?如果我得到许多列,如何为它们指定序列化程序?
然后,我们找回

List<HColumn<String, String>>

--再说一遍,这些字符串类型是用来做什么的?如果我有一个bytestype类型的列-在哪里指定?
如果有一些像样的api文档(不仅仅是没有解释参数的方法签名),你能给我指一下吗?
谢谢!玛丽娜

vaj7vani

vaj7vani1#

万一 SliceQuery<K, C, V> ,类型参数如下:
k——键的类型
c—列名的类型
v—列值的类型
如果是 HColumn<N,V> ,类型参数为
n—列名的类型
v—列值的类型
类似于 createSliceQuery

相关问题