各ユーザーがプロフィール写真や追加の画像やその他のアーティファクトを保存したい大規模でアクティブなユーザーベースがある場合を考えると、そのようなデータの保存とクエリを簡単に行えるライブラリやフレームワークはありますか?
リファレンス実装は、FacebookのHaystackPhotoInfrastructureです。
次の特性が重要です
- データストアは適切に拡張できる必要があります。リソースの追加は、ストアを使用するアプリケーションに対して透過的である必要があります(同様の質問には、LinkedInのVoldemortに関する回答がありました)。
- 保存されているデータと一緒にいくつかのメタデータを追加する機能。
- メタデータは、優れたパフォーマンスでクエリできます(たとえば、Lucene / Solrなどの構成可能なインデックスに格納されます)。
- クイックキーベースのアクセスといくつかの中間キャッシュレイヤー
JavaWebアプリケーションに簡単に統合できるライブラリまたはフレームワークに関する推奨事項は大歓迎です。
更新:最初のいくつかの回答に感謝します。どのような種類の回答が期待されるかについて、さらに詳しく説明する必要があります。Tobuの答えは、Java関連ではありませんが、非常に優れています(投票したばかりです)。ファイルシステムアクセスとDBを組み合わせてソリューションを実装し、その間にキャッシュのレイヤーを追加することは可能ですが、私よりも資格のある人がすでに設計、実装、実行している場合は、時間の無駄だと思います。解決。基盤となるDBまたはJCRの実装を備えたソリューションに基づくものは適していますが、他のインフラストラクチャを実装することは私がやりたいことではありません。