高性能、高容错、基于内存的开源分布式存储系统Tachyon的简单介绍

Tachyon是什么?

Tachyon是一个高性能、高容错、基于内存的开源分布式存储系统,并具有类Java的文件API、插件式的底层文件系统、兼容Hadoop MapReduce和Apache Spark等特征。Tachyon能够为集群框架(如Spark、MapReduce等)提供内存级速度的跨集群文件共享服务。Tachyon充分使用内存和文件对象之间的世代(Lineage)信息,因此速度很快,官方号称最高比HDFS吞吐量高300倍。目前,很多公司(如Pivotal、EMC、红帽等)已经在使用Tachyon,并且来自20个组织或公司(如雅虎、英特、红帽等)的60多个贡献者都在为其贡献代码。Tachyon是于UC Berkeley数据分析栈(BDAS)的存储层,它还是Fedroa操作系统自带应用。

Tachyon具有的重要特征如下:

类Java的文件API: Tachyon的原生API同Java的文件类非常相似,并提供了InputStream和OutputStream接口,还支持内存映射IO;
兼容MapReduce和Spark:Tachyon实现了Hadoop的FileSystem接口,因此,MapReduce和Spark无需做任何修改就可以使用Tachyon;
插件式的底层文件系统:Tachyon基于Hadoop并从底层重建了Hadoop平台。Tachyon具有一个通用、方便于接入不同底层文件系统的接口。目前支持的文件系统包括HDFS、S3、GlusterFS、单节点本地文件系统等,对其他文件系统的支持将很快实现。
支持本地原始表:Tachyon提供了对多列数据的本地支持,且提供了选择项,以决定是否将Hot列放入内存以节省空间;
浏览文件系统的Web界面:用户能够通过Web界面浏览文件系统,尤其在Debug模式下,管理员还能够查看每个文件的详细信息,如文件位置、检查点(Checkpoint)路径等;
支持命令行交互:用户能够使用命令“./bin/tachyon tfs”同Tachyon进行交互,如往文件系统中复制数据以及从文件系统往外复制数据;
高容错性:Tachyon具有良好的容错机制,Master和Worker都有自己的容错方式。Master使用ZooKeeper进行容错,Master中保存的元数据使用Journal进行容错,Master还对各个Worker的状态进行监控,发现Worker失效时会自动重启对应的Worker。对于具体的文件数据,Tachyon使用世代关系进行容错。
Tachyon采用了Master-Worker模式,运行中的Tachyon系统由一个Master和多个Worker构成。Tachyon Master管理全部文件的元数据信息,同时也负责监控各个Tachyon Worker的状态。为了高效地对文件进行管理,Tachyon文件在内存中按块组织。文件和块信息保存在Master端,每个Worker以块为单位进行存储和管理。

Tachyon诞生于UC Berkeley的AMPLab,由该实验室的计算机在读博士李浩源初创,并基于Apache License 2.0开源协议发布,代码托管在GitHub,其当前最新版本为0.6.1。去年10份,李浩源在接受InfoQ采访时曾表示:

长期来讲,他们对待Tachyon会像对待Apache Mesos和Apache Spark一样,Tachyon也会进入Apache软件基金会,这里欢迎更多的开发者加入。

近日,从华尔街日报消息得知,Tachyon获得了硅谷风投A16Z的750万美元A轮投资。AMPLab的项目还包括与Hadoop相似、启用了内存分布数据集的开源集群计算环境Spark、类似于基于键/值存储的SQL查询语言PIQL、基于分布式系统的机器学习系统MLBase、多核和大型SMP系统的操作系统Akaros、低延迟计算集群调度系统Sparrow等。此外,Tachyon官网还提供了相关文档,如用户文档、开发者文档等。更多关于Tachyon的信息,读者可以登录其官网或其GitHub提供的Wiki页面查看。

source: http://www.infoq.com/cn/news/2015/03/tachyon-distributed--system

时间: 2024-08-26 18:20:32

高性能、高容错、基于内存的开源分布式存储系统Tachyon的简单介绍的相关文章

EQueue - 一个C#写的开源分布式消息队列的总体介绍(转)

源: EQueue - 一个C#写的开源分布式消息队列的总体介绍 EQueue - 一个纯C#写的分布式消息队列介绍2 EQueue - 详细谈一下消息持久化以及消息堆积的设计

Spark生态系统解析及基于Redis的开源分布式服务Codis

