究竟什么是对象存储

时间:2017-08-26 14:24:00

标签: object-storage

我搜索了很多对象存储,所有文章都说同样的事情。对象存储是一种数据存储架构,它将数据作为对象进行管理,它包括数据本身和可变数量的肉类数据。 对象存储是数据存储方式的未来 但是一个对象如何存储在磁盘中。或者它只是一个想法,我可以使用文件存储和mysql来存储肉类数据,并声称它是一个对象存储。或者如果它与aws s3兼容,那就是对象存储系统 我对这个想法非常困惑,或者它只是像ajax这样的另一个奇特的词。

2 个答案:

答案 0 :(得分:0)

这篇文章总结得很好 - https://www.druva.com/blog/object-storage-versus-block-storage-understanding-technology-differences/

您在对象存储和传统文件系统/块存储之间看到的典型差异是 -

  • 由于网络延迟而导致对象存储的响应变慢
  • 对象存储不实现文件层次结构,尽管S3例如模仿AWS控制台中的文件层次结构
  • 对象存储通常最终是一致的,其中块存储提供强/立即一致性

在S3的情况下,使用对象键创建每个对象/文件。这允许您模仿文件系统层次结构,并且有助于在键名中嵌入元数据等用途。这对于诸如使用S3代替基于Hadoop的系统的HDFS的用例也是有益的。此外,S3允许您使用与其他AWS服务类似的键值对标记对象。

答案 1 :(得分:0)

我完全理解你的困惑。

想象一个碗。将不同大小的球放入碗中,并贴上独特的标签。球会掉进碗里,没有任何结构,它们只能通过独特的标签来区分。

你可以这样想object storage systems。碗中的每个球代表一个数据,如视频、音频、文本、电子邮件等。球的大小对应于文件大小。每个对象(即文件)在对象存储中都有一个唯一的全局 128 位标识符,因此球的标签就是它的标识符。

您可以将碗本身视为对象存储提供者。如今,使用这种组织架构的主要是 AWS S3 存储桶。 我也通读了你的评论。您建议将文件本身存储在文件存储中,并将元数据存储在数据库表中。

然而,对象存储系统的出现只是为了避免将数据存储到表中这样的操作。您看,要将任何内容存储在表中,您需要一个设计巧妙的数据库模式,以便将来操作时更轻松地检索数据。所有这些将数据存储到表中的额外细节和要求成本很高,对于只想将文件存储在某处而不考虑结构的人来说完全没有必要。