对象存储、TOS | 青训营笔记

356 阅读2分钟

带宽(吞吐量)和每秒I/O操作数(IOPS)是衡量存储性能的两大指标

分布式存储(Hbase)、对象存储(TOS)

为什么要担心存储?

  • 抖音作为现象级的短视频软件,每一分每一秒都在产生大量数据,对数据存储容量大小是以PB乃至EB为计的
  • 传统的分布式文件系统对视频,图片等资源支持较差
  • 传统分布式文件系统开发,维护较繁杂
  • ...

对象存储,大文件 KV 存储,所以对象存储和分布式文件系统之间,没有那么明确的界限。

元数据用于管理数据节点的信息、文件信息、映射关系。

特点:变动不频繁、数据量小,可以用zookeeper、etcd来存储。

image.png image.png

对象拆分和保存

拆分/分片:把文件从头到尾,按固定大小切分。好处:提升读写性能、便于维护。 容器:存储固定个数的块,大小是固定的。类似分片。 主从同步:直接复制数据块

REST接口

对于数据服务层,它的REST接口和上一个版本完全相同,也就是对象的PUT和GET方法。

对于接口服务层,除了PUT和GET方法之外,我们还另外提供了一个用于定位的locate接口,用来帮助验证架构。

如果有数据服务节点发回确认消息,则返回该数据服务节点的地址;如果超过一定时间没有任何反馈,则返回HTTP错误代码404 NOT FOUND。

对象存储:易用性

image.png

  • 通过HTPP交互

  • 对象存储使用范围:

image.png

对象存储使用:

申请Bucket -> 业务逻辑开发 -> 上限测试

image.png

RestFUl接口:

image.png

MutilUpload

如果下载了99%停止了,对象存储?

image.png

Listprefix接口

image.png

TOS字节内部实践