【发布时间】:2018-03-05 15:22:13
【问题描述】:
将 Apache Spark 2.2.0 结构化流视为:
jsonStream.printSchema()
root
|-- body: binary (nullable = true)
body 内的数据类型为 Protocol Buffers v2 和嵌套的 JSON。好像
syntax = "proto2";
message Data {
required string data = 1;
}
message List {
repeated Data entry = 1;
}
如何提取 Spark 中的数据以“进一步”处理它?
我查看了ScalaPB,但是当我在 Jupyter 中运行我的代码时,无法将“.proto”代码包含在内。我也不知道如何将 DataFrame 转换为流上的 RDD。由于流媒体源,尝试 .rdd 失败。
更新 1:我想出了如何使用 ScalaPB 的控制台工具从 protobuf 规范生成 Scala 文件。我仍然无法将它们作为“类型不匹配”导入。
【问题讨论】:
-
您能描述一下如何从 protobuf 规范生成 Scala 文件吗?您能描述一下您是如何尝试将它们导入 Spark 的吗?
标签: scala apache-spark protocol-buffers spark-structured-streaming