Tachyon是什么
Tachyon(/'tæki:ˌɒn/ 意为超光速粒子)是以内存为中心的分布式文件系统,拥有高性能和容错能力,能够为集群框架(如Spark、MapReduce)提供可靠的内存级速度的文件共享服务。Tachyon诞生于UC Berkeley的AMPLab,由该实验室的李浩源童鞋初创。2012年12月,Tachyon发布了第一个版本0.1.0。到2014年12月,Tachyon的最新发布版版本为0.5.0,并且正在开发0.6.0版本。目前(2014年12月),已有50多家公司开始使用Tachyon,超过20家公司(如 Intel, Yahoo, Pivotal, Redhat,Baidu等)为Tachyon的开发进行了贡献,在GitHub上Tachyon的贡献者也已上升到55人。南京大学PASALab从早期就开始和Tachyon Community一起从事着该项目的建设和开发工作。
最初出现是为了解决如下问题:
大数据分析流水线中数据共享通过基于磁盘文件系统(HDFS等)性能比较缓慢;
大数据计算引擎的处理进程(Spark的Executor,MapReduce的Child JVM等)崩溃出错后,缓存的数据也会全部丢失;
基于内存的系统存储数据冗余,对象太多会导致Java GC时间过长;
Tachyon系统架构
图2显示了Tachyon在Spark平台的部署:总的来说,
Tachyon有三个主要的部件:Master, Client,与Worker。在每个Spark Worker节点上,都部署了一个Tachyon Worker,Spark Worker通过Tachyon Client访问Tachyon进行数据读写。所有的Tachyon Worker都被Tachyon Master所管理,Tachyon Master通过Tachyon Worker定时发出的心跳来判断Worker是否已经崩溃以及每个Worker剩余的内存空间量。
Tachyon如何容错?
Tachyon本身又是如何容错的呢?不落地DFS中数据不是照样会丢失吗?而且Tachyon只在内存中保存一份数据拷贝。有一种形象的说法是:Tachyon将lineage从Spark中下移到了自己。既然手握lineage,就有办法了。跟Spark类似,它利用lineage信息(lineage-based recovery)和异步记录的checkpoint来恢复数据 (与Spark类似,都是基于RDD不可变性以及粗粒度操作才能完成的,不同点是Tachyon管理的可以是跨框架的lineage而不限于RDD和Spark的转换?),所以Tachyon放心大胆地积极(aggressively)使用内存。
其次,Tachyon本身的master通过ZooKeeper集群管理,down机时会自动选举出新的leader,并且worker会自动连接到新的leader上。
心跳机制
在Tachyon中,心跳(HeartBeat)用于两个方面:Master, Worker, Client之间的定期通信;Master, Worker自身的定期状态自检。具体地:
Client向Master发送心跳信号:表示Client仍处于连接中,Client释放连接后重新连接会获得新的UserId
Client向Worker发送心跳信号:表示Client仍处于连接中,释放连接后Worker会回收该Client的用户空间
Worker自检,同时向Master发送心跳信号:Worker将自己的存储空间信息更新给Master(容量,移除的块信息),同时清理超时的用户,回收用户空间
Master自检:检查所有Worker的状态,若有Worker失效,会统计丢失的文件并尝试重启该Worker
相关推荐
1.Spark及其生态圈简介.pdf 2.Spark编译与部署(上)--基础环境搭建.pdf 2.Spark编译与部署(下)--Spark编译安装.pdf 2.Spark编译与部署(中)--Hadoop编译安装.pdf...10.分布式内存文件系统Tachyon介绍及安装部署.pdf
AMPLab的最新目标就是Hadoop分布式文件系统(HDFS),不过HDFS在可用性和速度方面一直受人诟病,所以AMPLab创建了Tachyon( 在High Scalability上非常夺目,引起了Derrick Harris的注意)。 当然,AMPLab并不是第...
- **Alluxio**(前身为Tachyon):作为内存级的分布式文件系统,加速跨集群的数据访问。 - **FUSE(Filesystem in Userspace)**:允许在用户空间实现文件系统,简化分布式文件系统的开发。 此外,文档可能会讨论...
Alluxio是一个基于内存的分布式文件系统,它是架构在底层分布式文件系统和上层分布式计算框架之间的一个中间件,主要职责是以文件形式在内存或其它存储设施中提供数据的存取服务。 Alluxio的前身为Tachyon。 ...
通过阅读《分布式文件系统介绍.doc》文档,你可以深入理解分布式文件系统的基本概念、工作原理、优缺点以及实际应用案例。对于想要深入了解或从事相关开发工作的人员来说,这份资料将是非常有价值的参考资料。
7. **分布式文件系统**: - HDFS的架构和工作原理:Block、NameNode、DataNode等角色。 - GFS(Google File System)和Tachyon的特性。 8. **分布式协调服务**: - ZooKeeper:提供命名服务、配置管理、集群同步...
本质上,Tachyon是个分布式的内存文件系统,它在减轻Spark内存压力的同时,也赋予了Spark内存快速大量数据读写的能力。Tachyon把内存存储的功能从Spark中分离出来,使Spark可以更专注计算的本身,以求通过更细的分工...
Alluxio(以前称为Tachyon)是一个虚拟的分布式存储系统。它弥合了计算框架和存储系统之间的鸿沟,使计算应用程序可以通过公共接口连接到众多存储系统。Alluxio项目源自加州大学伯克利分校AMPLab的一个名为Tachyon的...
Tachyon是一种内存为中心的分布式文件系统,专门设计用于集群计算框架(例如Spark和MapReduce)来提供内存级别的跨集群文件共享服务。这种设计极大地提升了数据的存取速度,能够加快处理大数据时的数据读写效率。 ...
Alluxio(以前称为Tachyon)是一个虚拟的分布式存储系统。它弥合了计算框架和存储系统之间的鸿沟,使计算应用程序可以通过公共接口连接到众多存储系统。Alluxio项目源自加州大学伯克利分校AMPLab的一个名为Tachyon的...
太子版本0.1在线文件您可以在项目网页上找到最新的Tachyon文档,包括编程指南。
另外,文中还提到了Tachyon内存基础的文件系统,这是一种数据中心规模的分布式文件系统,它利用了文件系统作为支撑共享内存的技术。这种设计充分利用了Tachyon的能力,将文件系统用作分布式内存,提供了比传统存储更...
在大数据处理领域,Tachyon作为一个开源的内存级分布式文件系统,旨在提供高吞吐量的数据访问,以满足实时分析的需求。Tachyon 0.4.1版本是针对Hadoop 2.0.4的一个优化版本,它与Hadoop生态系统紧密集成,为大数据...
这些服务的背后,是高度优化的分布式存储架构,如Cassandra、HBase和Tachyon等。 总结来说,分布式存储系统是应对大数据挑战的关键技术,通过合理的架构设计和策略选择,可以实现高效、可靠的数据存储和处理。理解...
作为分布式内存文件系统,Tachyon能够提供高速的数据访问能力,这使得它成为连接计算框架(如Spark、MapReduce等)与底层存储系统的关键桥梁。 ### Tachyon的发展历程 Tachyon最初由加州大学伯克利分校的AMPLab...
- **数据模型**:深入学习Alluxio如何抽象和管理数据,如Block、文件系统的元数据管理等。 - **缓存策略**:探索Alluxio如何决定哪些数据应该被缓存,以及何时替换缓存中的数据。 - **持久化与一致性**:研究...
Tachyon存储系统是一个内存为中心的分布式文件系统,它由阿帕奇软件基金会(Apache Software Foundation)旗下的项目组Amplab开发,并以高性能和容错能力为特色,为如Spark、MapReduce这样的集群计算框架提供可靠且...
它的出现对于大数据领域的技术创新和优化具有非常重要的意义,是对传统分布式文件系统的补充和发展,特别是在处理速度和可靠性之间的平衡上。随着技术的不断发展和优化,Tachyon有望成为未来大数据存储和处理的重要...