3

Cassandra 0.8.0 を使用しています。

Cassandra-Cli を使用して既存の SuperColumn に値を追加する方法がわかりません。例: キースペースに以下を追加しました

create column family authors
with comparator = UTF8Type and subcomparator = UTF8Type
and default_validation_class = UTF8Type
and column_metadata = [{
    column_name: tags, validation_class: UTF8Type},
    {column_name: url, validation_class:UTF8Type},
    {column_name: title, validation_class: UTF8Type},
    {column_name: publisher, validation_class: UTF8Type},
    {column_name: email, validation_class: UTF8Type}];

このスーパー列に行を追加してみました:(入力)[default@testspace] set authors[1]['1']['url'] = 'www.henry.com';

(出力)[default@testspace] null これはエラーです^

私もこれを試します:

[default@testspace] set authors['henry']['url']['1'] = 'www.henry.com';

そして得る:

org.apache.cassandra.db.marshal.MarshalException: cannot parse 'henry' as hex bytes

Cassandra-Cli で SuperColumns を操作するための適切な構文は何ですか? cassandra-cli でスーパーカラムを使用して値を設定/取得する例を教えてください。

ありがとうございました

4

2 に答える 2

6

追加する必要があります

column_type = 'Super' and key_validation_class = UTF8Type

列ファミリーの定義に。

于 2011-07-26T21:00:24.843 に答える
0

スーパー カラムのサブカラムにセカンダリ インデックスを作成することはできません。したがって、スーパー列の使用は、サブ列の数が比較的少ないユース ケースに最適です。

于 2012-10-22T16:43:20.373 に答える