演習 - HDInsight でデータをアップロードしてクエリを実行する

完了

これでストレージ アカウントと対話型クエリ クラスターをプロビジョニングしたので、次は、不動産データをアップロードし、いくつかのクエリを実行します。 アップロードするデータは、ニューヨーク市の不動産データです。 これには、住所、販売価格、面積、および簡単にマッピングするためにジオコード化された場所の情報を含む、28,000 個を超える物件レコードが含まれます。 不動産投資会社ではこの情報を使用し、以前に販売された物件の販売価格に基づいて、市場に出る新しい物件に適した面積の価格を決定します。

データをアップロードしてクエリを実行するには、Data Analytics Studio を使用します。これは、対話型クエリ クラスターを作成したときに使用した、スクリプト操作でインストールされた Web ベースのアプリケーションです。 Data Analytics Studio を使ってデータを Azure Storage にアップロードし、設定したデータ型と列名を使用してデータを Hive テーブルに変換してから、HiveQL を使ってクラスターのデータに対してクエリを実行することができます。 Data Analytic Studio に加え、Spark & Hive Tools for Visual Studio Code などの、任意の ODBC/JDBC 準拠のツールを使用し、Hive を使ってデータを操作することができます。

次に、Zeppelin Notebook を使用して、データの傾向をすばやく視覚化します。 Zeppelin Notebook を使用すると、クエリを送信し、多くのさまざまな定義済みグラフで結果を表示できます。 対話型クエリ クラスターにインストールされている Zeppelin Notebook には、Hive ドライバーを使用する JDBC インタープリターがあります。

不動産データをダウンロードする

  1. https://github.com/Azure/hdinsight-mslearn/tree/master/Sample%20data に移動し、データ セットをダウンロードして、propertysales.csv ファイルをご利用のコンピューターに保存します。

Data Analytics Studio を使用してデータをアップロードする

  1. 次は、https://servername.azurehdinsight.net/das/ という URL を使用して、インターネット ブラウザーで Data Analytics Studio を開きます。servername は、使用したクラスターの名前に置き換えます。

ログインするためのユーザー名は admin で、パスワードは作成したパスワードです

エラーが発生した場合は、Azure portal でクラスターの [概要] タブに移動し、確実に状態が [実行中] に設定され、クラスターの種類と HDI バージョンは [Interactive Query 3.1 (HDI 4.0)] に設定されているようにします。

  1. Data Studio Analytics がインターネット ブラウザーで起動します。

A screenshot of the Data Analytics Studio application

  1. 左側のメニューの [データベース] をクリックしてから、緑色の縦の省略記号ボタンをクリックします。次に、[データベースの作成] をクリックします。

A screenshot of the Create Database button in the Data Analytics Studio application

  1. データベースに "newyorkrealestate" という名前を付けてから、[作成] をクリックします。

  2. データベース エクスプローラーで、データベース名のボックスをクリックし、[newyorkrealestate] を選択します。

Database Explorer in the Data Analytics Studio application

  1. データベース エクスプローラーで、[+] をクリックしから、[テーブルの作成] をクリックします。

Create table button Database Explorer in the Data Analytics Studio application

  1. 新しいテーブルに "propertysales" という名前を付けてから、[Upload table](テーブルのアップロード) をクリックします。 テーブル名には、小文字と数字のみを含める必要があります。特殊文字は含めないでください。

Upload table in the Data Analytics Studio application

  1. ページの [ファイル形式の選択] 領域で次のようにします。
    • 確実にファイル形式を csv にする
    • [Is first row header?](最初の行はヘッダーですか?) ボックスをオンにします。
  2. ページの [Select File Source]\(ファイル ソースの選択\) 領域で次のようにします。
    • [Upload from Local](ローカルからアップロードする) を選択します。
    • [Drag file to upload or click browse](ファイルをドラッグしてアップロードまたは参照をクリック) をクリックして、propertysales.csv ファイルに移動します。
  3. [列] セクションで、緯度と経度のデータ型を [文字列] に変更し、販売日を [日付] に変更します。

Change data type in the Data Analytics Studio application

  1. 上にスクロールし、[テーブルのプレビュー] セクションを調べ、列見出しが正しく表示されていることを確認します。

Table preview in the Data Analytics Studio application

  1. 一番下までスクロールし、[作成] をクリックして、newyorkrealestate データベースに Hive テーブルを作成します。

Create Hive Table button in the Data Analytics Studio application

  1. 左側のメニューで、[作成] をクリックします。

Compose button in the Data Analytics Studio application

  1. 次の Hive クエリを試して、確実にすべてが予期したとおりに動作するようにする。
SELECT `ADDRESS`, `ZIP CODE`, `SALE PRICE`, `SQUARE FOOTAGE`
FROM newyorkrealestate.propertysales;
  1. 出力は次のようになるはずです。

Query output in the Data Analytics Studio application

  1. 左側のメニューの [クエリ] をクリックしてから、先ほど実行した SELECT ADDRESS, ZIP CODE, SALE PRICE, SQUARE FOOTAGE FROM newyorkrealestate.propertysales クエリを選択して、クエリのパフォーマンスを確認します。

パフォーマンスに関する推奨事項がある場合は、ツールにその推奨事項が表示されます。 このページには、実行された実際の SQL クエリも表示され、クエリの視覚的な説明が提供されます。また、クエリの実行時に Hive によって推測される構成の詳細が示され、クエリの各部分の実行にかかった時間を示すタイムラインが提供されます。

Zeppelin Notebook を使用して Hive テーブルを探索する

  1. Azure portal の [概要] ページで、[クラスター ダッシュボード] ボックスの [Zeppelin Notebook] をクリックします。

Opening a Zeppelin Notebook in the Azure portal

  1. [新しいメモ] をクリックし、メモに Real Estate Data という名前を付けてから、[作成] をクリックします。

Create a new Zeppelin Notebook in the Azure portal

  1. Zeppelin ウィンドウで次のコード スニペットをコマンド プロンプトに貼り付け、再生アイコンをクリックします。
%jdbc(hive)
show databases;
select * from newyorkrealestate.propertysales limit 10 ; 

クエリの出力がウィンドウに表示されます。 最初の 10 件の結果が返されていることがわかります。

Viewing Query results in a Zeppelin Notebook in the Azure portal

  1. 次は、Zeppelin で使用できる視覚化およびグラフ機能の一部を使用する、より複雑なクエリを起動します。 コマンド プロンプトに次のクエリをコピーして、クリックします。
%jdbc(hive)
select `sale price`, `square footage` from newyorkrealestate.propertysales 
where `sale price` < 20000000 AND `square footage` < 50000;

既定では、クエリの出力は表形式で表示されます。 代わりに、[散布図] を選択して、Zeppelin Notebook で提供されるビジュアルの 1 つを表示します。

Visualizations in a Zeppelin Notebook in the Azure portal