417得票20回答
Spark - repartition()和coalesce()的区别

根据《学习Spark》,请记住重新分区数据是一项相当昂贵的操作。Spark还有一个经过优化的repartition()版本,称为coalesce(),它允许避免数据移动,但前提是您减少了RDD分区的数量。 我得到的一个区别是,使用repartition() 可以增加/减少分区的数量,而使用c...

340得票14回答
Spark中DataFrame、Dataset和RDD的区别

我想知道在Apache Spark中,RDD和DataFrame (Spark 2.0.0 DataFrame是一个Dataset [Row]的类型别名)之间有什么区别? 你能够将一个转换为另一个吗?

330得票25回答
如何在PySpark中更改数据框列名?

我来自pandas背景,习惯于从CSV文件中读取数据到数据框并通过简单的命令将列名更改为有用的内容: df.columns = new_column_name_list 然而,使用sqlContext创建的PySpark数据框不适用于相同的方法。 我能想到的唯一解决办法如下: df =...

319得票17回答
如何在Spark Dataframe中显示完整列内容?

我正在使用spark-csv将数据加载到DataFrame中。我想执行一个简单的查询并显示内容:val df = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").load("my.csv")...

306得票17回答
map和flatMap有什么区别?它们各自的优秀应用场景是什么?

有人可以解释一下map和flatMap之间的区别,以及每个函数的适用场景吗? 什么是“扁平化结果”,它有什么好处?

299得票2回答
Spark Standalone集群中的workers、executors和cores是什么?

我阅读了集群模式概述,但仍然无法理解Spark Standalone集群中的不同进程和并行性。 worker是JVM进程还是其他类型的进程?我运行了bin\start-slave.sh,发现它生成了一个实际上是JVM的worker。 根据上面的链接,executor是在工作节点上为应用程序...

290得票14回答
Spark java.lang.OutOfMemoryError: Java heap space

我的集群:1个主节点,11个从节点,每个节点都有6GB的内存。 我的设置:spark.executor.memory=4g, Dspark.akka.frameSize=512 问题如下: 首先,我从HDFS中读取了一些数据(2.19 GB)到RDD中:val imageBundleRDD ...

256得票11回答
当在闭包外调用函数时,只有类而不是对象会出现“任务不可序列化:java.io.NotSerializableException”的错误。

在闭包之外调用函数时出现奇怪的行为: 如果函数在一个对象中,则一切正常 当函数在类中时,会出现: 任务不可序列化:java.io.NotSerializableException: testing 问题是我需要将代码放在类中而不是对象中。有任何想法为什么会发生这种情况吗? S...

252得票9回答
Apache Spark:核心数与执行器数量的比较

我试图理解在YARN上运行Spark作业时,核心数和执行器数之间的关系。 测试环境如下: 数据节点数量: 3 数据节点机器规格: CPU: Core i7-4790 (# of cores: 4, # of threads: 8) RAM: 32GB (8GB x 4) HDD: 8...

241得票6回答
缓存和持久化有什么区别?

在 Spark 中,关于 RDD 的持久化,cache() 和 persist() 有什么区别?