0

余分な情報をたくさん入れずに、これをシンプルに保つようにします。私は MongoDB を調査しており、次のプロジェクトでうまくいくと信じています。ただし、1 つあいまいな点があります。それは、GridFS からのファイル (チャンク) の保存と取得です。

CMSを例に取りましょう。画像を表示 (ブラウザ経由で出力) したい場合は、MySQL データベースに移動し、キーを見つけて、ファイル システム上のファイル ソースを含むメタデータを取得し、その href で画像タグを表示します。画像/動画/その他のファイルを Mongo に美しく保存し、バイナリを取得できることはわかっていますが、そのファイルを表示 (ブラウザにプッシュ) したい場合は、その内容を一時ファイルに書き込んでエコーする必要があります。 href を持つ私の img タグ? これ以上の効率はありません。

何かが足りない気がします。この状況では、MongoDB の方が優れていますか?

明確にするために:私は典型的なLAMPスタック(本番ではなく開発)でPHPとApacheを使用し、アーティスト間の創造的なコラボレーションを可能にするプラットフォームに取り組んでいます。したがって、複数のアーティストが同じファイルで共同作業を行うことになり、それらのファイル内を検索してインデックスを作成し、すべてのメタデータをまとめて保持し、シャーディングを使用できるようにしたいと考えています。MongoDB が進むべき道のようです。

ありがとう!

マイケル

4

1 に答える 1

0

バイナリ ファイルをデータベースに保存する場合は、最初にファイル システムに書き込まずに直接提供できます。あなたがしなければならないことは、応答 HTTP ヘッダーに適切なメディア タイプを指定して、受信 HTTP 要求に応答してデータを送信するための PHP スクリプト (またはその他のもの) を作成することだけです。

画像について話している場合は、HTML で次のようにします。

<img src="/your_img_script.php?image=1234"></img>

次にyour_img_script.php、ルックアップ イメージ ID 1234 に書き込み、image/jpeg(またはその他の) コンテンツ タイプ ヘッダーを使用してデータをダンプします。

于 2013-09-11T01:45:34.217 に答える