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