我正在探索在我们的高负载网站上存储用户上传的文件(都是 MS Office 文档或类似文件)的不同方式。它目前旨在将文档存储为文件,并让 SQL 数据库存储这些文件的所有元数据。当文档数量达到数亿时,我担心存储服务器和 SQL 服务器性能的增长。我正在阅读很多关于 CouchDB 的好信息,包括其内置的可伸缩性和性能,但我不确定在 CouchDB 中将文件作为附件存储与在文件系统上存储文件在性能方面有何不同。
有人在高负载环境中使用 CouchDB 集群来存储大量文档吗?
我正在探索在我们的高负载网站上存储用户上传的文件(都是 MS Office 文档或类似文件)的不同方式。它目前旨在将文档存储为文件,并让 SQL 数据库存储这些文件的所有元数据。当文档数量达到数亿时,我担心存储服务器和 SQL 服务器性能的增长。我正在阅读很多关于 CouchDB 的好信息,包括其内置的可伸缩性和性能,但我不确定在 CouchDB 中将文件作为附件存储与在文件系统上存储文件在性能方面有何不同。
有人在高负载环境中使用 CouchDB 集群来存储大量文档吗?
为什么不能将系统扩展到多个存储服务器?如果文档不存储在 SQL 中,那么 SQL 性能应该能够处理大表,前提是您对它进行了索引和维护(当然还有硬件方面的考虑)。您只需要更改您的应用程序,以便它可以根据您定义的任何规则开始存储在不同的位置。
SQL 2008 还具有一个新的 FILESTREAM 函数,它将增加存储文件的可管理性。看起来 SQL 将处理这些文件的所有安全性和内务管理。
http://msdn.microsoft.com/en-us/library/cc949109(SQL.100).aspx