示例数据和代码

示例数据

请尝试以答案可直接使用的格式提供最小示例输入数据,而无需繁琐耗时的解析,例如输入文件或本地集合以及创建分布式数据结构所需的所有代码。

适用时始终包含类型信息:

  • 在基于 RDD 的 API 中,在必要时使用类型注释。
  • 在基于 DataFrame 的 API 中,提供架构信息作为 StrucTypeDataset.printSchema 的输出。

Dataset.showprint 的输出看起来不错,但没有告诉我们任何关于底层类型的信息。

如果特定问题仅在规模上发生,则使用随机数据生成器(Spark 在 org.apache.spark.mllib.random.RandomRDDsorg.apache.spark.graphx.util.GraphGenerators 中提供了一些有用的实用程序

请尽可能使用类型注释。虽然你的编译器可以很容易地跟踪类型,但对于凡人来说这并不容易。例如:

val lines: RDD[String] = rdd.map(someFunction)

要么

def f(x: String): Int = ???

比以下更好:

val lines = rdd.map(someFunction)

def f(x: String) = ???

分别。