3

我是 Cassandra 的新手,我正在使用 Hector Java Client 进行写入/读取。

我有以下代码来插入值 -

Mutator<String> mutator = HFactory.createMutator(keyspaceOperator, StringSerializer.get());
mutator.insert("jsmith", stdColumnDefinition, HFactory.createStringColumn("first", "John"));

现在,当我通过 Hector 客户端取回值时 - 它可以正常工作 -

columnQuery.setColumnFamily(stdColumnDefinition).setKey("jsmith").setName("first");
QueryResult<HColumn<String, String>> result = columnQuery.execute();

但是,当我尝试从命令行 cassandra 客户端获取值时,我以字节而不是人类可读的字符串格式获取数据。有没有办法让我解决这个问题,以便我可以使用 cassandra 客户端吐出字符串 -

这是示例输出 [default@keyspaceUno] 列表 StandardUno ;

使用默认限制 100

RowKey:6a736d697468 =>(列=6669727374,值=4a6f686e,时间戳=1317183324576000)=>(列=6c617374,值=536d697468,时间戳=1317183324606000)

返回 1 行。

谢谢。

4

1 回答 1

3

您可以修改模式,以便 Cassandra 默认将列解释为字符串,或者您可以告诉 CLI 如何解释数据,无论是在一次性基础上,还是在会话的其余部分,使用“假设“ 命令。

有关示例,请参见http://www.datastax.com/docs/0.8/dml/using_cli#reading-rows-and-columns

于 2011-09-28T08:31:49.893 回答