Origen de datos Oracle de Spark
El origen de datos Oracle de Spark es la extensión del origen de datos JDBC proporcionado por Spark.
El origen de datos Oracle de Spark es una extensión del origen de datos JDBC de Spark. Simplifica la conexión a bases de datos Oracle desde Spark. Además de todas las opciones proporcionadas por el origen de datos JDBC de Spark, el origen de datos Oracle de Spark simplifica la conexión de bases de datos Oracle desde Spark proporcionando:
- Una cartera de descarga automática desde Autonomous Database Serverless, lo que significa que no es necesario descargar la cartera y mantenerla en Object Storage o Vault.
- Distribuye automáticamente el grupo de carteras de Object Storage al controlador y al ejecutor sin ningún código personalizado de los usuarios.
- Incluye archivos JAR del controlador JDBC, por lo que elimina la necesidad de descargarlos e incluirlos en el archivo
archive.zip
. El controlador JDBC es de la versión 21.3.0.0.
Uso de un origen de datos Oracle de Spark
Puede utilizar este origen de datos en Data Flow de dos formas.
- En la sección Opciones avanzadas, al crear, editar o ejecutar una aplicación, incluya la clave:
con el valor:
spark.oracle.datasource.enabled
true
. Para obtener más información, consulte la sección Creación de aplicaciones. - Utilice el formato de origen de datos de Oracle Spark. Por ejemplo, en Scala:Hay más ejemplos en otros lenguajes disponibles en la sección Ejemplos de orígenes de datos Oracle de Spark.
val df = spark.read .format("oracle") .option("adbId","autonomous_database_ocid") .option("dbtable", "schema.tablename") .option("user", "username") .option("password", "password") .load()
Las tres propiedades siguientes están disponibles con el origen de datos Oracle además de las propiedades proporcionadas por el origen de datos JDBC de Spark:
Nombre de la propiedad | Valor por defecto | Descripción | Ámbito |
---|---|---|---|
walletUri |
Una URL compatible con Object Storage o HDFS. Contiene el archivo ZIP de Oracle Wallet necesario para las conexiones mTLS a una base de datos Oracle. Para obtener más información sobre el uso de Oracle Wallet, consulte Visualización de nombres TNS y cadenas de conexión para una instancia de Autonomous Database sin servidor | Lectura/Escritura | |
connectionId |
|
Alias de identificador de conexión del archivo tnsnames.ora, como parte de la cartera de Oracle. Para obtener más información, consulte la sección de visión general de los parámetros de nomenclatura local y el glosario en Oracle Database Net Services Reference. | Lectura/Escritura |
adbId |
OCID de la instancia de Oracle Autonomous Database. Para obtener más información, consulte Visión general de Autonomous Database Serverless. | Lectura/Escritura |
Nota
Se aplican las siguientes limitaciones a las opciones:
Puede utilizar el origen de datos Oracle de Spark en Data Flow con Spark 3.0.2 y versiones posteriores.Se aplican las siguientes limitaciones a las opciones:
adbId
ywalletUri
no se pueden utilizar a la vez.connectionId
se debe proporcionar conwalletUri
, pero es opcional conadbId
.adbId
no está soportado para bases de datos con exploración.
Para utilizar el origen de datos Oracle de Spark con spark submit, defina la siguiente opción:
--conf spark.oracle.datasource.enabled: true
Solo las siguientes bases de datos están soportadas con adbId:
- Autonomous Database Serverless
Nota
Si tiene esta base de datos en una subred privada de VCN, utilice una red privada para incluir en la lista de permitidos el FQDN del punto final privado de la base de datos autónoma.
Las siguientes bases de datos se pueden utilizar con la opción
walletUri
:- Autonomous Database Serverless
- Base de datos autónoma en infraestructura dedicada, incluida la infraestructura de Exadata.
- Autonomous Transaction Processing en infraestructura dedicada
- Base de datos Oracle local, a la que se puede acceder desde la red de Data Flow mediante fastconnect o la VPN de sitio a sitio.