Cassandra CLI:ヘックス値を人間の読み取り可能な形式に変換する
-
10-10-2019 - |
質問
最初からです カサンドラ, 、そして私が走るとき list
また get
コマンドイン 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」のような値だけを見る。
人間の読み取り可能な形式で値を表示するにはどうすればよいですか?
解決
デフォルトでは、列名と列の値はカサンドラにタイプがなく、それらはバイト配列のみです。あなたが設定した場合 コンパレータクラス (列名タイプ)または 検証クラス (列値の種類)、CLIはこれをピックアップし、バイト配列の16進バージョンではなく、賢明な形式でデータ型を表示します。
この実際のデータタイピングが必要ない場合は、CLIに、列名または値が特定のデータ型であると仮定するように指示できます。 assume
指図。キーにはデータ型がないので、 assume
いくつかのデータ型を使用したい場合は、そこで使用する必要があります。
参照のための想定に関するヘルプ情報は次のとおりです。
[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はこの情報を自動的に使用します。
所属していません StackOverflow