0

Mongo データベースにいくつかのファイルを保存する必要があり、次の 2 つの質問に出くわしました。

  1. これらのファイルの名前は気にしません。一意の mongo ID でアドレス指定します。Mongo db ドライバーは、デフォルトでファイル名の内容をデータベースに追加するときにファイル名を追加し、それにインデックスも作成すると思います。ファイルの名前を気にしないことを伝える方法はありますか?

  2. データベースに追加するのが JPEG タイプ (同じコンテンツ タイプ) の画像だけである場合、ここで説明されているように Symfony の mongo ODM を使用することで利点が得られますか?

まったく異なる質問であるため、2 つの別々の質問を作成する必要があるかどうかはわかりませんでしたが、これらの質問のいずれかに関する回答またはアイデアをいただければ幸いです。

4

1 に答える 1

2

これにより、あなたの質問に関する私の考え:

  1. ファイルを GridFS に保存するときにファイル名を無視するように MongoDB ドライバーに指示する方法はないと思います。簡単なテストを実行するだけで、ファイル名は常にドキュメント内に保存されます。私が見つけたのは、デフォルトではファイル名に対して作成されるインデックスがないということです。これは、mongo シェルで「db.Upload.files.getIndexes()」を実行して、コレクションに作成されたインデックスを確認することで確認できます。

  2. 保存するファイルの種類やファイル サイズに制限があるとは思いません。GridFS は大きなオブジェクト用のストレージ仕様ですが、多くの小さな JPEG ファイルに使用するための制限はないように見えます。Symfony および Mongo ODM で使用する利点の小さな例は、アップロードされたファイルを要求するときに ACL 機能を非常に簡単に追加できることです。

うまくいけば、これはあなたの質問に答えます。

于 2012-10-29T22:19:21.810 に答える