Source de données Oracle pour Spark
La source de données Oracle pour Spark est une extension de la source de données JDBC fournie par Spark.
La source de données Oracle pour Spark est une extension de la source de données JDBC pour Spark. Elle simplifie la connexion aux bases de données Oracle à partir de Spark. En plus de toutes les options fournies par la source de données JDBC pour Spark, la source de données Oracle pour Spark simplifie la connexion des bases de données Oracle à partir de Spark comme suit :
- 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 le service de stockage d'objets ou de chambre forte.
- Elle distribue automatiquement l'ensemble de portefeuille du service Stockage d'objets au pilote et à l'exécuteur sans code personnalisé fourni par fom users.
- Elle inclut les fichiers JAR du pilote JDBC, ce qui évite d'avoir à les télécharger et à les inclure dans votre fichier
archive.zip
. La version du pilote JDBC est 21.3.0.0.
Utiliser une source de données Oracle pour Spark
Vous pouvez utiliser cette source de données dans le service de flux de données de deux façons.
- Dans la section Options avancées, lors de la création, de la modification ou de l'exécution d'une application, ajoutez la clé :
Avec la valeur :
spark.oracle.datasource.enabled
true
. Pour plus d'informations, voir la section Créer des applications. - Utilisez le format de source de données Oracle pour Spark. Par exemple, dans Scala :D'autres exemples dans d'autres langages sont disponibles dans la section Exemples de source de données Oracle pour 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 la source de données Oracle, en plus des propriétés fournies par la source de données JDBC pour Spark :
Nom de la propriété | Paramètre par défaut | Description | Portée |
---|---|---|---|
walletUri |
URL compatible avec le service Stockage d'objets ou HDFS. 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, voir Voir les noms TNS et les chaînes de connexion pour une base de données Autonomous Database sans serveur | Lecture/écriture | |
connectionId |
|
Alias de l'identificateur de connexion du fichier tnsnames.ora, faisant partie du portefeuille Oracle. Pour plus d'informations, voir Aperçu des paramètres d'attribution de nom locaux et Glossaire dans les informations de référence sur Oracle Database Net Services. | Lecture/écriture |
adbId |
OCID de la base de données autonome Oracle. Pour plus d'informations, voir Aperçu d'Autonomous Database sans serveur. | Lecture/écriture |
Note
Les limitations suivantes s'appliquent aux options :
Vous pouvez utiliser la source de données Oracle pour Spark dans le service de flux de données avec Spark versions 3.0.2 et ultérieures.Les limitations suivantes s'appliquent aux options :
adbId
etwalletUri
ne peuvent pas être utilisés ensemble.connectionId
doit être fournie avecwalletUri
, mais est facultative avecadbId
.adbId
n'est pas prise en charge pour les bases de données avec balayage.
Pour utiliser la source de données Oracle pour 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 :
- Base de données autonome sans serveur
Note
Si vous disposez de cette base de données dans un sous-réseau privé d'un VCN, utilisez un réseau privé pour ajouter le nom de domaine complet du point d'extrémité privé de la base de données autonome à une liste d'autorisation.
Les bases de données suivantes peuvent être utilisées avec l'option
walletUri
:- Base de données autonome sans serveur
- Base de données autonome d'infrastructure dédiée, avec infrastructure Exadata.
- Autonomous Transaction Processing - Infrastructure dédiée
- Base de données Oracle sur place, accessible à partir du réseau du service de flux de données, au moyen d'une connexion rapide ou d'un RPV site à site.