对象存储有哪些用例?

What are some use cases for object storage?

相对于文件系统或块存储(数据库)系统,对象存储有哪些用例?

据我了解,对象存储主要用于云系统上应用程序 运行 的持久存储。它似乎与文件系统有很多重叠,除了对象存储方式的细节被抽象出来,以便应用程序可以通过简单的网络查询访问它们。

但是,如果有人可以举例说明实际使用它代替或与其他两个存储系统一起使用的应用程序。

对象存储的一些示例用例:

  • Off-site 备份
  • 存储和提供用户内容(例如个人资料图片)
  • 存储要部署到 VM 的工件(例如 JAR 文件、启动脚本)
  • 分发静态内容(例如您的用户的视频内容)
  • 缓存中间数据(例如,在组装成输出视频之前来自渲染场的单个帧)
  • 接受输入或向 Web 服务提供输出(对于大型输入文件,POST 接受数据可以是 difficult/inefficient)。
  • 出于监管目的存档数据

所有这些情况都可能伴随着数据库来存储元数据(即查找对象)。然而,实际将数据存储在数据库中会超出大小限制或显着损害数据库性能。

这些 use-cases 可以用 file-system 来实现,只要你的总使用量可以由一台机器处理。如果您的流量超过此数量,您将需要复制存储、负载平衡等,此时您实际上是在自己实施一个对象存储系统。