DBを含むプロジェクトを開始しようとしていますNOSQL DBで使用されるべきもの(Hadoop、MongoDB、Cassandraなど)に準拠しています。その一方で、GrailsをWebプラットフォームとして使用したいと思っています。そのため、誰かが彼/彼女の経験に私を啓発することができたら私は感謝します。
回答:
回答№1は5それはあなたの要求、あなたのプロジェクトの種類などに依存しますが、grailsには依存しません。あなたは本当に異なった技術を指定しました、そしてすべては彼ら自身の長所と短所を持っています。
まず第一に:
- Hadoopは単なる分散ファイルストレージです。しかし、その上にHBaseと呼ばれるキー値のnosql dbがあり、ビッグデータ処理に最適です。
- MongoDBはドキュメント指向のストレージで、大量のスキーマのないデータを保存する必要がある状況に適しています
- Cassandraはキーバリューの柱状データベースで、データの構造を定義して定義している場合に最適です。
だから、それはgrailsについてではなく、あなたが使う必要があるものについてであり、そしてあなたが適切なストレージを選んだ後に初めて、あなたはWebフレームワークを見る必要がある
読んでください CAPについて、各ストレージについて、比較する モンゴブとカサンドラ、すでにたくさんあります 質問 それについて
PSおそらくあなたはGrailsと共に、Javaドライバを持っているNoSQLストレージのどれでも使うことができます。しかし、GORMのようないくつかのgrails機能は切り捨てられるでしょう。 GORMがリレーショナルモデル用に最適化されているというだけの理由で。
がある モンゴブ・モルフィア 例えばプラグインはMongodDBにゴーム風の機能を提供しますが、それは非常に限られています。
回答№2のための7
個人的には、検索対象があるNOSQLデータベースに検索を限定する Grailsプラグイン。そのリストの中で、私は(SpringSourceによって)公式にサポートされているものを強く支持するでしょう。これにより、選択が少なくなります。
- レディス
- Gemfire
- MongoDB
最終的な選択をするために、私は以下のような要因を考えます。
- コミュニティの規模
- プロジェクトの成熟度と採用
- あなたの個人的な経験