Usar o Dataproc Hub


Objetivos

  1. Use o Dataproc Hub para criar um ambiente de notebook do JupyterLab de usuário único em execução em um cluster do Dataproc.

  2. Crie um notebook e execute um job do Spark no cluster do Dataproc.

  3. Exclua o cluster e preserve o notebook no Cloud Storage.

Antes de começar

  1. O administrador precisa conceder a você a permissão notebooks.instances.use (consulte Definir papéis Identity and Access Management (IAM)).

Criar um cluster do Dataproc JupyterLab no Dataproc Hub

  1. Selecione a guia Notebooks gerenciados pelo usuário na página Dataproc→Workbench no console Google Cloud .

  2. Clique em Abrir o JupyterLab na linha que lista a instância do Dataproc Hub criada pelo administrador.

    1. Se você não tiver acesso ao console do Google Cloud , insira o URL da instância do Dataproc Hub que um administrador compartilhou com você no navegador da Web.
  3. Na página Jupyterhub→Dataproc Options, selecione uma configuração de cluster e uma zona. Se estiver ativado, especifique as personalizações e clique em Criar.

    Depois que o cluster do Dataproc é criado, você é redirecionado para a interface do JupyterLab em execução no cluster.

Criar um notebook e executar um job do Spark

  1. No painel esquerdo da interface do JupyterLab, clique em GCS (Cloud Storage).

  2. Crie um notebook PySpark no iniciador do JupyterLab.

  3. O kernel do PySpark inicializa um SparkContext (usando a variável sc). Você pode examinar o SparkContext e executar um job do Spark no notebook.

    rdd = (sc.parallelize(['lorem', 'ipsum', 'dolor', 'sit', 'amet', 'lorem'])
           .map(lambda word: (word, 1))
           .reduceByKey(lambda a, b: a + b))
    print(rdd.collect())
    
  4. Nomeie e salve o notebook. O notebook é salvo e permanece no Cloud Storage depois que o cluster do Dataproc for excluído.

Encerrar o cluster do Dataproc

  1. Na interface do JupyterLab, selecione File→Hub Control Panel para abrir a página Jupyterhub.

  2. Clique em Parar Meu cluster para encerrar (excluir) o servidor do JupyterLab, que exclui o cluster do Dataproc.

A seguir