Можно ли использовать базу данных Cassandra NoSQL от Ruby? - PullRequest
1 голос
/ 21 февраля 2012

Я пытался использовать привязки Ruby для базы данных Cassandra, установив привязку:

sudo gem install cassandra

и попытавшись загрузить ее:

require 'cassandra'

К сожалению, это не удается с ошибкой:

Gem::LoadError: RubyGem version error: thrift_client(0.8.1 not ~> 0.7.0)

Я исправил это, установив устаревшую зависимость:

sudo gem install thrift_client -v "~> 0.7.0"

Но после этого возникает другая ошибка, которую я не знаю, как исправить:

LoadError: no such file to load -- thrift_client/connection

Протестировано на Ubuntu 11.10 и OSX 10.7 с Ruby 1.8.7 и 1.9.3-p0.Я что-то не так делаю или Кассандра и Руби не предназначены для совместной работы?

Ответы [ 3 ]

3 голосов
/ 21 февраля 2012

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

Я создал суть, которая должна помочь вам правильно настроить ваш проект: https://gist.github.com/1878226

2 голосов
/ 19 июня 2012

У меня и моей команды было много проблем с использованием оригинального камня Кассандры.Похоже, что этот камень был заброшен разработчиками (последний, 0.12.1, релиз состоялся 22 августа 2011 года) и не совместим с Thrift v0.8.Использование thrift v0.7 не было для нас вариантом, так как вы не можете скомпилировать его в Ubuntu, не взломав некоторые файлы .c, поэтому мы решили вместо этого использовать гем mcmire-cassandra - http://rubygems.org/gems/mcmire-cassandra.

Несмотря на то, что mcmire проделал отличную работу по исправлению оригинального гема, клиент ruby ​​для cassandra все еще отстает от конкурентов в плане предоставляемой функциональности.Если вы ожидаете высокой нагрузки и вам нужны такие функции, как пул соединений, например, вы можете рассмотреть возможность использования клиентов Python или Java, которые его поддерживают.

Надеюсь, это поможет.

0 голосов
/ 21 февраля 2012

Мне было интересно, если использование JRuby вариант для вас?В этом случае вы сможете использовать Java-клиент для Cassandra, и я надеюсь, что с ним будет и лучшая поддержка, и лучшие результаты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...