Dans Apache Spark, il est possible de se connecter à des bases de données externes et de charger des données dans Spark DataFrames en utilisant la méthode de lecture. Lors de la lecture d'une table de base de données, le comportement par défaut consiste à récupérer la table entière. Cependant, dans certains scénarios, il peut être souhaitable de récupérer uniquement les résultats d'une requête spécifique.
À l'aide de PySpark, vous pouvez spécifier une requête SQL comme " dbtable" lors de la lecture à partir d'une base de données. Cela vous permet de récupérer le jeu de résultats d'une requête au lieu de la table entière.
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()
Dans cet exemple, la requête (SELECT foo, bar FROM schema.tablename) est exécutée sur la base de données externe, et l'ensemble de résultats est chargé dans le Spark DataFrame df.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!