Cassandra cli: конвертирует шестнадцатеричные значения в понятный человеку формат - PullRequest
9 голосов
/ 12 января 2011

Я начинаю с , и когда я запускаю list или get команды в , я получаю следующие результаты:

[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'.

Как отобразить значения в удобочитаемом формате?

1 Ответ

20 голосов
/ 12 января 2011

По умолчанию имена столбцов и значения столбцов в Cassandra не имеют типа, они являются только байтовыми массивами.Если вы установите класс компаратора (тип имени столбца) или класс проверки (тип значения столбца), CLI подхватит это и покажет вам типы данных в разумном формате.шестнадцатеричной версии байтового массива.

Если вам не нужна эта фактическая типизация данных, вы можете сказать 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 автоматически использует эту информацию.

...