摘要:在第九期"七牛开发者最佳实践日"上,陈超就Spark整个生态圈进行了讲解,而刘奇则分享豌豆荚在Redis上的摸索和实践. 1月24日,一场基于Spark和Redis组成的分布式系统实践分享由Spark资深布道者陈超和豌豆荚资深系统架构师刘奇联手打造. 陈超:Spark Ecosystem & Internals 陈超(@CrazyJvm),Spark布道者 在分享中,陈超首先简短的介绍了Spark社区在2014年的发展:目前Spark的发布版本是1.2,整个2014年Sp

GitHub开源库排名一百的简单介绍,值得收藏!

GitHub Android Libraries Top 100 简介 本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍, 至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果, 然后过滤了跟 Android 不相关的项目, 所以排名并不具备任何官方效力, 仅供参考学习, 方便初学者快速了解当前一些流行的 Android 开源库. iOS 版本的在此: https://github.com/Aufree/tri

基于Redis的开源分布式服务Codis

Redis在豌豆荚的使用历程--单实例==>多实例,业务代码中做sharding==>单个Twemproxy==>多个Twemproxy==>Codis,豌豆荚自己开发的分布式Redis服务.在大规模的Redis使用过程中,他们发现Redis受限于多个方面:单机内存有限.带宽压力.单点问题.不能动态扩容以及磁盘损坏时的数据抢救. Redis通常有3个使用途径:客户端静态分片,一致性哈希:通过Proxy分片,即Twemproxy:还有就是官方的Redis Cluster,但至今无一个

64位开源处理器Rocket的源代码简单介绍

最近大概阅读了一下UCB发布的Rocket处理器的源码,对源代码各个文件的功能有了一些大致的了解,Mark一下. Rocket是一款64bit的标量处理器,5级流水线,采用的是risc-v指令集,集成FPU,并有许多or1200没有的特性,比如:无阻塞缓存.分支预测.返回地址堆栈.硬件页表填充.cache支持ECC.支持多核等. Rocket的源代码是使用Chisel编写的,Chisel是UCB发布的基于Scala的领域特定语言.可以在https://github.com/ucb-bar/roc

《SPARK/TACHYON:基于内存的分布式存储系统》-史鸣飞(英特尔亚太研发有限公司大数据软件部工程师)

史鸣飞:大家好,我是叫史鸣飞,来自英特尔公司,接下来我向大家介绍一下Tachyon.我事先想了解一下大家有没有听说过Tachyon,或者是对Tachyon有没有一些了解?对Spark呢? 首先做一个介绍,我来自英特尔的大数据团队,我们团队主要是致力于各种大数据的软件开发以及这些软件在工业界的推广和应用,我所在的团队主要负责Spark及其软件栈的开发和推广.我们是国内最早参加Spark开发和推广的团队,我们在2012年就加入了Spark社区.在Spark和相关的项目中间投入了大量的人力,长期以来我

分布式存储系统-HBASE

简介 HBase –Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBse技术可在廉价PC Server上搭建起大规模结构化存储集群.HBase利用Hadoop HDFS作为文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协调工具. HBase(NoSQL)的数据模型 HBase 存储的网站页面数据示例 1.表(table),是存储管理数据的. 2.行键(row key),类似于MySQL中的

RDD:基于内存的集群计算容错抽象

本文转载:http://shiyanjun.cn/archives/744.html 摘要 本文提出了分布式内存抽象的概念——弹性分布式数据集(RDD,Resilient Distributed Datasets),它具备像MapReduce等数据流模型的容错特性,并且允许开发人员在大型集群上执行基于内存的计算.现有的数据流系统对两种应用的处理并不高效:一是迭代式算法,这在图应用和机器学习领域很常见:二是交互式数据挖掘工具.这两种情况下,将数据保存在内存中能够极大地提高性能.为了有效地实现容错,

39套精品Java从入门到架构师|高并发|高性能|高可用|分布式|集群|电商缓存|性能调优|设计项目实战|视频教程

精品Java高级课,架构课,java8新特性,P2P金融项目,程序设计,功能设计,数据库设计,第三方支付,web安全,高并发,高性能,高可用,分布式,集群,电商,缓存,性能调优,设计模式,项目实战,大型分布式电商项目实战视频教程   视频课程包含: 39套Java精品高级课架构课包含:java8新特性,P2P金融项目,程序设计,功能设计,数据库设计,架构设计,web安全,高并发,高性能,高可用,高可扩展,分布式,集群,电商,缓存,性能调优,设计模式,项目实战,工作流,程序调优,负载均衡,Solr