データベースまたはファイル システムで XMLをどのように処理するかによって、多くのことが異なります。
主に名前または番号で保存して、元に戻したいだけのように聞こえます。つまり、データベースまたはファイル システムは、ファイル内を検索したり、いくつかの異なるプロパティでインデックスを作成したり、ファイル全体ではなく一部を取得したりする必要はありません。
その場合、「JPEG ファイルをデータベースに保存するか、ファイル システムに保存するか」というトレードオフは他のものとほとんど同じです。トレードオフのいくつかは次のとおりです。
1 つのディレクトリに約 1,000 を超えるファイルがあると、多くのファイル システムの速度が大幅に低下します。もちろん、それらをさまざまなディレクトリに整理することもできます (Git と iPhoto はこれを単純化していますが効果的です)。
レプリケーション、フェールオーバー サーバー、およびその他の高負荷の問題について心配する必要がありますか?
トランザクション (たとえば、2 人が同時に同じファイルを追加または置換しようとしている場合)、ユーザー権限、トランザクション ログ、システムを先週の状態にロールバックする機能などについて心配する必要がありますか?
データベースには一般に、この種の問題を支援するために特別に設計された機能があるため、このような複雑さはおそらくデータベースの使用を主張します。XML ファイル全体を保存して取得するだけであれば、ファイルシステムの方が簡単かもしれません。
どちらの場合でも、システムの残りの部分を気にしないようにすることができれば、それはより良いことです。つまり、実際にデータベースまたはファイル システムと対話するシステムの部分を分離し、必要に応じていずれかをプラグインできるようにします。
それが役立つことを願っています。