火花流上的聚合

时间:2016-11-23 04:09:35

标签: json scala apache-spark streaming aggregation

我是Apache Spark的新手。

我的Scala代码使用JSON消息作为Apache Spark中Kafka主题的字符串。

现在我想在我的JSON中聚合某个字段。我有什么选择?

1 个答案:

答案 0 :(得分:1)

您可以将JSON放在数据框/数据集中并执行以下聚合操作。

  • groupBy
  • groupByKey
  • 汇总
  • 立方体

Spark SQL可以自动推断JSON数据集的架构并将其加载为数据集[Row]。可以在String的RDD或JSON文件上使用SparkSession.read.json()完​​成此转换。

val json_path = "dir/example.json"
val jsonDF = spark.read.json(json_path)
jsonDF.groupBy("col1").count().show()