Início Rápido: Criar um cluster do Apache Spark no Azure HDInsight usando o portal do AzureQuickstart: Create Apache Spark cluster in Azure HDInsight using Azure portal

Saiba como criar o cluster do Apache Spark no Azure HDInsight e como executar consultas Spark SQL nas tabelas do Hive.Learn how to create Apache Spark cluster in Azure HDInsight, and how to run Spark SQL queries against Hive tables. O Apache Spark permite análises rápidas de dados e computação de cluster usando processamento na memória.Apache Spark enables fast data analytics and cluster computing using in-memory processing. Para obter informações sobre o Spark no HDInsight, confira Visão geral: Apache Spark no Azure HDInsight.For information on Spark on HDInsight, see Overview: Apache Spark on Azure HDInsight.

Neste início rápido, você usa o Portal do Azure para criar um cluster Spark do HDInsight.In this quickstart, you use the Azure portal to create an HDInsight Spark cluster. O cluster usa Azure Storage Blobs como o armazenamento de cluster.The cluster uses Azure Storage Blobs as the cluster storage. Para obter mais informações sobre como usar o Data Lake Storage Gen2, consulte o Guia de Início Rápido: Configurar clusters no HDInsight.For more information on using Data Lake Storage Gen2, see Quickstart: Set up clusters in HDInsight.

Importante

A cobrança dos clusters do HDInsight será proporcional por minuto, independentemente de eles estarem sendo usados ou não.Billing for HDInsight clusters is prorated per minute, whether you are using them or not. Exclua seu cluster depois de terminar de usá-lo.Be sure to delete your cluster after you have finished using it. Para saber mais, confira a seção Recursos de limpeza deste artigo.For more information, see the Clean up resources section of this article.

Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.If you don't have an Azure subscription, create a free account before you begin.

Criar um cluster Spark no HDInsightCreate an HDInsight Spark cluster

  1. No portal do Azure, selecione Criar um recurso > Análise > HDInsight.In the Azure portal, select Create a resource > Analytics > HDInsight.

    Criação de recurso do HDInsight no portal do AzureAzure portal create a resource HDInsight

  2. Em Noções básicas, forneça os seguintes valores:Under Basics, provide the following values:

    PropriedadeProperty DESCRIÇÃODescription
    SubscriptionSubscription No menu suspenso, selecione uma assinatura do Azure usada para este cluster.From the drop-down, select an Azure subscription used for this cluster. A assinatura usada para este início rápido é Azure.The subscription used for this quickstart is Azure.
    Resource groupResource group Especifique se deseja criar um novo grupo de recursos ou usar um existente.Specify whether you want to create a new resource group or use an existing one. Um grupo de recursos é um contêiner que mantém os recursos relacionados a uma solução do Azure.A resource group is a container that holds related resources for an Azure solution. O nome do grupo de recursos usado para este início rápido é myResourceGroup.The resource group name used for this quickstart is myResourceGroup.
    Nome do clusterCluster name Dê um nome para seu cluster HDInsight Spark.Give a name to your HDInsight Spark cluster. O nome do cluster usado para este início rápido é myspark2019.The cluster name used for this quickstart is myspark2019.
    LocationLocation Selecione um local para o grupo de recursos.Select a location for the resource group. O modelo usa esse local para criar o cluster, bem como para o armazenamento de cluster padrão.The template uses this location for creating the cluster as well as for the default cluster storage. A localização usada para este início rápido é Leste dos EUA.The location used for this quickstart is East US.
    Tipo de clusterCluster type Selecione Spark como o tipo de cluster.Select Spark as the cluster type.
    Versão do clusterCluster version Esse campo será preenchido automaticamente com a versão padrão depois que o tipo de cluster tiver sido selecionado.This field will auto-populate with the default version once the cluster type has been selected.
    Nome de usuário de logon do clusterCluster login username Insira o nome de logon do usuário do cluster.Enter the cluster login username. O nome padrão é admin. Você pode usar essa conta fazer logon no bloco de anotações do Jupyter mais tarde no início rápido.The default name is admin. You use this account to login in to the Jupyter notebook later in the quickstart.
    Senha de logon do clusterCluster login password Insira a senha de logon do cluster.Enter the cluster login password.
    Nome de usuário do Secure Shell (SSH)Secure Shell (SSH) username Insira um Nome de Usuário SSH.Enter the SSH username. O nome de usuário de SSH usado para este início rápido é sshuser.The SSH username used for this quickstart is sshuser. Por padrão, essa conta tem a mesma senha que a conta denome de usuário de logon do cluster.By default, this account shares the same password as the Cluster Login username account.

    Criar configurações básicas de cluster de HDInsight SparkCreate HDInsight Spark cluster basic configurations

    Selecione Avançar: Armazenamento >> para continuar para a página Armazenamento.Select Next: Storage >> to continue to the Storage page.

  3. Em Armazenamento, forneça os seguintes valores:Under Storage, provide the following values:

    PropriedadeProperty DESCRIÇÃODescription
    Tipo de armazenamento primárioPrimary storage type Use o valor padrão Armazenamento do Azure.Use the default value Azure Storage.
    Método de seleçãoSelection method Use o valor padrão Selecione na lista.Use the default value Select from list.
    Conta de armazenamento primáriaPrimary storage account Use o valor preenchido automaticamente.Use the auto-populated value.
    ContêinerContainer Use o valor preenchido automaticamente.Use the auto-populated value.

    Criar configurações básicas de cluster de HDInsight SparkCreate HDInsight Spark cluster basic configurations

    Selecione Examinar + criar para continuar.Select Review + create to continue.

  4. Em Examinar + criar, selecione Criar.Under Review + create, select Create. Demora cerca de 20 minutos para criar o cluster.It takes about 20 minutes to create the cluster. O cluster deve ser criado antes de prosseguir para a próxima sessão.The cluster must be created before you can proceed to the next session.

