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é :
avec la valeur :
spark.oracle.datasource.enabled
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 :D'autres exemples dans d'autres langages sont disponibles dans la section Exemples de source de données Oracle Spark.
val df = spark.read .format("oracle") .option("adbId","autonomous_database_ocid") .option("dbtable", "schema.tablename") .option("user", "username") .option("password", "password") .load()
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 :
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 |
|
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 :
Vous pouvez utiliser une source de données Oracle Spark dans Data Flow avec Spark 3.0.2 et versions ultérieures.Les limites suivantes s'appliquent aux options :
adbId
etwalletUri
ne peuvent pas être utilisés ensemble.connectionId
doit être fourni avecwalletUri
, mais est facultatif avecadbId
.adbId
n'est pas pris en charge pour les bases de données avec analyse.
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.