sql >> データベース >  >> RDS >> Mysql

Mongoデータベースに画像ファイルを保存するのは良い考えですか?

    問題はデータベースが大きくなるほどで​​はありませんが、データベースはそれを処理できます(ただし、MongoDBはその点で他の多くのものほど優れていません)。問題は、データをクライアントに送信するには、最初にデータベースによってRAMに移動され、次にアプリケーションのメモリにコピーされ、次にカーネルに渡されてソケットを介して送信される必要があることです。それは多くのRAMとCPUサイクルを浪費しています。ファイルシステムに大きなファイルがある方が良い理由は、ファイルをコピーするのが簡単だからです。カーネルにファイルをディスクからソケットに直接ストリーミングするように依頼できます。

    大きなファイルをファイルシステムに保存することの欠点は、配布がはるかに難しいことです。データベース、およびMongoのGridFSのようなものを使用すると、スケールアウトが可能になります。ファイル全体を一度にアプリケーションのメモリにコピーするのではなく、一度にチャンクにコピーする必要があります。最近のほとんどのWebアプリフレームワークは、チャンク化されたHTTP応答の送信をある程度サポートしています。



    1. コマンドラインからMySQLダンプをダウンロードする

    2. ある列で順序付けられ、別の列で区別される行を選択する

    3. キーキャッシュによる修復を回避する方法は?

    4. 複数のテーブルと列の外部キー?