これが私が直面しているシナリオのサンプルです。この列ファミリーがあるとします。
create column family CompositeTypeCF
with comparator = 'CompositeType(IntegerType,UTF8Type)'
and key_validation_class = 'UTF8Type'
and default_validation_class = 'UTF8Type'
この列ファミリーにデータを挿入する方法について、Hector を使用したサンプル Java コードを次に示します。
Cluster cluster = HFactory.getOrCreateCluster("Test Cluster", "192.168.1.6:9160");
Keyspace keyspaceOperator = HFactory.createKeyspace("CompositeTesting", cluster);
Composite colKey1 = new Composite();
colKey1.addComponent(1, IntegerSerializer.get());
colKey1.addComponent("test1", StringSerializer.get());
Mutator<String> mutator = HFactory.createMutator(keyspaceOperator, StringSerializer.get());
Mutator<String> addInsertion = mutator.addInsertion("rowkey1", "CompositeTypeCF",
HFactory.createColumn(colKey1, "Some Data", new CompositeSerializer(), StringSerializer.get()));
mutator.execute();
これは機能し、cassandra-cli に移動してリストを作成すると、次のようになります。
$ list CompositeTypeCF;
Using default limit of 100
-------------------
RowKey: rowkey1
=> (column=1:test1, value=Some Data, timestamp=1326916937547000)
私の質問はこれです: Hector でこのデータを照会するにはどうすればよいですか? 基本的に、いくつかの方法でクエリを実行する必要があります。
- Row Key = "rowkey1" の行全体を教えてください
- 列名の最初の部分が整数値である列データを教えてください
- 列名の最初の部分が特定の範囲内にある列をすべて教えてください