ホームページ >データベース >mysql チュートリアル >特定のクエリ結果を外部データベースから Spark DataFrame にフェッチするにはどうすればよいですか?

特定のクエリ結果を外部データベースから Spark DataFrame にフェッチするにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-30 16:05:14697ブラウズ

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。