Principais conceitos do Serviço Gerenciado para Apache Spark

Este documento explica os principais conceitos, elementos básicos, recursos principais e benefícios do Serviço gerenciado para Apache Spark. Entender esses fundamentos ajuda você a usar o Serviço Gerenciado para Apache Spark de maneira eficaz nas suas tarefas de processamento de dados.

O modelo baseado em cluster

O Serviço Gerenciado para Apache Spark em clusters é a maneira padrão e centrada na infraestrutura de usar o Serviço Gerenciado para Apache Spark. Ele oferece controle total sobre um conjunto dedicado de máquinas virtuais para suas tarefas de processamento de dados.

  • Clusters: um cluster é seu mecanismo pessoal de tratamento de dados, composto por Cloud de Confiance by S3NS máquinas virtuais. Você cria um cluster para executar frameworks de código aberto, como Apache Spark e Apache Hadoop. Você tem controle total sobre o tamanho do cluster, os tipos de máquinas e a configuração.
  • Jobs: um job é uma tarefa específica, como um script do PySpark ou uma consulta do Hadoop. Em vez de executar um job diretamente em um cluster, você o envia para o Serviço Gerenciado para Apache Spark, que gerencia a execução do job para você. É possível enviar vários jobs para o cluster.
  • Modelos de fluxo de trabalho: um modelo de fluxo de trabalho é uma definição reutilizável que organiza uma série de jobs (um fluxo de trabalho). Ele pode definir dependências entre jobs, por exemplo, para executar um job de machine learning somente depois que um job de limpeza de dados for concluído com sucesso. O fluxo de trabalho com modelo pode ser executado em um cluster atual ou em um cluster temporário (efêmero) que é criado para executar o fluxo de trabalho e excluído após a conclusão. Você pode usar o modelo para executar o fluxo de trabalho definido sempre que necessário.
  • Políticas de escalonamento automático: uma política de escalonamento automático contém regras definidas por você para adicionar ou remover máquinas de trabalho de um cluster com base na carga de trabalho do cluster para otimizar dinamicamente o custo e o desempenho do cluster.

Personalização do ambiente

O Serviço Gerenciado para Apache Spark em clusters oferece recursos e componentes que podem ser usados para personalizar o ambiente do aplicativo.

Ambientes de notebook e desenvolvimento

Os notebooks e IDEs sem servidor do Serviço Gerenciado para Apache Spark se vinculam a ambientes de desenvolvimento integrados em que você pode escrever e executar seu código.

  • BigQuery Studio e Workbench: são ambientes unificados de análise e notebook. Eles permitem escrever código (por exemplo, em um notebook Jupyter) e usar um cluster do Serviço gerenciado para Apache Spark ou uma sessão sem servidor como o mecanismo de back-end eficiente para executar o código em grandes conjuntos de dados.
  • Plug-in do Serviço Gerenciado para Apache Spark JupyterLab: este JupyterLabextension oficial atua como um painel de controle para o Serviço Gerenciado para Apache Spark sem servidor no seu ambiente de notebook. Ele simplifica seu fluxo de trabalho, permitindo navegar, criar e gerenciar clusters e enviar jobs sem sair da interface do Jupyter.
  • Google Cloud Data Agent Kit: o Data Agent Kit permite que cientistas, engenheiros e desenvolvedores de dados gerenciem todo o ciclo de vida da carga de trabalho de dados no IDE. O Data Agent Kit oferece suporte ao Serviço Gerenciado para Apache Spark, permitindo que você desenvolva código, crie sessões interativas e crie pipelines diretamente do VS Code ou de uma CLI com suporte.
  • Conector Python do Serviço Gerenciado para Apache Spark Connect: essa biblioteca Python simplifica o processo de uso do Spark Connect com o Serviço Gerenciado para Apache Spark. Ele processa a autenticação e a configuração de endpoints, o que simplifica muito a conexão do seu ambiente Python local, como um notebook ou IDE, a um cluster remoto do Serviço Gerenciado para Apache Spark para desenvolvimento interativo.