Tachyon与Ignite系统对比

1. Alluxio(原Tachyon)内存文件系统

1.1 系统概述

Alluxio(原Tachyon)是以内存为中心(memory-centric)的虚拟的分布式存储系统,拥有高性能和容错能力,能够为集群框架(如Spark、MapReduce)提供可靠的内存级速度的文件共享服务。Tachyon诞生于UC Berkeley的AMPLab,由该实验室的李浩源初创。2012年12月,Tachyon发布了第一个版本0.1.0。目前,Alluxio已发展为一个通用的分布式存储系统,将不同的计算框架和存储系统紧密联系起来。

自2013年4月开源以来,已有超过50个组织机构的200多位贡献者参与到Alluxio的开发中。其中包括阿里巴巴、百度、IBM、Intel、Red Hat、Yahoo、南京大学、卡内基梅隆大学和UC Berkeley。如图1所示。

这里写图片描述
图1 Alluxio贡献者数量

Tachyon系统主要是为了解决以下3个方面的问题:

  • 传统大数据分析流水线中通过磁盘文件系统(如HDFS)来共享数据成为影响分析性能的瓶颈;
  • 大数据计算引擎的处理进程(Spark的Executor,MapReduce的Child JVM等)崩溃出错后,缓存的数据也会全部丢失;
  • 基于内存的系统存储数据冗余,对象太多导致Java GC时间过长;

Tachyon针对以上几个方面问题给出了3个解决方法:

  • Alluxio为大数据分析流水线提供内存级数据共享服务;
  • 内存中的数据存放在Alluxio中,即使计算引擎处理进程崩溃,内存中的数据仍然不会丢失;
  • 存放在Alluxio内存中的数据不会冗余,同时GC开销大大减小;

1.2 系统框架与原理

整体架构

与其他诸如HDFS、HBase、Spark等大数据相关框架一致,Alluxio也是一个主从结构的系统,如图2所示。它的主节点为Master,负责监控各个Worker以及管理全局的文件系统元数据,比如文件系统树等。而从节点为Worker,负责管理本节点数据存储服务(本地的MEM、SSD和HDD)。另外,Alluxio还有一个组件为Client,向用户和应用提供访问接口,以及向Master和Worker发送请求。Under File System主要负责文件的备份。

这里写图片描述
图2 整体架构

Master-Worker:定时心跳通信,管理系统状态。
Worker内部:利用Cache机制,将热数据置于MEM。
Alluxio-UFS:定期备份数据。
Client-Alluxio:Client从Master获得文件元数据信息,若文件数据在Alluxio中,从本地或远程Worker上读取,若文件不在Alluxio中,从UFS上读取。

文件组织

如图3所示,元数据为Inode Tree形式存储,文件和目录都为一个Inode节点。文件属性包括构成Inode的基本信息、块信息、备份信息,其中Inode基本信息包括id、名称、长度、创建/修改时间等。

这里写图片描述
图3 Inode Tree

在Alluxio中,文件数据按块的形式组织,其中文件&块信息保存在Master中,块数据保存在Worker中。Worker中以块为粒度进行存储和管理,UFS以文件为粒度进行存储和管理。如图4,所示。

这里写图片描述
图4 文件存储

读写行为

Alluxio使用读写类型控制数据的存储层位置,ReadType控制读数据时行为,WriteType控制写数据时的行为。如表一所示。

这里写图片描述
表一 数据存储

Alluxio使用定位策略控制目标Worker,需要向Worker中写数据块时,决定使用哪个Worker。

这里写图片描述
表二 控制策略

容错机制

作为分布式文件系统,Tachyon具有良好的容错机制,Master和Worker都有自己的容错方式。Master支持使用ZooKeeper进行容错。同时,Master中保存的元数据使用Journal进行容错,具体包括Editlog—记录所有对元数据的操作,以及Image—持久化元数据信息。此外,Master还对各个Worker的状态进行监控,发现Worker失效时会自动重启对应的Worker。对于具体的文件数据,使用血统关系(Lineage)进行容错。文件元数据中记录了文件之间的依赖关系,当文件丢失时,能够根据依赖关系进行重计算来恢复文件数据。此外,还采用了Checkpoint。如图5所示。

这里写图片描述
图5 Lineage

1.3 重要特性与使用场景

分层存储

由于内存大小有限,所以需要分层存储。这里有两个概念一个是StorageTier,是指存储层,对应存储介质,如内存

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值