对象存储,为什么那么火?( 三 )


元数据有点类似数据的标签 , 标签的条目类型和数量是没有限制的 , 可以是对象的各种描述信息 。
举个例子 , 如果对象是一张人物照片 , 那么元数据可以是姓名、性别、国籍、年龄、拍摄地点、拍摄时间等 。

对象存储,为什么那么火?


元数据可以有很多
在传统的文件存储里 , 这类信息属于文件本身 , 和文件一起封装存储 。而对象存储中 , 元数据是独立出来的 , 并不在数据内部封装 。
元数据的好处非常明显 , 可以大大加快对象的排序 , 还有分类和查找 。
▉ 对象存储的架构
对象存储的架构是怎样的呢?如下图所示 , 分为3个主要部分:
对象存储,为什么那么火?


对象存储的简单架构示意图
  • OSD对象存储设备
这是对象存储的核心 , 具有自己的CPU、内存、网络和磁盘系统 。它的主要功能当然是存储数据 。同时 , 它还会利用自己的算力 , 优化数据分布 , 并且支持数据预读取 , 提升磁盘性能 。
  • MDS元数据服务器
它控制Client和OSD的交互 , 还会管理着限额控制、目录和文件的创建与删除 , 以及访问控制权限 。
  • Client客户端
提供文件系统接口 , 方便外部访问 。
根据上面的架构可以看出 , 对象存储系统可以是一个提供海量存储服务的分布式架构 。
▉ 对象存储的优点
对象存储的优点很多 , 简单归纳如下:
  • 容量无限大
对象存储的容量是EB级以上 。EB有多大?大家的硬盘普遍是TB级别 。1EB约等于1TB的一百万倍 , 请自行脑补…
对象存储的所有业务、存储节点采用分布式集群方式工作 , 各功能节点、集群都可以独立扩容 。从理论上来说 , 某个对象存储系统或单个桶(bucket) , 并没有总数据容量和对象数量的限制 。
换句话说 , 只要你有足够的money , 服务商就可以不停地往架构里增加资源 , 这个存储空间就是无限的 。
你可以根据自身需求购买相应大小的对象存储空间 。如果需要调整大小 , 也是支持弹性伸缩的 , 你不要进行数据迁移和人工干预 。
  • 数据安全可靠
对象存储采用了分布式架构 , 对数据进行多设备冗余存储(至少三个以上节点) , 实现异地容灾和资源隔离 。
根据云服务商的承诺 , 数据可靠性至少可以达到99.999999999%(不用数了 , 一共11个9) 。这意味着 , 1000亿个文件里 , 每月最多只会有1个文件发生数据丢失 。这比一个人被陨石击中的概率还要小143000倍 。
数据访问方面 , 所有的桶和对象都有ACL等访问控制策略 , 所有的连接都支持SSL加密 , OBS系统会对访问用户进行身份鉴权 。因为数据是分片存储在不同硬盘上的 , 所以即使有坏人偷了硬盘 , 也无法还原出完整的对象数据 。
  • 使用方便
对于用户来说 , 对象存储是一个非常方便的存储方式 。
很多人把它比喻为“代客泊车” , 你只需要把车扔给他 , 他给你一个凭证 , 你通过凭证取车就可以了 。你不需要知道车库的布局 , 也不需要自己去费力停放 。

推荐阅读