Source de données Oracle Spark

Une source de données Oracle Spark est une extension de la source de données JDBC fournie par Spark.

Une source de données Oracle Spark est une extension de la source de données JDBC de Spark. Elle simplifie la connexion aux bases de données Oracle à partir de Spark. Outre toutes les options fournies par la source de données JDBC de Spark, une source de données Oracle Spark simplifie la connexion aux bases de données Oracle à partir de Spark en incluant les éléments suivants :
  • Un portefeuille à téléchargement automatique à partir d'Autonomous Database Serverless, ce qui signifie qu'il n'est pas nécessaire de télécharger le portefeuille et de le conserver dans Object Storage ou Vault.
  • Elle distribue automatiquement le package de portefeuilles d'Object Storage au pilote et à l'exécuteur sans aucun code personnalisé pour les utilisateurs.
  • Elle inclut des fichiers JAR de pilote JDBC, ce qui permet d'éviter leur téléchargement et leur inclusion dans le fichier archive.zip. Le pilote JDBC présente la version 21.3.0.0.

Utilisation d'une source de données Oracle Spark

Vous pouvez utiliser cette source de données dans Data Flow de deux manières.

  • Dans la section Options avancées lors de la création, de la modification ou de l'exécution d'une application, incluez la clé :
    spark.oracle.datasource.enabled
    avec la valeur : true. Pour plus d'informations, reportez-vous à la section Création d'applications.
  • Utilisez le format de source de données Oracle Spark. Par exemple, dans Scala :
    val df = spark.read
      .format("oracle")
      .option("adbId","autonomous_database_ocid")
      .option("dbtable", "schema.tablename")
      .option("user", "username")
      .option("password", "password")
      .load()
    D'autres exemples dans d'autres langages sont disponibles dans la section Exemples de source de données Oracle Spark.
Les trois propriétés suivantes sont disponibles avec une source de données Oracle en plus des propriétés fournies par la source de données JDBC de Spark :
Propriétés de source de données Oracle
Nom de la propriété Paramètre par défaut Description Portée
walletUri URL compatible avec HDFS ou Object Storage. Elle contient le fichier ZIP du portefeuille Oracle requis pour les connexions mTLS à une base de données Oracle. Pour plus d'informations sur l'utilisation d'Oracle Wallet, reportez-vous à Affichage des noms TNS et des chaînes de connexion pour une instance Autonomous Database Serverless. Lecture/écriture
connectionId
  • Facultatif avec adbld, <database_name>_medium à partir de tnsnames.ora.
  • Requis avec l'option walletUri.
Alias de l'identificateur de connexion du fichier tnsnames.ora, dans le cadre du portefeuille Oracle. Pour plus d'informations, reportez-vous à Présentation des paramètres de dénomination locale et au glossaire dans la référence d'Oracle Database Net Services. Lecture/écriture
adbId OCID de la base de données autonome Oracle. Pour en savoir plus, reportez-vous à Présentation d'Autonomous Database sans serveur. Lecture/écriture
Remarque

Les limites suivantes s'appliquent aux options :
  • adbId et walletUri ne peuvent pas être utilisés ensemble.
  • connectionId doit être fourni avec walletUri, mais est facultatif avec adbId.
  • adbId n'est pas pris en charge pour les bases de données avec analyse.
Vous pouvez utiliser une source de données Oracle Spark dans Data Flow avec Spark 3.0.2 et versions ultérieures.
Pour utiliser une source de données Oracle Spark avec spark-submit, définissez l'option suivante :
--conf spark.oracle.datasource.enabled: true
Seules les bases de données suivantes sont prises en charge avec adbId :
  • Autonomous Database Serverless
    Remarque

    Si vous disposez de cette base de données dans un sous-réseau privé de réseau cloud virtuel, utilisez un réseau privé pour mettre sur liste d'autorisation le nom de domaine qualifié complet de l'adresse privée de la base de données autonome.
Les bases de données suivantes peuvent être utilisées avec l'option walletUri :
  • Autonomous Database Serverless
  • Autonomous Dedicated Infrastructure Database, y compris infrastructure Exadata
  • Autonomous Transaction Processing Dedicated Infrastructure
  • Base de données Oracle sur site, accessible à partir du réseau de Data Flow via Fastconnect ou un VPN site à site.