画像とビデオを含む大規模なデータセットを作成するには、ApacheXindiceを使用します。ApacheXindeceのWWWに関するチュートリアルとガイドはほとんどありません。Apache Xindiceに画像とビデオファイルを保存する方法は?Apache Xindiceは、大量のデータセットをストローするのに適していますか?大量のデータをXML形式で保存できる最新のリポジトリはありますか(SQLタイプのデータベースではありません。TBサイズのデータを保存する必要があります)?大規模なデータセットを保存するためにMongoDBを使用できますか?
1 に答える
GridFSファイルシステムを使用して、外部ドキュメント(画像/ビデオ、XMLファイル)をMongoDBに保存することをお勧めします。GirdFSコレクションは、バイナリデータが保存されるチャンクコレクションと、顧客定義のメタデータを含むファイルに関する情報を保持するファイルコレクションの2つの部分で構成されます。FAQから:
状況によっては、大きなファイルを保存する方が、システムレベルのファイルシステムよりもMongoDBデータベースの方が効率的である場合があります。
ファイルシステムでディレクトリ内のファイル数が制限されている場合は、GridFSを使用して必要な数のファイルを保存できます。ファイルとメタデータを自動的に同期し、多数のシステムと施設に展開したい場合。
地理的に分散されたレプリカセットを使用する場合、MongoDBはファイルとそのメタデータを多数のmongodインスタンスに自動的に分散し、容易にします。
ファイル全体をメモリにロードせずに大きなファイルの一部から情報にアクセスしたい場合は、GridFSを使用して、ファイル全体をメモリに読み込まずにファイルのセクションを呼び出すことができます。
大規模なデータセットの場合、GridFSをシャーディングできます(http://docs.mongodb.org/manual/core/sharded-cluster-internals/#sharding-gridfs-storesを参照)。
GridFSデータを高速に配信するために、ngnix(ngnix-gridfs)とApache(mod_gridfs)のモジュールがあります。簡単な比較については、http://nosql.mypopescu.com/post/28085493064/mongodb-gridfs-over-http-with-mod-gridfsも参照してください。