首页 >数据库 >mysql教程 >如何将外部数据库中的特定查询结果提取到 Spark DataFrame 中?

如何将外部数据库中的特定查询结果提取到 Spark DataFrame 中?

DDD
DDD原创
2024-11-30 16:05:14699浏览

How to Fetch Specific Query Results from an External Database into a Spark DataFrame?

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

在 Apache Spark 中,可以连接到外部数据库并将数据加载到 Spark DataFrame 中使用读取方法。从数据库表中读取时,默认行为是检索整个表。但是,在某些情况下,可能需要仅获取特定查询的结果。

在 PySpark 中查询外部数据库

使用 PySpark,您可以将 SQL 查询指定为“从数据库读取时使用“dbtable”选项。这允许您获取查询的结果集而不是整个表。

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()

在此示例中,查询 (SELECT foo, bar FROM schema.tablename) 在外部数据库上执行,并且结果集被加载到 Spark DataFrame df 中。

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

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn