0

我是 spark 的菜鸟,试图从 Spark 1.6.0 中的套接字读取数据。

以下是我的代码做的是 -

val sqc = new org.apache.spark.sql.SQLContext(sc)
val socketop = sqc.readStream.format("socket").option("myhost","localhost").option("port",1111).load

但我收到如下所示的错误 -

readStream 不是 org.apache.spark.sql.SQLContext 的成员

我究竟做错了什么 ?

4

2 回答 2

1

请参阅它使用 spark 1.6,它可以帮助您 https://spark.apache.org/docs/1.6.0/streaming-programming-guide.html#a-quick-example

于 2017-07-13T10:43:49.367 回答
1
readStream.format("socket")

它在 Spark 1.6.0 中不起作用,因为此代码所属的 Spark Structured Streaming 仅在 Spark 2.0 及更高版本中可用。

引用输入源

在 Spark 2.0 中,有一些内置的源代码。

套接字源(用于测试) - 从套接字连接读取 UTF8 文本数据。侦听服务器套接字位于驱动程序处。请注意,这应该仅用于测试,因为它不提供端到端的容错保证。

为了读取“来自 Spark 1.6.0 中套接字的数据”,您必须使用Spark Streaming(我个人认为它已死,建议不要使用它,除非必须这样做)。

于 2017-07-14T03:44:38.523 回答