我正尝试从熊猫切换到pyspark,通常在进行分析时,我使用pd.read_sql_query
从redshift数据库中读取分析所需的数据。
示例:
query = '''
SELECT id, SUM(value)
FROM table
GROUP BY id
'''
df = pd.read_sql_query(query, engine)
PySpark中是否有任何等效功能?是否可以接收查询和SQLAlchemy引擎并返回查询结果?如果没有,在pyspark中获取SQL查询结果的最佳方法是什么?
我试图在pyspark.SQLContext
中找到一些东西,但是没有发现有用的东西。
答案 0 :(得分:1)
使用 spark.sql()
API运行查询。
Example:
query='select 1'
spark.sql(query).show()
#+---+
#| 1|
#+---+
#| 1|
#+---+
要在任何 RDBMS
数据库上运行查询,然后使用spark.read.format("jdbc")
建立连接并执行查询。
spark.read.format("jdbc").option(...).load()