问题标签 [apache-spark-dataset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
694 浏览

apache-spark - 数据集上的地图功能是否针对一列的操作进行了优化?

因为,使用withDataFrame很容易通过一些操作生成一个新列。要做这样的事情,我想我会使用这个函数:udfdf.withColumn("newCol", myUDF("someCol"))Datasetmap

您必须将整个案例类T作为输入传递给函数。如果Dataset[T]有很多字段/列,如果您只想通过对T. 我的问题是,Catalyst 是否足够聪明,能够对此进行优化?

0 投票
3 回答
29125 浏览

scala - 将 scala 列表转换为 DataFrame 或 DataSet

我是 Scala 的新手。我正在尝试将 scala 列表(在源 DataFrame 上保存一些计算数据的结果)转换为 Dataframe 或 Dataset。我没有找到任何直接的方法来做到这一点。但是,我尝试了以下过程将我的列表转换为 DataSet,但它似乎不起作用。我提供以下 3 种情况。

有人可以给我一些希望,如何进行这种转换?谢谢。

0 投票
4 回答
39758 浏览

scala - 尝试将数据帧行映射到更新行时出现编码器错误

当我试图在我的代码中做同样的事情时,如下所述

我从这里获取了上述参考: Scala: How can I replace value in Dataframs using scala 但是我收到编码器错误

找不到存储在数据集中的类型的编码器。通过导入 spark.implicits 支持原始类型(Int、S 字符串等)和产品类型(案例类)。未来版本中将添加对序列化其他类型的支持。

注意:我使用的是 spark 2.0!

0 投票
0 回答
1044 浏览

dataset - Spark 2.0:从 RDD 迁移到数据集

我想调整我的 Java Spark 应用程序(它实际上使用 RDD 进行某些计算)以使用Datasets而不是RDDs. 我是数据集的新手,不知道如何将哪个事务映射到相应的数据集操作。

目前我像这样映射它们:

相应的问题是:

  • 等于JavaRDD.mapToPair方法Dataset.groupByKey
  • JavaPairRDD映射KeyValueGroupedDataset到?
  • 哪种方法等于JavaPairRDD.aggregateByKey方法?

但是,我想将以下 RDD 代码移植到数据集中:

我的代码看起来是这样的:

0 投票
2 回答
15132 浏览

scala - 为几列创建具有空值的 DataFrame

我正在尝试创建一个DataFrameusing RDD.

首先,我正在RDD使用以下代码创建一个 -

它工作正常 -

帐户:org.apache.spark.rdd.RDD[(Int, Any, Int, String)] = ParallelCollectionRDD[0] at parallelize at :27

但是当尝试使用以下代码创建DataFrameRDD

我得到以下错误

java.lang.UnsupportedOperationException:不支持 Any 类型的架构

我分析说,每当我投入null价值时,Seq只有我得到了错误。

有没有办法添加空值?

0 投票
1 回答
13470 浏览

scala - Spark 错误:无法找到存储在数据集中的类型的编码器

我在 Zeppelin 笔记本上使用 Spark,而 groupByKey() 似乎不起作用。

这段代码:

给了我这个错误(可能是编译错误,因为它在我正在处理的数据集非常大时立即显示):

我尝试添加一个案例类并将我的所有行映射到其中,但仍然出现相同的错误

我的数据框的架构是:

0 投票
2 回答
13283 浏览

apache-spark - 从 CSV 文件创建 Spark 数据集

我想从一个简单的 CSV 文件创建一个 Spark 数据集。以下是 CSV 文件的内容:

这是制作数据集的代码:

这是错误消息:“无法number_of_people从字符串向上转换为 bigint,因为它可能会截断”

Databricks 在此博客文章中讨论了创建数据集和此特定错误消息。

编码器会急切地检查您的数据是否与预期的模式匹配,在您尝试错误地处理 TB 数据之前提供有用的错误消息。例如,如果我们尝试使用太小的数据类型,这样转换为对象会导致截断(即 numStudents 大于一个字节,其最大值为 255),Analyzer 将发出 AnalysisException。

我正在使用该Long类型,所以我没想到会看到此错误消息。

0 投票
0 回答
442 浏览

apache-spark - Spark 在没有缓存的情况下内存不足

我真的很难理解为什么在运行 Spark 作业时内存不足。我从数据库中加载了我的 RDD,并且没有缓存 RDD,但作业仍然失败,缺少输出位置。

这太疯狂了......知道我需要做什么来解决这个问题吗?

我在独立集群上运行

例外

0 投票
0 回答
209 浏览

scala - Spark 数据集:使用 groupBy MissingRequirementError 时出现异常

我开始使用 Spark 数据集,当我在 Spark 1.6.1 中执行 groupby 时遇到此异常

这是例外

scala.reflect.internal.MissingRequirementError:找不到对象 $line19.$read。在 scala.reflect.internal.MissingRequirementError$.signal(MissingRequirementError.scala:16) 在 scala.reflect.internal.MissingRequirementError$.notFound(MissingRequirementError.scala:17) 在 scala.reflect.internal.Mirrors$RootsBase.ensureModuleSymbol(Mirrors .scala:126) 在 scala.reflect.internal.Mirrors$RootsBase.staticModule(Mirrors.scala:161) 在 scala.reflect.internal.Mirrors$RootsBase.staticModule(Mirrors.scala:21) 在 $iwC$$iwC$ $iwC$$iwC$$iwC$$iwC$$iwC$$iwC$$typecreator2$1.apply(:32) at scala.reflect.api.TypeTags$WeakTypeTagImpl.tpe$lzycompute(TypeTags.scala:231) at scala .reflect.api.TypeTags$WeakTypeTagImpl.tpe(TypeTags.scala:231) at org.apache.spark.sql.SQLImplicits$$typecreator10$1.apply(SQLImplicits.scala:

任何人都可以帮忙吗?

0 投票
0 回答
382 浏览

apache-spark - 使用 Spark Dataset API+案例类+Spark Job Server 时的 ClassCastException

每当我重新创建(删除和创建上下文)Spark SQL 上下文并第二次运行作业时,我都会遇到奇怪的错误,或者在它总是抛出这个异常之后。

我的火花课:

我在用着:

  • 火花 1.6.1
  • Spark 作业服务器 0.6.2 (docker)