このクイック スタートでは、Apache Zeppelin を使用して Azure HDInsight で Apache Hive クエリを実行する方法について説明します。 HDInsight 対話型クエリ クラスターには、対話型 Hive クエリの実行に使用できる Apache Zeppelin ノートブックが含まれています。
Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。
前提条件
HDInsight 対話型クエリ クラスター。 HDInsight クラスターを作成するためには、クラスターの作成を参照してください。 必ず対話型クエリ クラスターの種類を選択してください。
Apache Zeppelin Note を作成する
CLUSTERNAME
を、次の URLhttps://CLUSTERNAME.azurehdinsight.net/zeppelin
のクラスターの名前に置き換えます。 次に、Web ブラウザーに URL を入力します。クラスター ログインのユーザー名とパスワードを入力します。 Zeppelin ページから、新しいノートを作成するか、既存のノートを開くことができます。 HiveSample には、いくつかのサンプル Hive クエリが含まれています。
[ 新しいメモの作成] を選択します。
[ 新しいメモの作成 ] ダイアログで、次の値を入力または選択します。
- 注名: メモの名前を入力します。
- 既定のインタープリター: ドロップダウン リストから jdbc を選択します。
[ メモの作成] を選択します。
コード セクションに次の Hive クエリを入力し、 Shift キーを押しながら Enter キーを押します。
%jdbc(hive) show tables
最初の行の
%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 と比較して、クエリ結果はより早く返されます。
その他の例
テーブルを作成します。 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;
新しいテーブルにデータを読み込みます。 Zeppelin Notebook でコードを実行します。
%jdbc(hive) LOAD DATA INPATH 'wasbs:///example/data/sample.log' INTO TABLE log4jLogs;
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 でクエリを実行する方法について説明します。