在社交networking上存储文件的最佳方式

我使用Mongo databasePHPNodes.js和保存文件有问题。

因为:文件大小可能超过1PB(1000 TB)。

在我看来有两种方法可以做到这一点:

  1. 将文件保存在服务器上(jpg,mp3,mp4,…)
  2. 保存Mongo数据库上的文件(位,…)

女巫更好?

如果您有其他解决scheme,请让我知道这一点。

对于大数据存储,您通常不希望将巨大的数据文件(如图像,音乐文件,video文件)本身存储在数据库中。

相反,将大文件存储在文件系统中(可能跨多个驱动器/服务器),并且可以将数据库文件名/卷引用以及任何其他相关元数据存储在数据库中。

这也将允许您更高效地将这些文件直接从文件系统传输给用户(在浏览器请求时),而不必将它们从数据库格式转换为您要发送给用户的内容。

而且,如果您要拥有大量的存储空间,则应该从一开始就devise您的系统,以便能够轻松使用AWS等云存储服务。 我知道一些受欢迎的照片分享服务背后的人,他们转而使用AWS进行图像存储,节省了大量资金,性能更好,冗余更容易。 如果您还没有计划从托pipe服务开始,那么您应该考虑如何随着时间的推移将您的服务的至less一部分移到一个服务。