問題タブ [gridfs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1000 参照

mongodb - 誰でもMongoDBGridFS機能について説明できますか?

私はMongoDBユーザーの1人です。残念ながら、MongoDB GridFS機能について聞いたのですが、いつどこでその機能を使用するか、または使用する必要があるかわかりません。この機能を使用している可能性がある場合は、皆さんが正確に説明してくれることを願っています。この機能。

ありがとう、

0 投票する
1 に答える
2241 参照

django - プラグ可能なMongoDBストレージのトラブルを伴うDjango

djangoとmongoengineを使用して、GridFSのみでストレージバックエンドを提供しようとしています。私はまだMySQLデータベースを持っています。

django adminから削除しているときに、奇妙な(私にとって)エラーが発生し、何か間違ったことをしているのではないかと思っています。

私のコードは次のようになります:

ファイルは問題なくアップロードできますが、ファイルを削除すると、すべてのFileDocument.objectsを手動で削除するまで、何かが壊れて、mongoデータベースが機能しなくなるように見えます。これが発生すると、ファイルをアップロードしたり、djangoインターフェースから削除したりできなくなります。

私が持っているスタックトレースから:

この機能を間違って使用していますか?

アップデート:

@zeekayの回答のおかげで、動作するgridfsストレージプラグインを動作させることができました。結局、mongoengineをまったく使用しなくなりました。適応したソリューションをgithubに配置しました。それを使用する方法を示す明確なサンプルプロジェクトがあります。プロジェクトをpypiにもアップロードしました。

別の更新:

django-storagesプロジェクトを強くお勧めします。ストレージに裏打ちされたオプションがたくさんあり、私の最初に提案したソリューションよりもはるかに多くの人々によって使用されています。

0 投票する
2 に答える
7936 参照

mongodb - 静的ファイルプロバイダーとしてのMongoDB?

MongoDB は、静的ファイル (ファイル、ビデオ) を cdn として提供するのに適しています。S3 を置き換えてキャッシュ機能を管理することで、大量のデータ (>+To) を格納する確実な方法を探しています。経験。

ありがとう。

0 投票する
1 に答える
512 参照

mongodb - MongoDB GridFS.find結果が有効になるまでに1つの可能な遅延がありますか?

私のアプリケーションでは、私は呼んでいます

これは通常、への呼び出しによって以前に作成された有効なファイルを返します

ただし、nullを返す場合もあります。だから私はそれをwhileループに入れました

これにより、約400ミリ秒が経過した後の2回目の呼び出し後に有効なファイルが返されます。私は何か間違ったことをしていますか、それともファイルが作成されてからアクセスできるようになるまでに遅延が発生する可能性がありますか?

0 投票する
3 に答える
6608 参照

mongodb - MongoDB での GridFS のシャーディング

GridFS と、それを異なるマシン間で分割する可能性について文書化しています。

こちらのドキュメントを読むと、推奨されるシャード キーは chunks.files_id です。このキーはファイル コレクションの _id にリンクされるため、この _id はインクリメンタルです。グリッドに保存するすべての新しいファイルには、新しいインクリメンタル _id があります。

O'Reilly の「Scaling MongoDB」本では、HotSpots を回避するために、増分シャード キーの使用は推奨されていません (最後のシャードがすべての書き込みと読み取りを受け取ります)。

GridFS コレクションをシャーディングするための提案は何ですか?
ホットスポットの問題を経験した人はいますか?

ありがとうございました。

0 投票する
3 に答える
5348 参照

c# - GridFS を使用する C# MongoDB ドライバー

1 つの mongo ドキュメントに関連する複数の画像を保存する最良の方法を誰か教えてもらえますか?

私のユースケースは、「プロファイル」コレクションに「ユーザー」ドキュメントがあることです。このドキュメントには、ユーザーに関するメタデータ (電子メール アドレス、電話番号など) が含まれています。
次に、ユーザーに関する複数の画像をアップロードできます。

ファイル コレクションに画像を保存するために GridFS を使用しています。アップロードされた画像の ID を GridFS から取得します。

その画像オブジェクトを、それをアップロードしたユーザー オブジェクトに関連付ける最良の方法は何ですか? ユーザーの ObjectID を Image オブジェクトのメタデータに入れることができます….または ObjectID を User Doc に入れる (そして画像のコレクションを作成する) ことができます。

私たちは C# ドライバーを使用しています…私のユースケースの例があれば…それは素晴らしいことです。

ありがとうございます

0 投票する
1 に答える
2111 参照

ruby-on-rails-3 - Carrierwave にファイルをインポートする方法

したがって、ファイルを提供するレール3とmongodbを使用するアプリがあります。既にシステムにあるファイルの新しい ObjectId を作成せずに、ランナー プロセスを使用してすべてのファイルを gridfs にインポートしたいと考えています。基本的に、carrierwave を使用して、既にデータベースにあるファイル オブジェクトにファイルを添付したいと考えています。

なぜか、新しいファイル ドキュメントを作成するときに、問題なくローカル ファイルを添付できます。ただし、以前に作成したドキュメントにローカル ファイルを添付することはできません。

私はあらゆる形式の Mongoid の更新を試しましたが、メソッドが欠落しているか、メソッドが不明であることがわかりました。

たとえば、これは機能します。

しかし、これはしません:

何か案は?

0 投票する
1 に答える
659 参照

utf-8 - mongodb/gridfs Java ドライバーと utf-8 メタデータの使用

GridFS を使用して、java-driver を使用していくつかのメタデータとともにファイルをロードしようとしています。(2.5.3) メタデータが ASCII である限り、問題なく動作します。しかし、私は例外を受け取ります - 非ASCII文字でUTF8文字列を設定しようとした瞬間です。String MetaData = "学海"; GridFS gridFS = new GridFS(db); GridFSInputFile inputFile = myFS.createFile(新しいファイル(ファイルパス)); DBObject dbObj = inputFile.getMetaData() dbObj.put("メタデータ", メタデータ); ----> ここで例外を取得 (非 ASCII データの場合)

0 投票する
1 に答える
657 参照

python - pythonとmongoDBを使用した2,000万件のレコードのインデックス作成

私の小さなプロジェクトについて、そして私が順調に進んでいるかどうかについて言及したいと思います。Medline(http://www.nlm.nih.gov/bsd/licensee/2011_stats/baseline_doc.html)のすべての記事を処理する必要があります。Medlineデータベースに精通していない人のために、私は少し情報を追加します:

  • 約あります。20.000.000のレコード(83.4 GBのディスク容量)。それぞれに多くのフィールドとサブフィールドがあります。
  • このDB(ライセンス付き)をXML形式でダウンロードできます。
  • これらの20Mのレコードは、653個のファイルで配布されます。
  • すべてのファイルには1つのMedlineCitationSetがあり、これは一連のレコード(MedlineCitation)です。

これらのレコードを処理して、タイトル、要約などの情報を取得したいと思います。次に、これらのファイル(またはレコード)にpythonとmongodbでインデックスを付けることを考えました。そして私には1つの選択肢があります:

medlineパーサーを作成し、レコードごとにmongoDBのJSONエントリを作成し、pubmedIDでインデックスを作成しました。次に、get_abstract('pubmedID'):stringのような関数を作成できます。

私の質問は次のとおりです。

  • それは良い考えですか?(XML解析-> JSON->挿入とインデックス作成!)
  • GridFSを使用して、各ファイルのレコードに相当するチャンクを取得できますか?どのように?
  • 他の方法を知っていますか?