Heroku には、本番層の PostgreSQL データベースを使用する RoR 3.2 サイトがあります。
当サイトのユーザーは、サイズが 0.5 ~ 2MB の画像をアップロードすることがあります。さまざまな理由から、これらの画像を S3 などのファイルとして保存するのではなく、データベースに保存したいと考えています。
私たちのサイトが画像の多いサイト、つまり Facebook のクローンである場合、データベースに画像を保存するのは良いことではありません。
とにかく、そうではないので、ユーザーの画像をデータベースに保存したい理由のいくつかを次に示します。
- すべてを制御: S3 のダウンタイムとサードパーティの gem によって、画像の処理や画像へのアクセスが中断されることはありません。
- 簡単な削除: ユーザーがアカウントをキャンセルした場合、Rails モデル (関係の依存関係) を通じて、そのアカウントに関連付けられているすべての画像を簡単に削除できます。
- ユーザーデータのエクスポートがより簡単に: ユーザーがサイトを離れてデータを持ち出したい場合、S3 からエクスポートするよりも簡単に画像をエクスポートできます。
- コスト: 重要な議論ではありませんが、既にデータベースに料金を支払っているため、(少額の) 費用がかかる S3 を使用するよりも安くなります。
- バックアップ: 重要な議論ではありませんが、データベースのバックアップには、サイトに関連するすべてのものが含まれます (もちろん、RoR コードを除く)。
イメージを Heroku PostgreSQL データベースに保存する最も簡単な方法は何ですか? サンプルコードまたはウォークスルーへのリンクは大歓迎です。
ありがとう :)