我让用户能够在现有的 Web 应用程序中附加图像、视频、音频剪辑和其他文件附件。我们产品的某些安装有成千上万的用户,因此数据量会变得非常高。
Amazon S3 是显而易见的解决方案,但由于法律原因,不能始终使用。我需要一个我的客户可以自己托管的解决方案。
因此,我希望构建或采用具有以下特征的文件存储系统:
- 未托管。必须可以安装在我客户的 Windows 服务器上。
- 水平扩展至 TB 级存储。
- 与 S3 类似的操作,这样我就可以将这两种方法都作为我产品的一部分。
- 久经考验的架构
我在 StackOverflow 和其他论坛(Eucalyptus Walrus、Hadoop HDFS、MongoDB + GridFS、CouchDB、MogileFS)上看到了一些建议,但找不到足够的信息来确定一个简单且经过验证的建议。
我有使用 CouchDB 的经验,如果我能确定它可以很好地处理数 TB 的视频文件,我会选择它,但我还没有找到一个可以依靠的成功案例。