Exercício - Executar consultas no cluster HDInsight Spark

Concluído

Neste exercício, você aprenderá como criar um dataframe a partir de um arquivo csv e como executar consultas interativas do Spark SQL em um cluster Apache Spark no Azure HDInsight. No Spark, um pacote de dados é uma coleção distribuída de dados organizados em colunas com nomes. O dataframe é conceitualmente equivalente a uma tabela em um banco de dados relacional ou a um quadro de dados em R/Python.

Neste tutorial, irá aprender a:

  • Criar um pacote de dados a partir de um ficheiro CSV
  • Executar consultas no pacote de dados

Criar um pacote de dados a partir de um ficheiro CSV

O arquivo csv de exemplo a seguir contém informações de temperatura de um edifício e é armazenado no sistema de arquivos do Spark Cluster.

A sample dataset

  1. Cole o código a seguir em uma célula vazia do bloco de anotações Jupyter e pressione SHIFT + ENTER para executar o código. O código importa os tipos necessários para este cenário

    from pyspark.sql import *
    
    from pyspark.sql. types import *
    
  2. Quando executa uma consulta interativa no Jupyter, a janela do browser ou a legenda do separador apresenta o estado (Ocupado), juntamente com o título do bloco de notas. Também vê um círculo sólido junto ao texto do PySpark no canto superior direito. Após a conclusão da tarefa, este é alterado para um círculo vazio.

    Running Python in Jupyter

  3. Execute o seguinte código para criar um pacote de dados e uma tabela temporária (hvac) ao utilizar o seguinte código.

    # Create a dataframe and table from sample data
    
    csvFile = spark.read.csv ('/HdiSamples/HdiSamples/SensorSampleData/hvac/HVAC.csv', header=True, inferSchema=True)
    
    csvFile.write. saveAsTable("hvac")
    

Executar consultas no pacote de dados

Após a criação da tabela, pode executar uma consulta interativa nos dados.

  1. Execute o seguinte código numa célula vazia do bloco de notas:

    %%sql
    
    SELECT buildingID, (targettemp - actualtemp) AS temp_diff, date FROM hvac WHERE date = \"6/1/13\"
    

    É apresentado o seguinte resultado em forma de tabela.

    Dataset results in Jupyter

    Também pode ver os resultados noutras visualizações. Para ver um gráfico de área do mesmo resultado, selecione Area (Área) e, em seguida, defina outros valores, conforme mostrado.

    Dataset visualization in Jupyter

  2. Na barra de menus do bloco de anotações, navegue até Salvar arquivo > e Ponto de verificação.

  3. Desligue o bloco de anotações para liberar os recursos do cluster: na barra de menus do bloco de anotações, navegue até Fechar e Parar Arquivo>.