3

ユーザー プロファイルのプレゼンテーション イメージのアップロード関数を .NET で作成しています。私はそれを行うための 2 つの異なる方法から選択しています。長所と短所についてアドバイスや意見を求めたいと思います。

  1. イメージをファイル システムに直接保存する

  2. 画像をデータベースに保存する

これまでのところ、私は主に最初のオプションを支持してきました。各ユーザーは 1 つのプレゼンテーション画像しか持てないため、ユーザー名にちなんで画像に名前を付けます。次に、ユーザーが画像を持っている場合は指定されたパスでチェックを行い、そうでない場合はデフォルトの「画像なし」の画像を表示します。

これについて私が気に入っているもう 1 つの点は、DB のスペースを節約できることです。追加のバイナリ ロードがなければ、DB はかなり重くなります。

他にも考えていない部分があると思いますので、ご意見をお聞かせいただければ幸いです。誰かが問題に対して根本的に異なる解決策を持っている場合は、それも共有してください!

4

5 に答える 5

2

一般に、ファイルはファイル システムに保存することをお勧めします。ファイル システムは、ファイルを格納するために既に調整されています。ただし、これには欠点があり、特に管理、バックアップ、復元の点で欠点があり、データベースの varchar ファイル パス フィールドとファイル システムのファイルとの間の結びつきはやや脆弱です。どのデータベースシステムを使用していますか? SQL Server 2008 を使用している場合、新しい FileStream 型は、そのデータベースにファイルを格納するための非常に優れた方法を提供すると思います。

編集:私は、データベースにファイルを保存することについて、より一般的に話していることに注意してください。HTML ページに表示する予定の画像をデータベースに保存しようとすると、さらに複雑になります。

于 2009-02-25T09:05:26.960 に答える
0

データの冗長性と不一致 データへのアクセスの難しさ データの分離 完全性の制約 原子性の問題 同時アクセスと異常 (更新セキュリティの問題)

于 2009-12-22T04:36:59.913 に答える
0

ファイルシステムは優れていますが、フォルダーごとに 3000 を超える画像があると実用的ではありません。3000 個の画像ブロックごとに自動フォルダー作成を作成することをお勧めします。

于 2009-02-25T09:07:56.127 に答える
0

写真、ビデオなどの固定 (変更されない) コンテンツの場合、特にディレクトリに多数のファイルがあり、パフォーマンスが大幅に低下する場合、ファイルシステムはスケーリングできません。より良いオプションは、画像をオブジェクトとして保存し、関連するメタデータをデータベースに自動的に配置するオブジェクト ストレージ テクノロジを使用することです。

于 2016-02-18T18:07:05.793 に答える
-2

doc、pdf、xls、jpg ファイルの保存はどうですか? どれがおすすめ?

10000 個のファイルを格納する可能性のあるドキュメント管理システムで作業する予定ですが、問題は、ファイル システム技術を使用するとウイルスが拡散することを非常に心配することです。

于 2009-05-23T01:53:08.363 に答える