2012-01-20 5 views
1

私はJRuby + SinatraをRubyでビルドしており、Trinidad Webサーバーの上を走っています。Rubyで大容量のキャッシュに最適なソリューションは何ですか?

APIの機能の1つは、データベースから非常に大きなデータセットを取得し、中間のキャッシング/非リレーショナルDBレイヤに格納することです。これは、データベースから再構築することなく、そのデータセットの上にフィルタ/ソート/アクションを実行するためのものです。

この中間層を実装するための優れたソリューションを探しています。

私の考え:

  • は、データセットを保存するためにRiakにのような非リレーショナル・データベースを使用し、上(Cache Moneyなど)のキャッシング層を有します。

注:

  • 私たちのデータセットが
+0

からのMongoDBにアクセスできます。可能な解決策はたくさんあります。最適なものを選択するには、データのサイズとタイプ、クエリと更新方法、特定のパフォーマンス要件に関する知識が必要です。 –

+0

こんにちは。私たちはJavaバックエンド(JRubyが登場する場所)について話しており、一時的なデータを保管しています。この一時的なデータはやや動的でなければならない。これは、ユーザー情報(サイズはかなり小さい)とjson形式のデータの大きな断片を格納するために使用されます。残念ながら、私は実際のユースケースのシナリオについて自由に話すことはできません。あなたの意見では、通常のアプリの完璧なソリューションを提供してください。私はそれが助けにならないことを知っています。 –

+0

更新するだけです。私たちは、RedisとOhmをラッパーのために使うことにしましたが、今まで私たちが必要としているものに対して完全に働いています。誰にでも役立つかもしれません:) –

答えて

1

かなり大きくすることができますが、意見を求めているので、私はあなたに鉱山をあげる...私はMongoDBのは良い試合になると思いますあなたのニーズに合わせて:

http://www.mongodb.org/

私が使用した大規模な、歴史を保存するためにそれを使用しました数年の間、現在はますます大きくなっており、それは仕事に残っています。私は "シャーディング"やいくつかの高度な機能を掘り下げる必要はありませんでした。

私はそれはあなたが記述アプリケーションのための適切なことだと思う理由は、次のとおりです。

  • ことで、それはフィールドの追加や
  • 削除されると非常に「動的」できることを意味インデックス化、スキーマレスドキュメントストア
  • 大規模な「フラット」なデータのSQLデータベースのパフォーマンスをベンチマークしました。
  • https://github.com/guyboertje/jmongoあなたはこれが大、オープンエンドアーキテクチャの問題であるJRubyの
+0

ありがとう!モンゴブとリークを比較した経験はありますか? –

+0

申し訳ありませんが、riakの経験はありません...しかし、私はいくつかのSQL DBとCouchDBを使用しています。 – GroovyCakes

関連する問題