寻找这方面的一些意见,并试图开始推进我的下一个项目的坚实设计。想象一下500万张个人照片和相关的lo-res预览图像;每套图片属于一个画廊,属于一个人。有X个人。可以这么说,Flickr的专门版本。摄影数据库的存储方法
这些被安置在一个远程主机与Web界面查看这些图片。还有一个桌面应用程序可以将它自动上传到远程主机并输入画廊的详细信息。桌面应用程序具有关于每个画廊和个人的预览图像和信息。可以说,与Flickr同步的桌面应用程序。
我需要决定两件事:远程主机的后端存储和桌面应用程序的本地存储。这是针对Windows环境的,所以我一直认为SQL Server Express将会是一个不错的选择,但是这个项目已经有了很大的发展,并且可能只适用于桌面端。
远程(网络)服务器可以是Windows或Linux,PHP或.Net - 只要技术适用,我不在乎。问题在于如何最好地将所有数据存储在Web服务器上,以便在发生灾难时可以轻松地对其进行索引,快速访问,最重要的是可以轻松进行备份和恢复。只要数据库解决方案支持某种云计算场景,我并不担心服务器配置或磁盘空间。
我在想没有SQL后端最有意义,将照片,画廊和用户存储为“文章”而不是“行”。 No-SQL似乎更有能力通过云增长。另一方面,Flickr已被广告为使用MySQL ...
也许这是一个更存在的问题,一个真正的编码问题,但我知道没有更好的群问!
将照片存储为数据库中的二进制数据,还是将文件系统中的文件与db中引用的路径一起存储? – 2011-03-17 01:50:07
当然在文件系统上。它允许您将它们存储在任何位置,并且不需要每个图像负载都有一个数据库连接。这也使得使用CDN更容易。 – 2011-03-17 10:27:52