Se você tiver um problema com a criação de clusters HDInsight, é possível que você não tenha as permissões corretas para fazer isso.If you run into an issue with creating HDInsight clusters, it could be that you do not have the right permissions to do so. Para saber mais, confira Requisitos do controle de acesso.For more information, see Access control requirements.

Criar um notebook JupyterCreate a Jupyter notebook

O Jupyter Notebook é um ambiente de notebook interativo que oferece suporte a várias linguagens de programação.Jupyter Notebook is an interactive notebook environment that supports various programming languages. O notebook permite que você interaja com seus dados, combine código com texto markdown e execute visualizações simples.The notebook allows you to interact with your data, combine code with markdown text and perform simple visualizations.

  1. Abra o Portal do Azure.Open the Azure portal.

  2. Selecione Clusters HDInsight e, em seguida, selecione o cluster que você criou.Select HDInsight clusters, and then select the cluster you created.

    Abra o cluster HDInsight no Portal do Azure

  3. No portal, selecione Painéis do cluster e, depois, selecione Jupyter Notebook.From the portal, select Cluster dashboards, and then select Jupyter Notebook. Em caso de solicitação, insira as credenciais de logon do cluster.If prompted, enter the cluster login credentials for the cluster.

    Abrir um Jupyter Notebook para executar uma consulta interativa SQL do SparkOpen Jupyter Notebook to run interactive Spark SQL query

  4. Selecione Novo > PySpark para criar um notebook.Select New > PySpark to create a notebook.

    Criar um Jupyter Notebook para executar consulta interativa SQL do SparkCreate a Jupyter Notebook to run interactive Spark SQL query

    Um novo bloco de anotações é criado e aberto com o nome Untitled(Untitled.pynb).A new notebook is created and opened with the name Untitled(Untitled.pynb).

Executar Instruções Spark SQLRun Spark SQL statements

