【问题标题】:PySpark equivalent of pandas read_sql_queryPySpark 等效于 pandas read_sql_query
【发布时间】:2020-08-17 14:32:06
【问题描述】:

我正在尝试从 pandas 切换到 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 中找到一些东西,但没有找到任何有用的东西。

【问题讨论】:

    标签: python sql pandas pyspark apache-spark-sql


    【解决方案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()
    

    【讨论】:

    • 太棒了!感谢您的帮助
    猜你喜欢
    • 2018-04-10
    • 2020-05-14
    • 2015-12-27
    • 2019-06-16
    • 1970-01-01
    • 2017-11-09
    • 2020-07-16
    • 2023-03-24
    相关资源
    最近更新 更多