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

長いバイナリ(生データ)文字列の保存

    PostgreSQLまで 関係がある場合は、textと入力します 問題外です。 byteaよりも低速で、より多くのスペースを使用し、エラーが発生しやすくなります。 目的のために。

    基本的に3つのアプローチがあります:

    1. タイプbyteaを使用します (基本的に、SQL BLOBタイプに相当するpg)。

    2. 大きなオブジェクト」を使用します "。

    3. BLOBをファイルシステムにファイルとして保存します ファイル名のみをデータベースに保存します。

    それぞれに長所と短所があります。

    1。 処理はかなり簡単ですが、最も多くのディスク容量が必要です。ある程度のデコードとエンコードが必要なため、速度も遅くなります。バックアップのサイズは急速に大きくなります!

    2。 処理が少し厄介ですが、必要に応じて、ブロブを操作するための独自のインフラストラクチャがあります。また、個別のバックアップをより簡単に作成できます。

    3。 はるかに高速な方法であり、最小のディスクスペースを使用します。ただし、データベース内に格納するときに得られる参照整合性は提供されません。

    画像ファイルには、そのような実装がいくつかあります。小さなサムネイルを保存します。 参照整合性とクイックリファレンスのためのbytea-fieldで。元の画像をファイルとしてファイルシステムに保存します。もちろん、古いファイルをいつどのように削除するか、外部ファイルをバックアップする方法などを考慮する必要があります。



    1. mysqlで機能しないクエリを削除する

    2. 日時から時間をトリミングする最も効率的な方法は何ですか?

    3. AmazonRDSでmysqladminflush-hostsを実行する方法

    4. Rails、PostgreSQL、および履歴トリガー