Enabling Erasure Coding Tiering for LSM-tree-based Storage 论文阅读

ELECT: Enabling Erasure Coding Tiering for LSM-tree-based Storage (Fast 24)

存储分层(Storage tiering)

热层:频繁访问的数据,有限的存储空间,较高的访问性能;

冷层:不频繁访问的数据,存储空间充足,但性能较低;

典型的应用场景:边缘云存储(edge-cloud storage)

边缘云存储主要建立在 分布式KV 系统上

motivation:物联网应用的数据量将达到 79.4 ZB(1ZB = 10^9TB)

1、云服务通常位于远程的数据中心,而访问云服务需要通过互联网连接。由于互联网带宽有限,因此在大量 IoT 设备同时访问云服务时,可能会造成性能瓶颈和延迟增加;

2、边缘计算将计算和存储资源部署在靠近数据产生源的地方,例如物联网设备附近的边缘节点。这些边缘节点通常是轻量级的实例,例如微型数据中心,它们具有有限的计算和存储资源,但可以提供更快的响应时间和更低的延迟。

3、从存储的角度考虑,我们可以构建一个分布式 KV 系统在热层,云作为冷层持久化数据;

边缘存储设备通常要考虑容错,一般操作是将副本放在多个边缘节点上,而无需从云上获取数据;

复制使得存储空间的成本增加,这对资源有限的高性能热点层是非常不利的;

Erasure Coding:纠删码,通过矩阵的逆运算和冗余的方式提供了更高效的存储副本的方式;

优点:

  • 各个节点有相同大小的冗余副本,可以做到各个节点之间读数据的负载均衡;
  • n = k + m,n个节点中允许有m个节点发生故障而不会丢失数据;

缺点:

  • 故障发生时,重建数据会导致 I/O 和带宽的增加;

ELECT:实现纠删码分层的一个分布式 KV 存储系统,采用混合冗余的方式扩展 LSM-Tree

通过在热层存储有限的频繁访问的kv提高访问性能,同时在热层存储大量带有纠删码的冷KV来实现显著的存储节省;

ELECT 的新颖之处:将基于LSM树存储的副本和纠删码和几种新的设计技术巧妙的结合在一起。


Enabling Erasure Coding Tiering for LSM-tree-based Storage 论文阅读
https://yanghy233.github.io/2024/04/16/ELECT/
作者
yanghy
发布于
2024年4月16日
许可协议