Spark SQL - 在Spark Streams

时间:2018-05-14 09:44:15

标签: apache-spark apache-spark-sql spark-streaming

我是Spark的新手,想在Spark流上运行Spark SQL查询。

我目前的理解是我需要在我的Spark作业的代码中定义我的SQL查询,因为从Spark SQ主页提取的这个片段显示: -

spark.read.json("s3n://...")
  .registerTempTable("json")
results = spark.sql(
  """SELECT * 
     FROM people
     JOIN json ...""")

我想要做的是在某处定义我的查询 - 例如。 .sql文件 - 然后将其部署在Spark集群上。

有人能告诉我Spark现在是否支持这种架构?例如。一些API?

1 个答案:

答案 0 :(得分:2)

你可以使用open with open来填充你的目的:

with open('filepath/filename.sql') as fr:
    query = fr.read()
x = spark.sql(query)
x.show(5)

您可以在使用filename.sql

提交作业时将sys.argv[]作为参数传递

请参阅此链接以获取更多帮助:Spark SQL question