首页 > 数据库 > mysql教程 > 如何在 Apache Spark 2.0.0 中从外部数据库获取特定查询结果?

如何在 Apache Spark 2.0.0 中从外部数据库获取特定查询结果?

Mary-Kate Olsen
发布: 2024-12-02 02:46:08
原创
667 人浏览过

How to Fetch Specific Query Results from External Databases in Apache Spark 2.0.0?

在 Apache Spark 2.0.0 中从外部数据库获取查询结果

在 Apache Spark 中,从外部数据库获取数据通常是通过使用 DataFrameReader 加载整个表来完成的。但是,有时可能需要仅获取特定查询的结果。

使用子查询

在 Apache Spark 2.0.0 中,可以将子查询指定为 dbtable 参数从 JDBC 源读取时。这允许您获取特定查询的结果而不是整个表。

考虑用 Pyspark 编写的以下代码片段:

from pyspark.sql import SparkSession

spark = SparkSession\
    .builder\
    .appName("spark play")\
    .getOrCreate()    

df = spark.read\
    .format("jdbc")\
    .option("url", "jdbc:mysql://localhost:port")\
    .option("dbtable", "(SELECT foo, bar FROM schema.tablename) AS tmp")\
    .option("user", "username")\
    .option("password", "password")\
    .load()
登录后复制

在此示例中,而不是获取整个表schema.tablename 表,代码执行子查询 (SELECT foo, bar FROM schema.tablename) AS tmp 并将结果存储在临时表 tmp 中。然后,DataFrameReader 将临时表 tmp 中的数据加载到 DataFrame df 中。

以上是如何在 Apache Spark 2.0.0 中从外部数据库获取特定查询结果?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板