私はデータベース開発者(インターン)として働いており、SQL Server 2014で画像ファイルを保存するための最良の方法を見つけなければなりません。誰かが最良の解決策を提案できますか?
ファイルサイズが256KB未満の場合は、データベースに保存することをお勧めします。 1MBを超える場合は、filestreamに格納し、パスをデータベースに格納することをお勧めします。
私の研究は、パフォーマンス、セキュリティの点でより優れた方法を見つけるために今も続いています。何かアイデアがあれば教えてください。
私はこの問題を、私が勤務する病院で長年にわたって扱ってきました。私たちにとっては、実際には個々のファイルのサイズではなく、格納されているすべてのファイルの全体的なサイズです。画像をデータベースに保存することに私が最も失望したのは、顧客の将来の成長予測が悪いことです。 SQL Serverイメージデータベースは小さいですが、ファイル共有にテラバイトのイメージデータがあるシステムがあります。また、SQLに保存されている画像には、データベースの全体的なサイズが含まれています(従業員の有限セットのサムネイル画像など)。
256Kと1 MBで述べたことは、純粋な有効性と効率(実際とは別の技術的な真空)にメリットがありますが、このモデルから離れてもSQLは十分に機能することがわかりました。 SQL Serverのディスクストレージに費用をかける必要がないと顧客から言われたとしても、サイズがテラバイトのデータベースのバックアップを担当している場合は非常にコストがかかります。
私にとっては、ソフトウェアの顧客またはベンダーをどれだけ信頼するかにかかっています。選択内容に関係なく、次の場合にのみSQL内にイメージを保存します。
A。本当に顧客/ソフトウェアベンダーを信頼する
B。画像と画像データのサイズの両方の制限された/有限の範囲を保証できます
C。信頼レベルが低いが、顧客/管理者がSQLにイメージを保存することを主張している場合は、彼らが独自のSQL Serverを持っていることを確認し、データベースとバックアップのディスクの増加に対して継続的に支払う-爆発をできるだけ分離する可能
とは言っても、DBAとしては、必要に応じて画像を保存できるという考え方が本当に気に入っています。技術的には、実際には行き過ぎの「最良の」答えはありません。そして、多くの場合、「信頼」は、顧客/ベンダーがSQLにイメージを格納するのに十分なほど話していることを知っていると私が信じるだけではありません。