Использование Pig с Cassandra CQL3

При попытке запустить PIG для схемы Cassandra, созданной CQL3,

-- This script simply gets a row count of the given column family  
rows = LOAD 'cassandra://Keyspace1/ColumnFamily/' USING CassandraStorage();
counted = foreach (group rows all) generate COUNT($1);
dump counted;

Я получаю следующую ошибку.

Error: Column family 'ColumnFamily' not found in keyspace 'KeySpace1'

Я понимаю, что это задумано, но у меня возникли проблемы с поиском правильного метода загрузки таблиц CQL3 в PIG.

Может ли кто-нибудь указать мне в правильном направлении? Не хватает ли части документации?


person e90jimmy    schedule 18.04.2013    source источник
comment
Обновлен исходный пост   -  person e90jimmy    schedule 18.04.2013


Ответы (5)


Теперь это поддерживается в Cassandra 1.2.8.

person e90jimmy    schedule 30.07.2013

Как вы упомянули, это сделано специально, потому что, если бы бережливость была обновлена, чтобы учесть это, это поставило бы под угрозу обратную вычислимость. Вместо создания пространств ключей и семейств столбцов с помощью CQL (я предполагаю, что вы использовали cqlsh) попробуйте использовать C* интерфейс командной строки.

Взгляните также на эти вопросы:

person Lyuben Todorov    schedule 19.04.2013
comment
На самом деле это не относится к тому, как. Но я могу просто застрять на этом этапе - person e90jimmy; 19.04.2013

Согласно этому https://github.com/alexliu68/cassandra/pull/3, это похоже, что это исправление запланировано для версии 1.2.6 Cassandra. Похоже, что они пытаются выпустить это в относительно ближайшем будущем, но, конечно же, нет определенного ETA.

person Louis Simoneau    schedule 12.06.2013

Как сказал e90jimmy, он поддерживается в Cassandra 1.2.8, но у нас есть проблема при использовании типа столбца счетчика. Это было исправлено Alex Liu, но из-за проблемы регрессии в 1.2.7 патч не продвигается:

https://issues.apache.org/jira/browse/CASSANDRA-5234

Чтобы исправить это, подождите, пока 2.0 не станет готовым к производству, или загрузите исходный код, самостоятельно примените патч по приведенной выше ссылке и пересоберите cassandra .jar. У меня уже работало...

person marcostrama    schedule 31.07.2013

Лучший способ получить доступ к таблицам Cql3 в Pig — использовать обработчик CqlStorage.

Синтаксис похож на то, что у вас есть выше

row = Load 'cql://Keyspace/ColumnFamily/' Using CqlStorage()

Дополнительная информация в записи блога разработчиков

person RussS    schedule 03.09.2013