Criando um Aplicativo PySpark no Serviço Data Flow

Siga estas etapas para criar um aplicativo PySpark no serviço Data Flow.

  • Faça upload dos arquivos Spark-submit para um Oracle Cloud Infrastructure Object Storage. Consulte Configurar Armazenamento de Objetos para obter detalhes.
    1. Na página Fluxo de Dados, no menu esquerdo, selecione Aplicativos. Se precisar de ajuda para localizar a página Fluxo de Dados, consulte Listando Aplicativos.
    2. Na página Aplicativos, selecione Criar aplicativo.
    3. No painel Criar aplicativo, informe um nome para o aplicativo e uma descrição opcional que possa ajudá-lo a procurá-lo.
    4. Em Configuração do recurso, forneça os valores a seguir. Para ajudar a calcular o número de recursos necessários, consulte Dimensionando o Aplicativo do Serviço Data Flow.
      1. Selecione a versão do Spark.
      2. (Opcional) Selecione um pool.
      3. Para Forma do driver, selecione o tipo de nó do cluster a ser usado para hospedar o driver Spark.
      4. (Opcional) Se você tiver selecionado uma forma flexível para o driver, personalize o número de OCPUs e a quantidade de memória.
      5. Para Forma do executor, selecione o tipo de nó do cluster a ser usado para hospedar cada executor do Spark.
      6. (Opcional) Se você tiver selecionado uma forma flexível para o executor, personalize o número de OCPUs e a quantidade de memória.
      7. (Opcional) Para ativar o uso de alocação dinâmica do Spark (dimensionamento automático), selecione Ativar dimensionamento automático.
      8. Digite o número de executores de que você precisa. Se você optou por usar o dimensionamento automático, informe um número mínimo e máximo de executores.
    5. Em Configuração do aplicativo, forneça os valores a seguir.
      1. (Opcional) Se o aplicativo for para Spark Stream, selecione Spark Stream
      1. Observação

        Você deve ter seguido as etapas em Conceitos Básicos do Spark Streaming para que seu aplicativo de streaming funcione.
      2. Não selecione Usar opções Spark-Submit.
      3. Selecione Python nas opções de Idioma.
      4. Em Selecionar um arquivo, Enter, especifique o URL do arquivo de Arquivo para o aplicativo. Há duas das seguintes maneiras de fazer isso:
        • Selecione o arquivo na lista Nome do arquivo do Object Storage. Selecione Alterar compartimento se o bucket estiver em outro compartimento.
        • Selecione Informar o URL do arquivo manualmente e informe o nome do arquivo e o caminho para ele usando este formato:
           oci://<bucket_name>@<objectstore_namespace>/<file_name>
      5. Digite o nome de classe Main.
      6. (Opcional) Informe os argumentos a serem usados para chamar a classe principal. Não há limite para seu número ou seus nomes. Por exemplo, no campo Argumentos, informe:
        ${<argument_1>} ${<argument_2>}
        Será solicitado que você forneça o valor padrão. É uma boa ideia informar isso agora. Cada vez que você adiciona um argumento, um parâmetro é exibido com o nome, conforme informado no campo Argumento e uma caixa de texto na qual inserir o valor do parâmetro.

        Se o Spark Streaming for especificado, você deverá incluir a pasta de checkpoint como argumento. Consulte um exemplo do código de amostra em GitHub para saber como especificar um ponto de verificação como argumento.

        Observação

        Não inclua caracteres "$" ou "/" no nome ou valor do parâmetro.
      7. (Opcional) Se você tiver um arquivo archive.zip, faça upload do arquivo para o Oracle Cloud Infrastructure Object Storage e, em seguida, preencha o URI do Arquivo Compactado com o caminho para ele. Você pode criar planilhas de duas formas:
        • Selecione o arquivo na lista Nome do arquivo do Object Storage. Selecione Alterar compartimento se o bucket estiver em outro compartimento.
        • Selecione Informar o caminho do arquivo manualmente e informe o nome do arquivo e o caminho para ele usando este formato:
           oci://<bucket_name>@<namespace_name>/<file_name>
      8. Em Localização de log do aplicativo, especifique onde você deseja ingerir o Oracle Cloud Infrastructure Logging de uma das seguintes maneiras:
        • Selecione o bucket dataflow-logs na lista Nome do arquivo do Object Storage. Selecione Alterar compartimento se o bucket estiver em outro compartimento.
        • Selecione Informar o caminho do bucket manualmente e informe o caminho do bucket para ele usando este formato:
           oci://dataflow-logs@<namespace_name>
      9. (Opcional) Selecione o metastore na lista. Se o metastore estiver em outro compartimento, selecione Alterar compartimento. O local da tabela gerenciada padrão é preenchido automaticamente com base no metastore.
    6. (Opcional) Na seção Tags , adicione uma ou mais tags ao <resourceType>. Se você tiver permissões para criar um recurso, também terá permissões para aplicar tags de formato livre a esse recurso. Para aplicar uma tag definida, você deverá ter permissões para usar o namespace da tag. Para obter mais informações sobre tags, consulte Tags de Recursos. Se você não tiver certeza se deseja aplicar tags, ignore esta opção ou pergunte a um administrador. Você pode aplicar tags posteriormente.
    7. (Opcional) Adicione opções de configuração avançada.
      1. Selecione Mostrar opções avançadas.
      2. (Opcional) Selecione Usar autenticação do controlador de recursos para permitir um início mais rápido ou se você espera que a Execução dure mais de 24 horas.
      3. (Opcional) Selecione Ativar origem de dados Oracle do Spark para usar a Origem de Dados Oracle do Spark.
      4. Selecione uma versão do Delta Lake. O valor selecionado é refletido no par Chave/Valor das propriedades de configuração do Spark. Consulte Data Flow e Delta Lake para obter informações sobre o Delta Lake.
      5. Na seção Logs, selecione os Grupos de logs e os logs de aplicativo do Oracle Cloud Infrastructure Logging. Você pode alterar o compartimento se os grupos de logs estiverem em outro compartimento.
      6. Digite a chave da propriedade de configuração do Spark e um valor.
        • Se você estiver usando o Spark Streaming, inclua uma chave de spark.sql.streaming.graceful.shutdown.timeout com um valor de no máximo 30 minutos (em milissegundos).
        • Se você estiver usando a Origem de Dados Oracle do Spark, inclua uma chave de spark.oracle.datasource.enabled com o valor true.
      7. Selecione + Outra propriedade para adicionar outra propriedade de configuração.
      8. (Opcional) Substitua o valor padrão para o bucket do warehouse preenchendo o URI do bucket do Warehouse no seguinte formato:
        oci://<warehouse-name>@<tenancy>
      9. Selecione o acesso à rede.
        1. Se você estiver anexando um ponto final privado ao serviço Data Flow, selecione Acesso seguro à sub-rede privada. Selecione o ponto final privado na lista resultante.
          Observação

          Você não pode usar um endereço IP para estabelecer conexão com o ponto final privado. Use o FQDN.
        2. Se você não estiver usando um ponto final privado, selecione Acesso à Internet (Sem sub-rede).
      10. (Opcional) Para ativar a coleta de linhagem de dados:
        1. Selecione Ativar coleta de linhagem de dados.
        2. Selecione Informar catálogo de dados manualmente ou selecione uma instância do serviço Data Catalog em um compartimento configurável na tenancy atual.
        3. (Opcional) Se você tiver selecionado Informar catálogo de dados manualmente na etapa anterior, informe os valores para OCID da tenancy do catálogo de dados, OCID do compartimento do catálogo de dados e ODID da instância do serviço Data Catalog.
      11. Para Duração máxima de execução em minutos, informe um valor entre 60 (1 hora) e 10080 (7 dias). Se você não informar um valor, a execução enviada continuará até que seja bem-sucedida, falhe, seja cancelada ou atinja sua duração máxima padrão (24 horas).
    8. Selecione Criar para criar o aplicativo ou selecione Salvar como pilha para criá-lo posteriormente.
      Para alterar os valores de idioma, nome e URL de arquivo no futuro, consulte Editando um Aplicativo. Você só pode alterar a linguagem entre Java e Scala. Você não pode alterá-lo para Python ou SQL.
  • Use o comando create e os parâmetros necessários para criar um aplicativo:

    oci data-flow application create [OPTIONS]
    Para obter uma lista completa de flags e opções de variáveis para comandos da CLI, consulte a Referência de Comando da CLI.
  • Execute a operação CreateApplication para criar um aplicativo.