Criar sessões interativas e perfis de ambiente de execução

Neste documento, mostramos como criar sessões interativas e perfis de ambiente de execução do Serviço Gerenciado para Apache Spark, que são chamados de modelos de sessão na Google Cloud CLI e na API Dataproc. Um perfil de ambiente de execução é um conjunto reutilizável de configurações do Spark sem servidor, como o nível de computação e a configuração do executor, que pode ser usado para criar notebooks e sessões interativos.

Criar uma sessão interativa

Use a Google Cloud CLI ou a API do Serviço Gerenciado para Apache Spark para criar uma sessão interativa do Serviço Gerenciado para Apache Spark.

gcloud

Use o comando gcloud beta dataproc sessions create spark SESSION_ID para criar uma sessão interativa do Serviço Gerenciado para Apache Spark:

gcloud beta dataproc sessions create spark SESSION_ID \
    --location=REGION \
    optional flags ...

Substitua ou adicione o seguinte:

REST

Use o método de API sessions.create do Serviço Gerenciado para Apache Spark para criar uma sessão interativa do Serviço Gerenciado para Apache Spark. Configure os seguintes campos de solicitação:

Criar um perfil de ambiente de execução

Um perfil de ambiente de execução do Serviço Gerenciado para Apache Spark (às vezes chamado de modelo de sessão) define configurações reutilizáveis para criar sessões interativas do Serviço Gerenciado para Apache Spark. É possível usar o Google Cloud console, a CLI gcloud ou a API Serviço Gerenciado para Apache Spark para criar um perfil de ambiente de execução. Na CLI gcloud e na API Dataproc, os perfis de ambiente de execução são chamados de session templates.

Console

