TOS | 青训营

93 阅读1分钟

对象存储

存储系统的优势

QQ截图20230816102233.png

分布式文件系统和对象存储比较:

QQ截图20230816102630.png

对象存储接口:

QQ截图20230816103204.png

直接通过http生成URL来获取数据
适用场景:视频、图片、文本等静态文件
不适用场景:关系型数据(订单)、更新频繁等动态文件

对象存储使用

申请bucket->业务逻辑开发->上线测试

restful接口

QQ截图20230816104318.png

MultiUpload接口

场景:上传大文件
思想:分治

QQ截图20230816104934.png

InitUpload:接收bucket,key的参数,返回uploadid
UploadPart:接收uploadid,partid,part内容,返回是否成功
CompleteUpload:接收uploadid,partid array,返回是否成功

通过一个Uploadid来识别

Listprefix接口

场景:查看桶里有哪些文件
参数:
prefix:key前缀
delimiter:分隔符
max-keys:本次分页数量
start-after:分页起始对象的key

实践

可扩展性:partition

分布式存储:分布式+单机存储
分布式可以分为存储均匀分布,压力均匀分布,计算均匀分布

QQ截图20230816104934.png

partition logic:hash或range
将不同数据映射到不同分区
达成可扩展性方法:新建partition与修改partition logic

持久性:replication

QQ截图20230816104934.png

机架:同一机房
机房:不同地区
region:更大范围
策略:设置多个副本
优势:带来持久性与强吞吐能力

成本

EC

冗余编码:达到和多副本一样的持久度

QQ截图20230816104934.png ### 温冷转换 将不常用的冷数据存储到性能更差但是更廉价的介质中

计算校验块
任何一块坏了,可以通过其他的计算出来
要求额外计算

可用性

集群拆分

一个集群拆分为多个集群,作用是降低爆炸半径

镜像灾备

主备bucket,完全相同出现问题随时转换