1. 随笔

存算分离

做YARN做了N年了,也想着存算分离吧?关于HDFS的存储有联邦存储和异构存储策略等内容,存算分离又算一个。存算分离,活生生的例子是KAFKA与PULSA的变化。KAFKA历史悠久,体量大的公司要替换很难,另辟蹊径的是,使用不同服务使其兼容kafka的rpc协议。协议一直是这个问题的根源,要实现存算分离,就要实现相应服务的协议,S3由于体量巨大,一直都是协议标准之一,所以首当其冲。

数据湖,一般结合现有的object store服务,提供基础的存储服务。同理,对于CK等服务,在OSS上实现相应的协议GATEWAY即可替换CK的本地存储,如MINIO

存算分离有没有性能问题?一方面比较考验的是网络IO,所以局域网需要有理想的网络环境,例如50GB以上带宽。另一方面性能很受本地服务的缓存机制的影响,是否每次请求都重新从OSS拉取一遍数据。对于数据服务类的情况。例如一次查询10GB级的大表,网络不好的话,带宽占用、网络抖动等问题就会出现,所以本地磁盘优先原则依然是适用。

存储操作本质上可以分为两大类:一个operation就是一个对象全量的操作,类似对象存储的put。另一个是append log,不断追加:可以像kafka一样append本地log,也可以用bookeeper做分布式log。

后续一起看看存储相关的底层原理:TODO

Comments to: 存算分离

Your email address will not be published. Required fields are marked *