Para criar um perfil de ambiente de execução do Serviço Gerenciado para Apache Spark usando o console doGoogle Cloud , siga estas etapas:

  1. No console do Google Cloud , acesse a página Sem servidor (Perfis de ambiente de execução) do Serviço Gerenciado para Apache Spark.

    Acessar "Perfis de ambiente de execução"

  2. Clique em Criar.

  3. Na página Criar um perfil de ambiente de execução, defina as seguintes configurações principais:

    • Nome de exibição: obrigatório. Insira um nome de exibição para o perfil de ambiente de execução ou aceite o nome preenchido automaticamente. O nome de exibição precisa conter pelo menos uma letra ou um número e é salvo como um nome de exibição de nível superior para todos os tipos de sessão, incluindo o Spark Connect. O Nome do perfil do ambiente de execução é o ID do recurso e é derivado automaticamente do nome de exibição convertendo letras em minúsculas e caracteres inválidos em hifens, mostrados como uma dica abaixo do campo. Para personalizar o ID do recurso separadamente do nome de exibição, expanda Configuração adicional e edite Configuração do ambiente de execução.

    • Região: obrigatório. Selecione uma região disponível do Compute Engine para sessões que usam esse perfil de ambiente de execução. A região padrão é us-east4 (anteriormente us-central1), e a lista exibe descrições de região.

    • Descrição: opcional. Insira uma descrição para ajudar a identificar o perfil de ambiente de execução.

    • Nível: selecione o nível do Serviço Gerenciado para Apache Spark para execução da carga de trabalho:

      • Premium: padrão. Otimiza consultas complexas ou que exigem baixa latência com mecanismos de aceleração e oferece suporte a formatos de executor de alta memória e acelerados por GPU. Quando Premium é selecionado, a caixa de seleção Ativar o Lightning Engine para acelerar o desempenho é exibida e selecionada por padrão para acelerar os jobs do Spark com o Lightning Engine, que define spark.dataproc.engine=lightningEngine.

      • Padrão: fornece um ambiente de execução Spark padrão para o processamento de dados de rotina. As sessões interativas sempre são executadas no nível Premium. Selecionar Standard afeta apenas a execução em lote. Escolher Padrão desativa o Lightning Engine, restringe os formatos de máquina a formatos de CPU padrão (standard-4, standard-8 ou standard-16) e exige discos HDD (standard). Se você mudar do nível Premium para o Standard, as formas de alta memória ou GPU serão redefinidas para standard-4, e os discos SSD serão redefinidos para um HDD 200 GiB.

    • Configuração do executor: selecione o modo de dimensionamento de computação e o formato de máquina para os executores e o driver do Spark que executam sua carga de trabalho:

      • Geral: padrão. Oferece formatos de máquina somente de CPU adequados para cargas de trabalho gerais de extração, transformação e carregamento (ETL). Na lista Tipo de executor, selecione um formato de Memória alta, como highmem-4 (padrão) com 4 vCPUs e 32 GB de memória, highmem-8 com 8 vCPUs e 64 GB de memória ou highmem-16 com 16 vCPUs e 128 GB de memória, ou selecione um formato Padrão, como standard-4 com 4 vCPUs e 16 GB de memória, standard-8 com 8 vCPUs e 32 GB de memória ou standard-16 com 16 vCPUs e 64 GB de memória. Os formatos de alta memória estão disponíveis apenas no nível Premium.

      • Acelerado: fornece formatos de máquina com GPU adequados para cargas de trabalho de ciência de dados e treinamento e inferência de IA ou ML. Selecionar uma forma Acelerada muda automaticamente o nível para Premium e o nível de disco para SSD (premium) com um tamanho padrão de 375 GiB. Na lista Tipo de executor, selecione um formato L4 com 4, 8, 12, 16, 24, 48 ou 96 vCPUs ou selecione um formato A100, como A100 40GB (12 vCPU) ou A100 80GB (12 vCPU).

  4. Opcional: para personalizar as configurações de ambiente de execução avançado, recursos computacionais, escalonamento automático, metastore, rede, segurança, ciclo de vida ou propriedade, clique em Configuração adicional para expandir o painel. Ao lado de qualquer categoria que você queira personalizar, clique em Editar, defina as configurações no painel e clique em Salvar:

    • Configuração do ambiente de execução: configure o identificador do ambiente de execução, a versão do Spark, a imagem do contêiner, o bucket de preparo e o Package Repository do Python:

      • Nome do perfil do ambiente de execução: obrigatório. Aceite o ID de recurso gerado derivado do nome de exibição ou insira um código personalizado. O ID precisa ter de 4 a 63 caracteres, conter apenas letras minúsculas, números e hífens, começar e terminar com uma letra minúscula ou um número e não pode ser alterado após a criação do perfil de ambiente de execução.

      • Versão do ambiente de execução do Spark: obrigatória. Selecione uma versão do ambiente de execução do Serviço Gerenciado para Apache Spark compatível.

      • Imagem personalizada do Spark: opcional. Insira o URI do Artifact Registry ou do Container Registry de uma imagem do contêiner personalizada que inclua dependências personalizadas de Java ou Python.

      • Bucket de preparo: opcional. Clique em Procurar para selecionar ou criar um bucket de preparo do Cloud Storage para armazenar dependências de carga de trabalho, saída do driver de job e arquivos de configuração. Se deixado em branco, o Serviço Gerenciado para Apache Spark gerencia automaticamente o bucket de preparo (indicado por Auto no resumo).

      • Repositório de pacotes Python: opcional. Insira o URI de um repositório personalizado, como https://pypi.org/simple, para instalar pacotes do Python. Se ficar em branco, os pacotes serão instalados do cache de pull-through do PyPI gerenciado pelo Google (o resumo padrão).

    • Configuração do executor e do driver: personalize o nível de computação, o nível de disco, o tamanho do disco e a configuração do driver separado:

      • Nível: selecione Premium, que inclui a caixa de seleção opcional Ativar o Lightning Engine para acelerar o desempenho, ou Standard.

      • Tipo de executor: selecione um formato de máquina Geral High memory ou Standard ou um formato de máquina Acelerado L4 ou A100.

      • Nível do disco: selecione HDD (standard) ou SSD (premium). HDD (standard) é o padrão para formas de CPU e é obrigatório no nível Standard. O SSD (premium) está disponível no nível Premium para cargas de trabalho com muita redistribuição ou transbordamento e é obrigatório para formatos de GPU acelerados.

      • Tamanho do disco: selecione um tamanho de disco em GiB. HDD (standard) é compatível com 200 GiB a 1500 GiB em incrementos de 100 GiB, com um padrão de 200 GiB. SSD (premium) é compatível com 375 GiB, 750 GiB ou 1500 GiB, com um padrão de 375 GiB.

      • Usar uma configuração diferente para o driver: opcional. Por padrão, o driver usa o mesmo formato de máquina e configuração de disco que o executor. Marque esta caixa de seleção para personalizar o tipo de máquina do driver, o nível do disco do driver e o tamanho do disco do driver de forma independente.

    • Escalonamento automático: configure a alocação dinâmica de recursos para escalonar os executores com base na demanda da carga de trabalho:

      • Ativado: selecionado por padrão, o que define spark.dynamicAllocation.enabled. Desmarque essa caixa de seleção para desativar o escalonamento automático.

      • Executores iniciais: insira o número inicial de executores, que define spark.dynamicAllocation.initialExecutors. O padrão é 5. Os valores válidos variam de 2 a 2000 para as versões de ambiente de execução 2.3 e anteriores ou de 0 a 2000 para as versões de ambiente de execução 3.0 e posteriores.

      • Mínimo de executores: insira o número mínimo de executores, que define spark.dynamicAllocation.minExecutors. O padrão é 2 para as versões de ambiente de execução 2.3 e anteriores ou 0 para a versão de ambiente de execução 3.0 e mais recentes, com um limite superior de 2000.

      • Máximo de executores: insira o número máximo de executores, que define spark.dynamicAllocation.maxExecutors. O padrão é 1000, com um limite máximo permitido de 2000.

    • Configuração do metastore: selecione o metastore que gerencia os metadados do conjunto de dados:

      • Catálogo do ambiente de execução do Lakehouse: padrão. Usa um catálogo do ambiente de execução do Lakehouse sem servidor no projeto atual, com o endpoint REST do Iceberg ativado por padrão. É possível especificar o ID do projeto e escolher um ID do catálogo atual ou definir um novo catálogo. Também é possível marcar a caixa de seleção Endpoint do Hive para especificar um ID do projeto, um ID do catálogo e um Nome do catálogo do endpoint do Hive.

      • Dataproc Metastore: anexa uma instância gerenciada do Hive Metastore (HMS) do Dataproc Metastore. Selecione o projeto em Projeto selecionado e escolha uma instância de serviço na lista Serviço do metastore.

      • Nenhum: desativa a integração do metastore para sessões que usam esse perfil de ambiente de execução.

    • Rede e segurança: configure a rede VPC, as credenciais de execução e as chaves de criptografia:

      • Conecte o cluster: em configuração de rede, o console do Google Cloud seleciona automaticamente uma rede ou sub-rede qualificada na região escolhida. Se a região escolhida não tiver uma rede padrão disponível, a opção Configuração adicional será aberta automaticamente e exibirá um aviso de que a rede padrão não está disponível. Nessa situação, o botão Criar permanece desativado até que você clique em Configurar rede e selecione uma sub-rede disponível. Selecione Redes neste projeto para escolher uma Rede principal e uma Sub-rede no projeto atual ou selecione Redes compartilhadas do projeto host para escolher uma sub-rede de VPC compartilhada. A sub-rede selecionada precisa ter o Acesso privado do Google (PGA) ativado. Para requisitos de conectividade de rede, consulte Conectividade de sub-rede aberta. Também é possível inserir tags de rede opcionais para aplicar regras e rotas de firewall a VMs de carga de trabalho.

      • Executar notebooks com: selecione Conta de usuário, que é o padrão, para executar notebooks usando credenciais de usuário final ou selecione Conta de serviço para executar sessões com uma conta de serviço personalizada. Quando a opção Conta de serviço está selecionada, é obrigatório especificar uma conta de serviço no campo Conta de serviço.

      • Criptografia: selecione Google-owned and Google-managed encryption key, que é o padrão, ou selecione Chave do Cloud KMS para criptografar dados de carga de trabalho usando uma chave de criptografia gerenciada pelo cliente (CMEK).

    • Ciclo de vida da sessão: configure limites de encerramento automático de sessões:

      • Tempo máximo de inatividade: opcional. Insira uma Quantidade máxima de tempo de inatividade e selecione uma Unidade máxima de tempo de inatividade em seconds, minutes, hours ou days, de 10 minutos a 330 horas, para especificar por quanto tempo uma sessão de notebook pode permanecer inativa antes de ser encerrada automaticamente.

      • Tempo máximo da sessão: opcional. Insira uma Quantidade de tempo máximo da sessão e selecione uma Unidade de tempo máximo da sessão em seconds, minutes, hours ou days, de 10 minutos a 330 horas, para especificar o ciclo de vida máximo de uma sessão.

    • Outras personalizações: adicione propriedades personalizadas do Spark e rótulos de recursos:

      • Propriedades do Spark: opcional. Clique em Adicionar propriedade e insira os pares de Chave e Valor para as propriedades personalizadas do Spark. As propriedades controladas por campos dedicados no formulário (como nível de computação, dimensionamento de executor e driver, Lightning Engine, spark.dynamicAllocation.* e propriedades do catálogo do Lakehouse) são gerenciadas por esses campos e ficam ocultas na lista de formato livre. No console do Google Cloud , não inclua o prefixo spark:.

      • Rótulos: opcional. Clique em Adicionar rótulo e insira os pares de Chave e Valor para anexar rótulos ao perfil de ambiente de execução.

  5. Revise os detalhes de configuração no card Resumo e o uso estimado da unidade de computação de dados (DCU) no card Estimativa de preço no lado direito da página. Para mais informações sobre as cobranças de DCU, consulte Preços do Serviço Gerenciado para Apache Spark.

  6. Clique em Criar.

gcloud

Na CLI gcloud, os perfis de ambiente de execução são gerenciados como modelos de sessão. Não é possível criar diretamente um perfil de ambiente de execução do Serviço Gerenciado para Apache Spark usando um comando create na CLI gcloud, mas é possível usar o comando gcloud beta dataproc session-templates import para criar ou atualizar um perfil de ambiente de execução de um arquivo de configuração YAML. Também é possível exportar um perfil de ambiente de execução usando o comando gcloud beta dataproc session-templates export.

REST

Na API Serviço Gerenciado para Apache Spark, os perfis de ambiente de execução são representados por recursos SessionTemplate. Use o método de API sessionTemplates.create do Serviço Gerenciado para Apache Spark para criar um perfil de ambiente de execução do serviço. Configure os seguintes campos de solicitação: