如何使用python在spark中执行.sql文件 [英] How to execute .sql file in spark using python

查看:88
本文介绍了如何使用python在spark中执行.sql文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

from pyspark import SparkConf, SparkContext
from pyspark.sql import SQLContext

conf = SparkConf().setAppName("Test").set("spark.driver.memory", "1g")
sc = SparkContext(conf = conf)

sqlContext = SQLContext(sc)

results = sqlContext.sql("/home/ubuntu/workload/queryXX.sql")

当我使用以下命令执行此命令时:python test.py 它给了我一个 error.

When I execute this command using: python test.py it gives me an error.

y4j.protocol.Py4JJavaError:调用 o20.sql 时发生错误.:java.lang.RuntimeException:[1.1] 失败:with"预期但/"找到

y4j.protocol.Py4JJavaError: An error occurred while calling o20.sql. : java.lang.RuntimeException: [1.1] failure: ``with'' expected but `/' found

/home/ubuntu/workload/queryXX.sql

/home/ubuntu/workload/queryXX.sql

at scala.sys.package$.error(package.scala:27)

我对 Spark 非常陌生,我需要帮助才能继续前进.

I am very new to Spark and I need help here to move forward.

推荐答案

SqlContext.sql 需要有效的 SQL 查询,而不是文件的路径.试试这个:

SqlContext.sql expects a valid SQL query not a path to the file. Try this:

with open("/home/ubuntu/workload/queryXX.sql") as fr:
   query = fr.read()
results = sqlContext.sql(query)

这篇关于如何使用python在spark中执行.sql文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