所以我正在使用一个将图像存储在数据库中的应用程序.你对此有何看法?我更像是一种在文件系统中存储位置的类型,而不是直接将它存储在数据库中.
您认为利弊是什么?
我的问题相当通用,我知道可能没有100%的答案.我正在构建一个ASP .NET Web解决方案,其中包含大量图片,并希望有相当多的流量.我确实想要达到性能.
我应该将图片保存在数据库或文件系统中吗?无论答案如何,我都更感兴趣为什么选择一种特定的方式.
非常感谢,Stefan
DUPLICATE:在DB中存储图像 - 是或否?,如何在文件系统中存储图像,存储少量图像:blob还是fs?可能还有其他一些.
评论:感谢许多好的答案.即使我喜欢使用100%数据库驱动的解决方案,我也会选择基于文件的解决方案.似乎今天有很好的解决方案来做我想要的数据库等,但我有一些理由不这样做.
我将使用托管解决方案,我有大量的存储空间(10gb)但数据库只有300mb.在DB中额外存储会花费很多.
我不是数据库专家,也不能控制数据库的设置.基于数据库的解决方案可能需要自定义配置.
如果我们将在我们自己的服务器上运行该站点,我可能会考虑基于数据库的解决方案.谢谢,斯蒂芬
数据库最终将数据存储在文件中,而文件系统也将数据存储在文件中.在这种情况下,DB和文件系统之间有什么区别.是它的检索方式还是其他任何东西?
这是一个之前被问过的问题(大文本和图像在sql中),但主要用于将要更改的数据.在我的情况下,数据将被存储并且永远不会改变.把所有东西放在一起似乎是明智的.
我有什么理由不将静态二进制数据存储在数据库中吗?
假设这是一件明智的事情,将这些数据存储在单独的表中是否有任何好处?(你可能现在开始意识到我不是数据库专家......)
澄清:可能会有不超过10-20个用户,但这些用户将在美国和英国.在任何情况下都必须传输二进制数据.
可能重复:
在DB中存储图像 - 是或否?
你好
目前,我网站上的每家公司都有1张图片,可以添加到他们的个人资料中.我将该图像保存到数据库中....它的公司徽标.
现在我想让他们添加更多图片.现在我不知道我是否必须将它全部保存在数据库中或保存在文件夹中????
我认为文件夹会更好的原因是因为有很多很好的文章与花哨的银色光有点功能,我可以使用,但所有这些只适合保存在文件夹中的图像.
因为我不是很好,我很难改变代码来查看数据库而不是使用文件夹进行图像检索的示例.
我想在我的网站上添加这样的东西(浏览图片).关于如何在图像保存在数据库中时如何执行此操作的任何代码示例?我在VB.net中使用ASP.NET. 点击这里查看我在说什么
有什么想法吗?
问候艾蒂安
我正在编写一个将上传和删除许多文件的应用程序,我通常只是将文件移动到服务器中的文件夹中,并使用唯一的行命名它们id.但据我所知MySQL还允许我存储二进制数据(文件)什么时候这是一个更好的选择?
请使用可靠的参数,例如何时使用BLOB将意味着性能提升?
PS:如果重要的话,我正在使用MyISAM.
谢谢.
更新:
相关问题:
- 在DB中存储图像 - 是或不是?
- 要做或不做:将图像存储在数据库中(感谢塞巴斯蒂安)
更新2
将文件存储在数据库中并不是我需要知道什么时候比将它们存储在文件夹中更好.
完全重复: 用户映像:数据库还是文件系统存储?
完全重复: 在数据库中存储图像:是或不是?
完全重复: 我应该将我的图像存储在数据库还是文件夹中?
确切重复: 您是否将二进制数据存储在数据库或文件夹中?
完全重复:将 图片存储为Web应用程序的文件或数据库?
确切重复: 存储少量图像:blob还是fs?
我必须存储用户的个人资料图片(100px*100px)存储它的最佳方式是什么?数据库或系统文件?哪一个更好,更快,更安全......?
可能重复:
在DB中存储图像 - 是或否?
多年来,我被告知不要将图像存储在数据库中,也不要将任何大型BLOB存储在数据库中.虽然我可以理解为什么数据库没有/没有效率,我从来没有理解为什么他们不能.如果我可以将文件放在某处并引用它,为什么数据库引擎也不能这样做.我很高兴Damien Katz在最近的Stack Overflow播客中提到它,Joel Spolsky和Jeff Atwood,至少默默地同意了.
我一直在阅读Microsoft SQL Server 2008应该能够有效处理BLOB的提示,这是真的吗?如果是这样,有什么阻止我们在那里存储图像并摆脱一个问题?我能想到的一件事是,虽然图像可以很快地由静态Web服务器提供,如果它是某个文件,当它在数据库中时,它必须从数据库传输到Web服务器应用程序(这可能比静态Web服务器)然后它被服务.不应该缓存帮助/解决最后一个问题?
我正在为我的网站添加一些功能,以便用户可以上传他们自己的个人资料图片,所以我想知道是将它们作为BLOB存储在数据库中,还是将它们放在文件系统中.
我在这里找到了一个类似的问题:在DB中存储图像:Yea或Nay,但给出的答案更倾向于人们期待数千甚至数百万的图像,而我更关心的是小图像(JPEG图像直到可能是150x150像素),而且数量很少:可能高达一两千.
对于这种情况,DB BLOB vs Filesystem有什么感受?客户端如何使用来自DB和文件系统的缓存映像?
如果存储在数据库中的BLOB是要走的路-有什么我应该知道哪里来存储它们?由于我想我的大多数用户都不会上传图片,我是否应该在需要时创建一个user_pics表(外部)连接到常规users表?
编辑:我正在重新打开这个问题,因为它与你链接的那两个不重复.这个问题具体是关于使用DB或FS来处理少量图像的优缺点.正如我上面所说,另一个问题是针对需要存储数千个大图像的人.
最近,我和我的同事,我们正在讨论如何构建一个巨大的存储系统,可以存储数十亿张可以快速搜索和下载的图片.
像fickr,但不是在线画廊.这意味着,大多数这些图片永远不会下载.
我的同事建议我们应该直接将所有这些文件保存在数据库中.我真的觉得这不是一个好主意,我认为数据库不是为了恢复大量的二进制文件而设计的.但我有充分理由说明为什么这不是一个好主意.
你怎么看待这件事.