在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中文網其他相關文章!