首頁 >資料庫 >mysql教程 >如何在 Apache Spark 2.0.0 中從外部資料庫取得特定查詢結果?

如何在 Apache Spark 2.0.0 中從外部資料庫取得特定查詢結果?

Linda Hamilton
Linda Hamilton原創
2024-12-17 02:13:25481瀏覽

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

在Apache Spark 2.0.0 中從外部資料庫取得查詢結果

在Apache Spark 2.0.0 中,可以擷取結果來自外部資料庫的一組查詢,而不是載入整個表。

在提供的 PySpark 中例如,df DataFrame 是透過使用 JDBC 連接器從 MySQL 表讀取資料來建立的。但是,若要僅取得特定查詢的結果,您可以在 read 方法中將子查詢指定為 dbtable 參數。

以下程式碼示範如何取得查詢SELECT foo, bar FROM 的結果集schema.tablename:

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

透過使用此方法,Spark 將在外部資料庫上執行子查詢,並僅將結果資料載入到DataFrame 中。當您只需要表中的資料子集時,這對於優化效能和減少資料傳輸非常有用。

以上是如何在 Apache Spark 2.0.0 中從外部資料庫取得特定查詢結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn