首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在星火中Alluxio(大子)与钨的区别?

在星火中Alluxio(大子)与钨的区别?
EN

Stack Overflow用户
提问于 2018-10-04 11:39:49
回答 3查看 1.3K关注 0票数 1

Tachyon是一个分布式的内存存储系统,它是独立于星火应用程序开发的,它可以在星火应用程序中用作堆外持久性存储。

钨是一种新的Spark组件,它通过直接在字节级别上工作来提供更高效的星火操作。由于Tungsten不再依赖于使用Java对象,所以我们可以使用堆上( JVM)或堆外存储。

在离堆模式下,这两种方式都减少了垃圾收集开销,因为数据不是存储在Java对象中。

那么,我是否可以简单地考虑一下,Tachyon给一般的RDD带来了好处,而spark则从Tungsten带来了好处呢?

假设以下代码

代码语言:javascript
复制
val df = spark.range(10)

val rdd = df.rdd

df.persist(StorageLevel.OFF_HEAP) // in Tungsten format(bytes)?

df.show

rdd.persist(StorageLevel.OFF_HEAP) // in Tachyon storage ?

rdd.count
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-10-04 12:24:14

简而言之,你的两种说法都是不正确的:

  • 因为Spark1.6 OFF_HEAP存储不再使用Alluxio,而是使用Spark的内部堆外存储。例如,参见火花-16025。
  • Spark中的所有存储模式都以内部二进制格式存储数据,这些数据可以使用spark.sql.inMemoryColumnarStorage.*属性进一步配置。
票数 1
EN

Stack Overflow用户

发布于 2018-10-04 12:20:50

Alluxio获得内存速度、读/写操作的好处。火花能够从Alluxio (在内存存储系统中)读取数据。这提供了避免来自硬盘(任何文件系统,如HDFS等)的输入/输出(IO)的好处。

钨-是火花的后端优化引擎。所编写的dataframe/dataset API或Spark中的代码以逻辑/优化逻辑计划的形式由催化剂优化器进行优化。一旦这一阶段结束,钨优化引擎将接管并负责动态生成代码(称为“Code”),这是对分布式环境中的执行高度优化的代码。

对我来说,两者都有不同的目的,我更愿意分别对待它们。

希望它能在一定程度上有所帮助。

票数 2
EN

Stack Overflow用户

发布于 2018-10-08 23:23:43

火花在不同阶段与Alluxio和Tungsten相互作用。

对于Spark,Alluxio是一个外部分布式存储系统,类似于HDFS。火花通过文件系统接口与Alluxio进行交互(请参阅下面的示例)。除了Alluxio提供的存储服务外,Spark访问HDFS或本地文件系统的接口本质上是相同的,Alluxio可以利用内存作为存储介质。

代码语言:javascript
复制
// save data as text file to Alluxio
> rdd.saveAsTextFile("alluxio://localhost:19998/rdd1")
// read data as text file from Alluxio
> rdd = sc.textFile("alluxio://localhost:19998/rdd1")
// save data as object file to Alluxio
> rdd.saveAsObjectFile("alluxio://localhost:19998/rdd2")
// read data as object file from Alluxio
> rdd = sc.objectFile("alluxio://localhost:19998/rdd2")

火花只在各个阶段与Alluxio交互,以读取输入数据文件和写入输出文件。

钨是星火的内部数据表示,旨在提高内存和CPU的效率。本质上,JVM对象的默认内存布局被认为是由于内存空间和GC开销(请参阅databricks中的Project上的博客 )对Spark应用程序的效率低下。钨可以直接处理二进制数据格式中的数据,而不会干扰JVM构造JVM对象。

因此,Spark应用程序可以从Alluxio-在不了解这些字节的情况下读取输入文件,然后根据Tungsten定义的协议,解析数据并在Spark中表示它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52645783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档