Big Data Cloud Service - Compute Editionでのノートブックの作業


オプション



始める前に

目的

このチュートリアルでは、Big Data Cloud Service - Compute Edition (BDCS-CE)クラスタでノートを作成および実行する方法を説明します。

所要時間

約20分

背景

Seattle Traffic Flow Countsデータセットには、現地調査に基づいたシアトルの幹線道路における交通量に関する情報が含まれます。BDCS-CEにノートを作成し、このデータセットを使用して、2009年に交通量が多い上位10本の通りを導出します。データセットには、次の列があります。

  • DOWNTOWN: これはブール値のフィールドで、通りが中心街にあるかどうかを示します。

  • STNAME: このフィールドには、通りの名前が含まれます。

  • YEAR: このフィールドには、情報が記録された年が含まれます。

  • AAWDT: AAWDTの数は季節ごとに調整された、すべてのレーンの平日の日次平均交通量の合計です。つまり、平日(月曜日から金曜日)の24時間における両方向の平均交通量の合計です。

必要なもの

  • 実行中のBDCS-CEクラスタ。

  • BDCS-CEアカウント資格証明またはBig Data Cluster ConsoleのダイレクトURL (例: https://xxx.xxx.xxx.xxx:1080/)。

  • BDCS-CEクラスタ・ログイン資格証明。

  • 「Seattle Traffic Flow Counts」データセットが含まれるCSVファイルへのURLです。

Big Data Cluster Console - 「Notebook」ページへのナビゲート

  1. BDCS-CEアカウントにログインします。

    注意: Big Data Cluster ConsoleにアクセスするためのダイレクトURLがわかっている場合、直接リンクにナビゲートして手順3から続行できます。

  2. 「Services」ページで、ノートを作成するクラスタの「Manage this Service」アイコンをクリックしてから、「Big Data Cluster Console」をクリックします。

    「Services」ページ - サービスのコンテキスト・メニュー
    このイメージの説明
  3. 「Authentication Required」という名前のウィンドウが表示されます。BDCS-CEクラスタのユーザー名およびパスワードを入力し、「Log In」をクリックします。

    「Big Data Cluster Console」ページにアクセスするための「Authentication」ページ
    このイメージの説明
  4. 「Big Data Cloud - Compute Edition Console」で、「Notebook」をクリックします。

    「Big Data Cloud - Compute Edition Console」タブ
    このイメージの説明

ノートの作成

  1. 「Big Data Cloud - Compute Edition Console Notebook」ページで、「New Note」をクリックします。

    「New Note」ボタン
    このイメージの説明
  2. 「Note Name」を入力し、「OK」をクリックします。この例では、「Note Name」にSeattle Traffic Flow Countが入力されています。

    「New Note」ウィンドウ
    このイメージの説明
  3. 正常に作成されると、「Note」が開きます。ここでは、「Note」に空の段落が含まれています。

    「Notebook」ページ
    このイメージの説明

段落の作成

段落1: 「Download Data and Import into HDFS」

  1. 次のシェル・スクリプトをコピーして空の段落に貼り付けます。

    %sh
    # Remove existing copies of dataset from HDFS
    hadoop fs -rm traffic.csv
    rm -rf /tmp/se.dataset.downloaded
    
    # Set http proxy if required
    #export http_proxy=
    
    # Fetch the dataset and save it as traffic.csv
    curl http://data.seattle.gov/api/views/7svg-ds5z/rows.csv?accessType=DOWNLOAD -o /tmp/traffic.csv
    
    # Remove column header from the CSV
    sed -i '1d' /tmp/traffic.csv
    # Remove empty fields
    sed -i "s/,,,//g" /tmp/traffic.csv
    sed -i '/^\s*$/d' /tmp/traffic.csv
    
    # Put data into HDFS
    hadoop fs -put /tmp/traffic.csv .
    hadoop fs -ls -h traffic.csv
    touch /tmp/se.dataset.downloaded
  2. 「Settings」アイコンをクリックして、「Show title」を選択します。

    「Settings」コンテキスト・メニュー
    このイメージの説明
  3. 段落のタイトルをクリックして、「Download Data and Import into HDFS」に設定します。

    段落タイトルの設定
    このイメージの説明

段落2: 「Load Data into Table」

  1. 段落の下にある+アイコンをクリックします。

  2. 次のSparkスクリプトをコピーして、空の段落に貼り付けます。

    // Wait for data to be downloaded
    import java.nio.file.{Paths, Files};
    try {
      while (!Files.exists(Paths.get("/tmp/se.dataset.downloaded"))) {
        println("sleeping for 100ms...")
        Thread.sleep(100);
      }
    }catch {
        case ea: InterruptedException => print ("Thread interrupted");
    } // Data downloaded
    
    // Load traffic data
    val dataset = sc.textFile("traffic.csv")
    
    // Count the number of rows
    dataset.count()
    
    // Register as table
    case class Traffic(downtown: String, streetname: String, year: String, vehiclecount: String)
    val traffic = dataset.map(s => s.split(",")).map(
        s => Traffic(s(0), s(1), s(2), s(3))).toDF()
    traffic.registerTempTable("traffic")
  3. 「Settings」アイコンをクリックして、「Show title」を選択します。

    「Settings」コンテキスト・メニュー
    このイメージの説明
  4. 段落のタイトルをクリックして、「Load Data into Table」に設定します。

    段落タイトルの設定
    このイメージの説明

段落3: 「Top 10 Streets with Maximum Traffic in 2009」

  1. 再度、段落の下にある+アイコンをクリックします。

  2. 次のSQL文をコピーして、空の段落に貼り付けます。

    %sql
    
    SELECT streetname, sum(vehiclecount) TotalTraffic
    FROM traffic
    WHERE year=2009
    GROUP BY streetname
    ORDER BY TotalTraffic DESC
    LIMIT 10
  3. 「Settings」アイコンをクリックして、「Show title」を選択します。

    「Settings」コンテキスト・メニュー
    このイメージの説明
  4. 段落のタイトルをクリックして、「Top 10 Streets with Maximum Traffic in 2009」に設定します。

    段落タイトルの設定
    このイメージの説明

段落の実行および出力の表示

「Run all」アイコンをクリックして、すべての段落を一度に実行するか、1つずつ実行することもできます。この例では、段落を1つずつ実行します。

  1. 「Run this paragraph」アイコンをクリックして、最初の段落を実行します。

    最初の段落の実行
    このイメージの説明

    出力にダウンロードされたファイルのプロパティが表示されることに注意してください。

  2. 「Run this paragraph」アイコンをクリックして、2番目の段落を実行します。

    2番目の段落の実行
    このイメージの説明

    データが表にロードされたことに注意してください。

  3. 次に、「Run this paragraph」アイコンをクリックして、3番目の段落を実行します。

    3番目の段落の実行
    このイメージの説明

    出力には、2009年の交通量の多い上位10本の通りが交通量の降順にソートされて表示されます。

  4. 様々なタイプのグラフでデータを表示できます。棒グラフの形式でデータを表示するには、「Bar Graph」アイコンをクリックします。

    棒グラフ
    このイメージの説明

詳細