- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 java 和 cassandra thrift 从比较器为 LongType 的列族中获取行键。
这是我正在使用的代码:
for (ColumnOrSuperColumn column : slice) {
Column col = column.getColumn();
System.out.println("Column Name: " + new String(col.name.array()));
System.out.println("Column Name: " + new String(col.name.array(), "UTF-8"));
System.out.println("Column Name: " + new String(col.getName(), "UTF-8" ) );
}
slice 是 ColumnOrSuperColumn 对象的列表,它保存从 ColumnFamily 检索的数据。
问题是没有一个 print 语句将长列名打印为字符串。我希望这些长值作为字符串来创建 json 语句。我这里错了什么?还有其他方法可以得到预期的输出吗?
Cassandra 版本:1.1.0
最佳答案
由于比较器是LongType,所以col.name.array()的内容是long(8字节),而不是字符串。
所以你需要一个方法将8字节转换为long。由于 thrift 在底层使用 ByteBuffer,因此最简单的方法是使用:
System.out.println("Column name: " + col.name.getLong(0));
但请注意,这通常是建议不要直接使用 thrift API 而是使用更高级别的客户端来正确反序列化类型的原因。
关于java - Cassandra LongType 列名转字符串问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13506938/
我正在尝试将数据插入到具有“CompareWith”属性“LongType”的 ColumnFamily 中。但是,当尝试在数字键下插入数据时,出现节俭错误。 当使用 cassandra-cli 程序
我正在使用 java 和 cassandra thrift 从比较器为 LongType 的列族中获取行键。 这是我正在使用的代码: for (ColumnOrSuperColumn column :
(PySpark 新手) 我已经做了很多搜索并尝试了很多不同的方式,我在这里发布我的最后一次尝试: 我有如下所示的数据框: txn_dt datetime64[ns] id int64 我正在尝试使用
我尝试将长类型列插入 cassandra: Column docid = new Column(); docid.setName("docid".getBytes()
使用 cassandra,我想在列族中存储超过 2000 万行键。 我的问题是: long 和 utf8 rowKey 键之间是否存在真正的性能差异? 任何行键存储大小问题? 我的用户 key 是这样
我是一名优秀的程序员,十分优秀!