Tachyon的设计思想主要有两个,第一个是基于内存的OffHeap的分布式存储,就是一定要把数据存储在JVM堆空间之外,这样的话能够避免GC。第二个是通过在存储层保存数据的Lineage实现容错,这是在Spark中引入的思想,Lineage记录了源数据以及源数据经过什么样的计算得到的当前数据,Tachyon将这些本来是在计算层才关心的信息放到了存储层。Tachyon仅仅保存一份数据在内存中,内存是很宝贵的资源。而HDFS它为了实现容错在磁盘上默认保存了三份,那么如果Tachyon某一个节点是没有这份数据的时候,它会通过网络去读。因为在远端的结点上数据也是在内存中间的,因此远端读取没有磁盘的IO只有网络的开销,所以说也是很高效的。当数据丢失的时候,Tachyon会根据数据的Lineage进行数据的恢复,这个过程有点像Spark中的数据重算,但是它比Spark走的更远。因为Spark中的重算是在程序运行时的操作,当程序运行的时候发现某个节点挂掉了,它会重新计算来管不着数据,问题是如果整个Job已经结束之后,数据再发生丢失就没有办法了,Tachyon可以解决这个问题。因为Tachyon在存储层存储了整个数据的依赖关系,包括了这个数据是由什么样的框架,通过什么样的执行过程生成的,当数据丢失的时候Tachyon会重新启动这些应用然后生新成这些数据,实现数据恢复。
Tachyon设计思想
转载
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
比较全的常见的架构设计思想整理
比较全的常见的架构设计思想整理
协调者 SOA 微服务 架构设计 技术架构 -
tachyon build出错
mvn -Dhadoop.version=2.3.0 clean install一般是maven下载失败,断了再敲一遍继续下载相应的库
tachyon hadoop maven -
Tachyon基本使用05-----Tachyon集群模式安装
一、环境配置1.集群环境主机名 IP &nb
Hadoop Spark Tachyon -
4. Tachyon安装-Tachyon本地模式搭建
1) 下载$ wget ./downloads/tachyon-0.5.0-bin.tar.gz$ tar xvfz tachyon-0.5.0-bin.tar.gz$ cd
tachyon mapreduce spark JAVA UI -
4. Tachyon安装-Tachyon集群模式搭建
tachyon默认支持hadoop-1.0.4版本,如果需要使用更高版本需要重新编译打包。如果使用maven打包,命令如下:mvn
tachyon mapreduce spark hadoop sed