将 JSON 个文件从 Spark 流式传输到 H2O

Read JSON files from Spark streaming into H2O

我在 AWS 上有一个集群,我在其中安装了 H2O、Sparkling Water 和 H2O Flow,用于对大量数据进行机器学习。

现在,这些文件以 JSON 格式来自流媒体作业。假设它们位于 S3 中名为 streamed-data 的文件夹中。

在 Spark 中,使用 SparkContext,我可以轻松地一次读取它们以创建一个 RDD(这是 Python,但并不重要):

sc = SparkContext()
sc.read.json('path/streamed-data')

这会读取所有内容,为我创建 RDD,非常方便。

现在,我想利用 H2O 的功能,因此我将它与其他提到的软件一起安装在集群上。

从 H2O 流程来看,我的问题是缺少 JSON 解析器,所以我想知道我是否可以首先将它们导入 H2O,或者是否有什么我可以做的绕过问题。

当 运行 Sparkling Water 时,您可以很容易地将 RDD/DF/DS 转换为 H2O 框架。像这样的东西(Scala,Python 看起来很相似)应该可以工作:

val dataDF = sc.read.json('path/streamed-data')
val h2oContext = H2OContext.getOrCreate(sc)
import h2oContext.implicits._
val h2oFrame = h2oContext.asH2OFrame(dataDF, "my-frame-name")

从现在开始,您可以使用来自 FlowUI 的代码级别 and/or 的框架。

您可以在此处找到更多示例 for Python and here for Scala