Origem de Dados Oracle do Spark

A Origem de Dados Oracle do Spark é uma extensão da origem de dados JDBC fornecida pelo Spark.

A Origem de Dados Oracle do Spark é uma extensão da origem de dados JDBC do Spark. Ela simplifica a conexão com bancos de dados Oracle do Spark. Além de todas as opções fornecidas pela origem de dados JDBC do Spark, a Origem de Dados Oracle do Spark Datasource simplifica a conexão de bancos de dados Oracle do Spark fornecendo:
  • Uma wallet de download automático do Autonomous Database Serverless, o que significa que não há necessidade de fazer download da wallet e mantê-la no Object Storage ou no Vault.
  • Ela distribui automaticamente o pacote da wallet do serviço Object Storage para o driver e o executor sem nenhum código personalizado dos usuários.
  • Ela inclui arquivos JAR do driver JDBC e, portanto, elimina a necessidade de fazer download deles e incluí-los no seu arquivo archive.zip. O driver JDBC é a versão 21.3.0.0.

Usar uma Origem de Dados Oracle do Spark

Você pode usar essa origem de dados no serviço Data Flow de duas maneiras.

  • Na seção Opções Avançadas ao criar, editar ou executar um aplicativo, inclua a chave:
    spark.oracle.datasource.enabled
    com o valor: true. Para obter mais informações, consulte a seção Criar Aplicativos.
  • Use o formato de origem de dados Oracle do Spark. Por exemplo, no Scala:
    val df = spark.read
      .format("oracle")
      .option("adbId","autonomous_database_ocid")
      .option("dbtable", "schema.tablename")
      .option("user", "username")
      .option("password", "password")
      .load()
    Mais exemplos em outros idiomas estão disponíveis na seção Exemplos de Origem de Dados Oracle do Spark.
As três propriedades seguintes estão disponíveis com a origem de dados Oracle, além das propriedades fornecidas pela origem de dados JDBC do Spark:
Propriedades da Origem de Dados Oracle
Nome da Propriedade Definição Padrão Descrição Escopo
walletUri Um URL compatível com o Object Storage ou o HDFS. Ele contém o arquivo ZIP do Oracle Wallet necessário para conexões mTLS com um banco de dados Oracle. Para obter mais informações sobre como usar o Oracle Wallet, consulte Exibir Nomes de TNS e Strings de Conexão de um Autonomous Database Sem Servidor Leitura/gravação
connectionId
  • Opcional com adbld, <database_name>_medium de tnsnames.ora.
  • Obrigatório com a opção walletUri.
O alias do identificador de conexão do arquivo tnsnames.ora, como parte do Oracle Wallet. Para obter mais informações, consulte Overview of Local Naming Parameters e Glossary na documentação Database Net Services Reference da Oracle. Leitura/gravação
adbId O OCID do Oracle Autonomous Database. Para obter mais informações, consulte Visão Geral do Autonomous Database Serverless. Leitura/gravação
Observação

As seguintes limitações se aplicam às opções:
  • adbId e walletUri não podem ser usados juntos.
  • connectionId deve ser fornecido com walletUri, mas é opcional com adbId.
  • adbId não é suportado para bancos de dados com varredura.
Você pode usar a Origem de Dados Oracle do Spark no serviço Data Flow com o Spark 3.0.2 e versões mais recentes.
Para usar a Origem de Dados Oracle do Spark com o script Spark-Submit, defina a seguinte opção:
--conf spark.oracle.datasource.enabled: true
Somente os seguintes bancos de dados são suportados com adbId:
  • Autonomous Database Serverless
    Observação

    Se você tiver esse banco de dados em uma sub-rede privada de VCN, use uma Rede Privada para colocar na lista de permissões o FQDN do ponto final privado do banco de dados autônomo.
Os seguintes bancos de dados podem ser usados com a opção walletUri:
  • Autonomous Database Serverless
  • Banco de Dados de Infraestrutura Dedicada Autonomous, incluindo infraestrutura Exadata.
  • Infraestrutura Dedicada do Autonomous Transaction Processing
  • Banco de dados Oracle local, que pode ser acessado pela rede do Data Flow, por meio de fastconnect ou VPN site a site.