Explorar dados em tabelas do Hive com consultas do HiveExplore data in Hive tables with Hive queries

Este artigo fornece scripts de hive de amostra que são usados para explorar dados em tabelas de Hive em um cluster HDInsight Hadoop.This article provides sample Hive scripts that are used to explore data in Hive tables in an HDInsight Hadoop cluster.

Esta tarefa é um passo no Processo de Ciência de Dadosda Equipa.This task is a step in the Team Data Science Process.

Pré-requisitosPrerequisites

Este artigo assume que tem:This article assumes that you have:

Exemplo Scripts de consulta de hive para exploração de dadosExample Hive query scripts for data exploration

  1. Obtenha a contagem de observações por partição SELECT <partitionfieldname>, count(*) from <databasename>.<tablename> group by <partitionfieldname>;Get the count of observations per partition SELECT <partitionfieldname>, count(*) from <databasename>.<tablename> group by <partitionfieldname>;

  2. Obtenha a contagem de observações por dia SELECT to_date(<date_columnname>), count(*) from <databasename>.<tablename> group by to_date(<date_columnname>);Get the count of observations per day SELECT to_date(<date_columnname>), count(*) from <databasename>.<tablename> group by to_date(<date_columnname>);

  3. Obtenha os níveis numa coluna categóricaGet the levels in a categorical column
    SELECT distinct <column_name> from <databasename>.<tablename>

  4. Obtenha o número de níveis em combinação de duas colunas categóricas SELECT <column_a>, <column_b>, count(*) from <databasename>.<tablename> group by <column_a>, <column_b>Get the number of levels in combination of two categorical columns SELECT <column_a>, <column_b>, count(*) from <databasename>.<tablename> group by <column_a>, <column_b>

  5. Obtenha a distribuição para colunas numéricasGet the distribution for numerical columns
    SELECT <column_name>, count(*) from <databasename>.<tablename> group by <column_name>

  6. Extrair registos de junção de duas mesasExtract records from joining two tables

    SELECT
        a.<common_columnname1> as <new_name1>,
        a.<common_columnname2> as <new_name2>,
        a.<a_column_name1> as <new_name3>,
        a.<a_column_name2> as <new_name4>,
        b.<b_column_name1> as <new_name5>,
        b.<b_column_name2> as <new_name6>
    FROM
        (
        SELECT <common_columnname1>,
            <common_columnname2>,
            <a_column_name1>,
            <a_column_name2>,
        FROM <databasename>.<tablename1>
        ) a
        join
        (
        SELECT <common_columnname1>,
            <common_columnname2>,
            <b_column_name1>,
            <b_column_name2>,
        FROM <databasename>.<tablename2>
        ) b
        ON a.<common_columnname1>=b.<common_columnname1> and a.<common_columnname2>=b.<common_columnname2>
    

Scripts de consulta adicionais para cenários de dados de viagem de táxiAdditional query scripts for taxi trip data scenarios

Exemplos de consultas específicas aos cenários de datas de viagem de táxi de NYC também são fornecidos no repositório gitHub.Examples of queries that are specific to NYC Taxi Trip Data scenarios are also provided in GitHub repository. Estas consultas já têm esquema de dados especificado e estão prontas para serem submetidas a execução.These queries already have data schema specified and are ready to be submitted to run.