Лучшая библиотека Cassandra/оболочка для Python? - программирование
Подтвердить что ты не робот

Лучшая библиотека Cassandra/оболочка для Python?

Я нашел lazyboy и pycassa - возможно, есть и другие. Я видел много сайтов, рекомендующих лазыбой. IMHO проект кажется мертвым, см. https://www.ohloh.net/p/compare?project_0=pycassa&project_1=lazyboy

Так какой лучший вариант для нового проекта? Спасибо.

4b9b3361

Ответ 1

Проект Cassandra рекомендует, чтобы новые проекты использовали CQL для нескольких версий сейчас, а с появлением CQL 3 в Cassandra 1.1 я определенно рекомендую пойти на это. Преимущества включают более знакомый синтаксис, если вы использовали SQL раньше, и общность интерфейса между различными языковыми CQL-драйверами. CQL - это CQL, независимо от того, используете ли вы его из Java, Python, Ruby, Node.js или что-то еще. Драйверу не нужно поддерживать столько же, сколько полные клиентские библиотеки Cassandra, поэтому потребности в обслуживании и меньше зависят от авторов клиентов.

Драйвер Python CQL находится на GitHub: datastax/python-driver. (Предыдущие выпуски были в Google Code.)

Информацию о CQL см. в Datastax полностью через документы для CQL 2, сообщение как сделать эффективные модели данных с CQL 3 и сообщение что нового в CQL 3.

Также имеется полная ссылка на CQL 3, которая ожидает утверждения в официальном репозитории Cassandra; пока он ждет, вы сможете прочитать его здесь, в gitub pcmanus.

Все, что сказало, хотя, если вы предпочитаете не использовать CQL, Pycassa действительно лучше поддерживается и должна иметь хорошую поддержку в течение некоторого времени.

Ответ 2

Я бы пошел с pycassa. Мы использовали его довольно долго и хорошо работаем.

Ответ 3

В настоящий момент я также использую pycassa, и я передаю результаты colander, который перехватывает некоторые модели (модели) результаты запроса, полученного с помощью pycassa.

Это похоже на то, что предлагает pycassa.columnfamilymap, но я могу направить "имитировать" ORM, а также создавать/проверять формы с использованием той же "модели (ов)" через deform

Однако, если появится какая-то "реальная ORM", написанная над CQL, я бы переключился на нее, но на данный момент это решение, которое я нашел. Если у кого-то есть лучший, я бы с большим интересом рассматривал его.

Ответ 4

Если вы используете более старую версию Cassandra (в частности, говоря о 1.0.8 здесь), пожалуйста, не используйте CQLSH. Я использую CQLSH и получаю неправильные данные, которые несовместимы с тем, что я получаю от cassandra-cli. Я попытался использовать ремонт nodetool, очистить и т.д., Но получить ошибки Error connection to remote JMX agent!. Я также абсолютно уверен, что данные cassandra-cli верны.

Какая куча дерьма...

EDIT:

Оказывается, я использовал разные версии Cassandra на стороне клиента и сервера. Я думал, что это будет обратно совместимо, но, видимо, это не так.