次の方法で共有


クイック スタート: Apache Zeppelin を使用して Azure HDInsight で Apache Hive クエリを実行する

このクイック スタートでは、Apache Zeppelin を使用して Azure HDInsight で Apache Hive クエリを実行する方法について説明します。 HDInsight 対話型クエリ クラスターには、対話型 Hive クエリの実行に使用できる Apache Zeppelin ノートブックが含まれています。

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

前提条件

HDInsight 対話型クエリ クラスター。 HDInsight クラスターを作成するためには、クラスターの作成を参照してください。 必ず対話型クエリ クラスターの種類を選択してください。

Apache Zeppelin Note を作成する

  1. CLUSTERNAMEを、次の URL https://CLUSTERNAME.azurehdinsight.net/zeppelinのクラスターの名前に置き換えます。 次に、Web ブラウザーに URL を入力します。

  2. クラスター ログインのユーザー名とパスワードを入力します。 Zeppelin ページから、新しいノートを作成するか、既存のノートを開くことができます。 HiveSample には、いくつかのサンプル Hive クエリが含まれています。

    HDInsight 対話型クエリ Zeppelin。

  3. [ 新しいメモの作成] を選択します

  4. [ 新しいメモの作成 ] ダイアログで、次の値を入力または選択します。

    • 注名: メモの名前を入力します。
    • 既定のインタープリター: ドロップダウン リストから jdbc を選択します。
  5. [ メモの作成] を選択します

  6. コード セクションに次の Hive クエリを入力し、 Shift キーを押しながら Enter キーを押します。

    %jdbc(hive)
    show tables
    

    HDInsight 対話型クエリ zeppelin はクエリを実行します。

    最初の行の %jdbc(hive) ステートメントは、Hive JDBC インタープリターを使用するようにノートブックに指示します。

    このクエリは、 hivesampletable と呼ばれる 1 つの Hive テーブルを返します。

    hivesampletable に対して実行できる、さらに 2 つの Hive クエリを次に示します。

    %jdbc(hive)
    select * from hivesampletable limit 10
    
    %jdbc(hive)
    select ${group_name}, count(*) as total_count
    from hivesampletable
    group by ${group_name=market,market|deviceplatform|devicemake}
    limit ${total_count=10}
    

    従来の Hive と比較して、クエリ結果はより早く返されます。

その他の例

  1. テーブルを作成します。 Zeppelin Notebook でコードを実行します。

    %jdbc(hive)
    CREATE EXTERNAL TABLE log4jLogs (
        t1 string,
        t2 string,
        t3 string,
        t4 string,
        t5 string,
        t6 string,
        t7 string)
    ROW FORMAT DELIMITED
    FIELDS TERMINATED BY ' '
    STORED AS TEXTFILE;
    
  2. 新しいテーブルにデータを読み込みます。 Zeppelin Notebook でコードを実行します。

    %jdbc(hive)
    LOAD DATA
    INPATH 'wasbs:///example/data/sample.log'
    INTO TABLE log4jLogs;
    
  3. 1 つのレコードを挿入します。 Zeppelin Notebook でコードを実行します。

    %jdbc(hive)
    INSERT INTO TABLE log4jLogs2
    VALUES ('A', 'B', 'C', 'D', 'E', 'F', 'G');
    

その他の構文については、 Hive 言語マニュアル を確認してください。

リソースをクリーンアップする

このクイックスタートを完了したら、必要に応じてクラスターを削除できます。 HDInsight を使用すると、データは Azure Storage に格納されるため、クラスターは、使用されていない場合に安全に削除できます。 また、HDInsight クラスターは、使用していない場合でも課金されます。 クラスターの料金は Storage の料金の何倍にもなるため、クラスターを使用しない場合は削除するのが経済的にも合理的です。

クラスターを削除するには、「ブラウザー、PowerShell、または Azure CLI を使用して HDInsight クラスターを削除する」を参照してください。

次のステップ

このクイック スタートでは、Apache Zeppelin を使用して Azure HDInsight で Apache Hive クエリを実行する方法について説明しました。 Hive クエリの詳細については、次の記事で Visual Studio でクエリを実行する方法について説明します。