在 Apache Spark 中,可以连接到外部数据库并将数据加载到 Spark DataFrame 中使用读取方法。从数据库表中读取时,默认行为是检索整个表。但是,在某些情况下,可能需要仅获取特定查询的结果。
使用 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中文网其他相关文章!