lazyboyとpycassaを見つけました。他にもあるかもしれません。lazyboy を推奨しているサイトをたくさん見てきました。私見プロジェクトは死んでいるようです。 https://www.ohloh.net/p/compare?project_0=pycassa&project_1=lazyboyを参照してください
では、新しいプロジェクトに最適なオプションは何でしょうか? ありがとう。
Cassandra プロジェクトは、現在いくつかのバージョンで新しいプロジェクトで CQL を使用することを推奨してきました。Cassandra 1.1 で CQL 3 が登場したので、私は間違いなくその方法をお勧めします。以前に SQL を使用したことがある場合は、より使い慣れた構文や、異なる言語の CQL ドライバー間のインターフェイスの共通性などの利点があります。CQL は、Java、Python、Ruby、Node.js などから使用するかどうかに関係なく、CQL です。ドライバーは完全な Cassandra クライアント ライブラリをサポートする必要がないため、メンテナンスの必要性が少なくなり、クライアントの作成者への依存も少なくなります。
Python CQL ドライバーは GitHub にあります: datastax/python-driver。(以前のリリースはGoogle Codeにありました。)
CQL の詳細については、CQL 2 に関する Datastax の完全なドキュメント、CQL 3 を使用して効果的なデータ モデルを作成する方法に関する投稿、およびCQL 3全体の新機能に関する投稿を参照してください。
公式の Cassandra リポジトリへの承認待ちの CQL 3 に関する完全なリファレンスもあります。待っている間、pcmanus の github で読むことができるはずです。
とはいえ、CQL を使用したくない場合は、Pycassa の方が適切に管理されており、かなり長い間適切にサポートされるはずです。
私はpycassaと一緒に行きます。私たちはかなり長い間それを使用しており、かなりうまく機能しています。
現時点では、pycassa も使用しており、結果をcolanderに渡します。これにより、pycassa で取得したクエリの結果にいくつかのモデルがフックされます。
これは pycassa.columnfamilymap が提供するものと似ていますが、ORM のようなものを直接「シミュレート」し、変形を介して同じ「モデル」を使用してフォームを生成/検証できます。
ただし、CQL で記述された「本物の ORM」が登場した場合は、それに切り替えますが、現時点では、これが私が見つけた解決策です。誰かがより良いものを持っているなら、私はそれを非常に興味深く検討します.
古いバージョンの Cassandra (ここでは特に 1.0.8 について話している) を使用している場合は、CQLSH を使用しないでください。CQLSH を使用していますが、cassandra-cli から取得したデータと一致しない誤ったデータを取得しています。nodetoolのrepairやcleanなどを使ってみたのですがError connection to remote JMX agent!
エラーが出てしまいます。また、cassandra-cli データが正しいことも絶対に確信しています。
なんてがらくたの束...
編集:
クライアント側とサーバー側で異なるバージョンの Cassandra を使用していたことがわかりました。下位互換かと思ったらそうでもないらしい。