1

我的问题可能与其他人非常相似,但不一样。在我正在开发的信息系统中,我面临下一个问题:我需要存储许多图像数据(每月大约 10 万个,每年 1.2-150 万个)。我正在考虑两种方法:作为 BLOB 存储在 DB 中或存储在 DB 文件路径中。从相关问题中,我读到仅存储在数据库中的参考对性能来说更便宜。也无需编写处理程序(在 asp.net 中从 DB 获取 BLOB 字段)。但是拥有超过 100 万个文件 - 这是个好主意吗?备份非常困难,当一些文件被意外删除时,数据库不再一致。将所有内容存储在数据库中的方法不存在这些问题。你会推荐什么?有人遇到过这个问题吗?

4

4 回答 4

2

你错过了一件关键的事情。将文件存储在将其存储在文件系统中的数据库中,而不是存储在 MDF 文件中。查看 FileStream 的文档。集成备份,通过 SQL 完全访问,但文件位于单独的共享和/甚至另一台计算机上。

于 2012-07-05T20:19:16.400 回答
0

有了这么多文件,无论如何备份都会很痛苦。你现在最好采取更便宜的方法。

于 2012-07-05T20:04:25.793 回答
0

我会选择数据库...如果您曾经在同一个文件夹中看到过 100 万个文件,那么在文件系统上可能会非常困难并且难以导航

于 2012-07-05T20:25:31.033 回答
0

您可以通过多种方式对此进行攻击。首先,将图像存储在数据库中是一个坏主意。

更好的方法是存储在分布式文件系统中。

具有可扩展的命名模式,并将该位置信息存储在数据库或分布式哈希表中。所有的军团都是这样做的。

于 2012-07-05T20:35:50.507 回答