Самый простой способ вставить данные в новую базу данных Cassandra с помощью Hector API?

Я просмотрел множество примеров по вставке данных в базу данных Cassandra и каждый раз получаю исключение о несконфигурированных семействах столбцов.

Exception in thread "main" me.prettyprint.hector.api.exceptions.HInvalidRequestException: InvalidRequestException(why:unconfigured columnfamily TestColumnFamily)
    at me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:45)
    at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:252)
    at me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:97)
    at me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)
    at me.prettyprint.cassandra.model.MutatorImpl.insert(MutatorImpl.java:69)
    at CassandraInterface.main(CassandraInterface.java:101)
Caused by: InvalidRequestException(why:unconfigured columnfamily TestColumnFamily)
    at org.apache.cassandra.thrift.Cassandra$batch_mutate_result.read(Cassandra.java:19477)
    at org.apache.cassandra.thrift.Cassandra$Client.recv_batch_mutate(Cassandra.java:1035)
    at org.apache.cassandra.thrift.Cassandra$Client.batch_mutate(Cassandra.java:1009)
    at me.prettyprint.cassandra.model.MutatorImpl$3.execute(MutatorImpl.java:246)
    at me.prettyprint.cassandra.model.MutatorImpl$3.execute(MutatorImpl.java:243)
    at me.prettyprint.cassandra.service.Operation.executeAndSetResult(Operation.java:103)
    at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:246)
   ... 4 more

Итак, я посмотрел, как их настроить, и обнаружил, что

    BasicColumnFamilyDefinition cfdef = new BasicColumnFamilyDefinition();
    cfdef.setKeyspaceName(keyspaceName);
    cfdef.setName(columnFamilyName);
    cfdef.setKeyValidationClass(ComparatorType.UTF8TYPE.getClassName());
    cfdef.setComparatorType(ComparatorType.UTF8TYPE);

Это не настраивает семейство столбцов.

Все примеры, которые я нашел, являются фрагментами без какого-либо контекста, поэтому я не знаю, что импортировать или настраивать. Кроме того, некоторые примеры, по-видимому, смешивают Hector API v2 и оригинальный Hector API, поэтому, когда я их использую, я получаю ошибки компилятора «класс не найден» или «функция не найдена».

5
задан user1258361 12 April 2012 в 17:16
поделиться