Use o Serverless para Apache Spark com blocos de notas geridos
Esta página mostra como executar um ficheiro de bloco de notas no Spark sem servidor numa instância de blocos de notas geridos do Vertex AI Workbench usando o Google Cloud Serverless para Apache Spark.
A instância de blocos de notas geridos pode enviar o código de um ficheiro de bloco de notas para execução no serviço Serverless para Apache Spark. O serviço executa o código numa infraestrutura de computação gerida que dimensiona automaticamente os recursos conforme necessário. Por conseguinte, não tem de aprovisionar nem gerir o seu próprio cluster.
As cobranças do Serverless para Apache Spark aplicam-se apenas ao período em que a carga de trabalho está a ser executada.
Requisitos
Para executar um ficheiro de bloco de notas no Serverless para Apache Spark, consulte os seguintes requisitos.
A sessão do Serverless for Apache Spark tem de ser executada na mesma região que a instância dos blocos de notas geridos.
A restrição Require OS Login (
constraints/compute.requireOsLogin
) não pode estar ativada para o seu projeto. Consulte o artigo Faça a gestão do Início de sessão do SO numa organização.Para executar um ficheiro de bloco de notas no Serverless para Apache Spark, tem de fornecer uma conta de serviço com autorizações específicas. Pode conceder estas autorizações à conta de serviço predefinida ou fornecer uma conta de serviço personalizada. Consulte a secção Autorizações desta página.
A sua sessão do Serverless para Apache Spark usa uma rede da nuvem virtual privada (VPC) para executar cargas de trabalho. A sub-rede da VPC tem de cumprir requisitos específicos. Consulte os requisitos em Google Cloud Serverless para Apache Spark para configuração de rede do Spark.
Autorizações
Para garantir que a conta de serviço tem as autorizações necessárias para executar um ficheiro de bloco de notas no Serverless para Apache Spark,
peça ao seu administrador para conceder à conta de serviço a função do IAM
Editor do Dataproc (roles/dataproc.editor
) no seu projeto.
Esta função predefinida contém as autorizações necessárias para executar um ficheiro de bloco de notas no Serverless para Apache Spark. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
São necessárias as seguintes autorizações para executar um ficheiro de bloco de notas no Serverless para Apache Spark:
-
dataproc.agents.create
-
dataproc.agents.delete
-
dataproc.agents.get
-
dataproc.agents.update
-
dataproc.session.create
-
dataproc.sessions.get
-
dataproc.sessions.list
-
dataproc.sessions.terminate
-
dataproc.sessions.delete
-
dataproc.tasks.lease
-
dataproc.tasks.listInvalidatedLeases
-
dataproc.tasks.reportStatus
O administrador também pode atribuir estas autorizações à conta de serviço com funções personalizadas ou outras funções predefinidas.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Notebooks, Vertex AI, and Dataproc APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Notebooks, Vertex AI, and Dataproc APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. - Se ainda não o fez, configure uma rede VPC que cumpra os requisitos indicados na Google Cloud configuração de rede do Serverless para Apache Spark.
Na Google Cloud consola, aceda à página Blocos de notas geridos.
Junto ao nome da instância de blocos de notas geridos, clique em Abrir JupyterLab.
Na interface do JupyterLab da instância de blocos de notas geridos, selecione o separador Launcher e, de seguida, selecione Serverless Spark. Se o separador Launcher não estiver aberto, selecione Ficheiro > Novo Launcher para o abrir.
É apresentada a caixa de diálogo Criar sessão do Spark sem servidor.
No campo Nome da sessão, introduza um nome para a sessão.
Na secção Configuração de execução, introduza a conta de serviço que quer usar. Se não introduzir uma conta de serviço, a sua sessão vai usar a conta de serviço predefinida do Compute Engine.
Na secção Configuração de rede, selecione a Rede e a Sub-rede de uma rede que cumpra os requisitos indicados na Google Cloud configuração de rede do Serverless para Apache Spark.
Clique em Criar.
É aberto um novo ficheiro de notebook. A sessão do Serverless para Apache Spark que criou é o kernel que executa o código do ficheiro do bloco de notas.
Adicione código ao novo ficheiro de notebook e execute o código.
Para executar código num kernel diferente, altere o kernel.
Quando quiser executar novamente o código na sessão do Serverless para Apache Spark, altere o kernel novamente para o kernel do Serverless para Apache Spark.
No JupyterLab, feche o ficheiro de bloco de notas que foi criado quando criou a sessão do Serverless para Apache Spark.
Na caixa de diálogo apresentada, clique em Terminar sessão.
Na Google Cloud consola, aceda à página Sessões do Dataproc.
Selecione a sessão que quer terminar e, de seguida, clique em Terminar.
Na Google Cloud consola, aceda à página Sessões do Dataproc.
Selecione a sessão que quer eliminar e, de seguida, clique em Eliminar.
- Saiba mais sobre o Serverless para Apache Spark.
Abra o JupyterLab
Inicie uma sessão do Serverless para Apache Spark
Para iniciar uma sessão do Serverless para Apache Spark, conclua os seguintes passos.
Execute o seu código no Serverless para Apache Spark e outros kernels
Termine a sua sessão do Serverless para Apache Spark
Pode terminar uma sessão do Serverless para Apache Spark na interface do JupyterLab ou na Google Cloud consola. O código no ficheiro do notebook é preservado.
JupyterLab
Google Cloud consola
Elimine a sessão do Serverless para Apache Spark
Pode eliminar uma sessão do Serverless para Apache Spark através da Google Cloud consola. O código no ficheiro do notebook é preservado.