我是火花的小伙子,试图从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的成员
我做错了什么?
答案 0 :(得分:1)
参考这是使用火花1.6,它可能会帮助你 https://spark.apache.org/docs/1.6.0/streaming-programming-guide.html#a-quick-example
答案 1 :(得分:1)
readStream.format("socket")
它不适用于Spark 1.6.0,因为此代码所属的Spark Structured Streaming仅在Spark 2.0及更高版本中可用。
在Spark 2.0中,有一些内置源。
套接字源(用于测试) - 从套接字连接读取UTF8文本数据。侦听服务器套接字位于驱动程序中。请注意,这应该仅用于测试,因为它不提供端到端的容错保证。
为了读取“来自Spark 1.6.0中的套接字的数据”,您必须使用Spark Streaming(我个人认为已死,并建议不要使用它,除非您必须)。