O SQL (Structured Query Language) é a linguagem mais comum e amplamente usada para consultar e definição de dados.SQL (Structured Query Language) is the most common and widely used language for querying and defining data. O Spark SQL funciona como uma extensão do Apache Spark para processar dados estruturados, usando a sintaxe SQL familiar.Spark SQL functions as an extension to Apache Spark for processing structured data, using the familiar SQL syntax.

  1. Verifique se o kernel está pronto.Verify the kernel is ready. O kernel estará pronto quando você vir um círculo vazio ao lado do nome do kernel no notebook.The kernel is ready when you see a hollow circle next to the kernel name in the notebook. Círculo sólido indica que o kernel está ocupado.Solid circle denotes that the kernel is busy.

    Consulta do Apache Hive no HDInsight Spark1Apache Hive query in HDInsight Spark1

    Quando você inicia o notebook pela primeira vez, o kernel executa algumas tarefas em segundo plano.When you start the notebook for the first time, the kernel performs some tasks in the background. Aguarde a leitura do kernel.Wait for the kernel to be ready.

  2. Cole o código a seguir em uma célula vazia e pressione SHIFT + ENTER para executar o código.Paste the following code in an empty cell, and then press SHIFT + ENTER to run the code. O comando lista as tabelas de Hive no cluster:The command lists the Hive tables on the cluster:

    %%sql
    SHOW TABLES
    

    Quando você usa um Notebook Jupyter com o cluster HDInsight Spark, obtém uma predefinição sqlContext que você pode usar para executar consultas do Hive usando o Spark SQL.When you use a Jupyter Notebook with your HDInsight Spark cluster, you get a preset sqlContext that you can use to run Hive queries using Spark SQL. %%sql informa ao Notebook Jupyter para usar a predefinição sqlContext para executar a consulta Hive.%%sql tells Jupyter Notebook to use the preset sqlContext to run the Hive query. A consulta recupera as primeiras 10 linhas de uma tabela Hive (hivesampletable) que vem com todos os clusters HDInsight por padrão.The query retrieves the top 10 rows from a Hive table (hivesampletable) that comes with all HDInsight clusters by default. Ele leva aproximadamente 30 segundos para obter os resultados.It takes about 30 seconds to get the results. A saída se parece com isso:The output looks like:

    Consulta do Apache Hive no HDInsight Spark2Apache Hive query in HDInsight Spark2

    Toda vez que você executar uma consulta no Jupyter, o título da janela do navegador da Web mostrará um status (Ocupado) com o título do bloco de anotações.Every time you run a query in Jupyter, your web browser window title shows a (Busy) status along with the notebook title. Você também verá um círculo sólido ao lado do texto PySpark no canto superior direito.You also see a solid circle next to the PySpark text in the top-right corner.

  3. Execute outra consulta para ver os dados em hivesampletable.Run another query to see the data in hivesampletable.

    %%sql
    SELECT * FROM hivesampletable LIMIT 10
    

    A tela deve ser atualizada para mostrar a saída da consulta.The screen shall refresh to show the query output.

    Saída da consulta de Hive no HDInsight SparkHive query output in HDInsight Spark

  4. No menu Arquivo do notebook, selecione Fechar e Interromper.From the File menu on the notebook, select Close and Halt. O desligamento do bloco de anotações libera os recursos do cluster.Shutting down the notebook releases the cluster resources.

Limpar recursosClean up resources

O HDInsight salva seus dados no Armazenamento do Azure ou no Azure Data Lake Storage, assim você poderá excluir um cluster quando ele não estiver em uso.HDInsight saves your data in Azure Storage or Azure Data Lake Storage, so you can safely delete a cluster when it is not in use. Você também é cobrado por um cluster HDInsight, mesmo quando ele não está em uso.You are also charged for an HDInsight cluster, even when it is not in use. Como os encargos para o cluster são muitas vezes maiores do que os encargos para armazenamento, faz sentido, do ponto de vista econômico, excluir os clusters quando não estiverem em uso.Since the charges for the cluster are many times more than the charges for storage, it makes economic sense to delete clusters when they are not in use. Se você planeja trabalhar no tutorial listado em Próximas etapas imediatamente, convém manter o cluster.If you plan to work on the tutorial listed in Next steps immediately, you might want to keep the cluster.

Retorne ao Portal do Azure e selecione Excluir.Switch back to the Azure portal, and select Delete.

Excluir um cluster HDInsight no portal do AzureAzure portal delete an HDInsight cluster

Também é possível selecionar o nome do grupo de recursos para abrir a página do grupo de recursos, e depois selecionar Excluir grupo de recursos.You can also select the resource group name to open the resource group page, and then select Delete resource group. Ao excluir o grupo de recursos, você exclui o cluster Spark do HDInsight e a conta de armazenamento padrão.By deleting the resource group, you delete both the HDInsight Spark cluster, and the default storage account.

Próximas etapasNext steps

Neste início rápido, você aprendeu a criar um cluster HDInsight Spark e executar uma consulta de SQL básica do Spark.In this quickstart, you learned how to create an HDInsight Spark cluster and run a basic Spark SQL query. Avança para o próximo tutorial para saber como usar um cluster HDInsight Spark para executar consultas interativas em dados de exemplo.Advance to the next tutorial to learn how to use an HDInsight Spark cluster to run interactive queries on sample data.