nosql – Cassandra cli:将十六进制值转换为人类可读的格式

我从 cassandra开始,当我在 cassandra-cli运行列表或获取命令时,我得到如下结果:

[default@usersdatabase] list users;
Using default limit of 100
-------------------
RowKey: boby
=> (column=6e616d65, value=426f62, timestamp=1294780856414000)
-------------------
RowKey: edzuksm
=> (column=656d61696c, value=6d617268656c697340696e626f782e6c76, timestamp=1294780533705000)
=> (column=6e616d65, value=45647561726473, timestamp=1294780488155000)
=> (column=7375726e616d65, value=4d617268656c6973, timestamp=1294780515429000)

2 Rows Returned.

我看不懂,我只看到像’6e616d65’的值.

如何以人类可读格式显示值?

默认情况下,列名和列值在Cassandra中没有类型,它们只是字节数组.如果您设置了一个比较类(列名类型)或验证类(列值类型),则CLI将在此处接收数据,并以明文格式显示数据类型,而不是字节数组的十六进制版本.

如果您不希望实际输入数据,可以通过CLI命令假定列名或值为特定数据类型.键从不具有数据类型,因此如果要使用某些数据类型,假设必须在其中使用.

以下是假设参考的帮助信息:

[default@Keyspace1] help assume;    
assume <column_family> comparator as <type>;
assume <column_family> sub_comparator as <type>;
assume <column_family> validator as <type>;
assume <column_family> keys as <type>;

Assume one of the attributes (comparator, sub_comparator, validator or keys)
of the given column family to match specified type. Available types: bytes, integer,
long, lexicaluuid, timeuuid, utf8, ascii.
example:
assume Users comparator as lexicaluuid;

编辑:从Cassandra 0.8开始,您可以指定键的验证类,CLI自动使用此信息.

相关文章
相关标签/搜索