Zeppelin を使用する
    • PDF

    Zeppelin を使用する

    • PDF

    Article Summary

    VPC環境で利用できます。

    NAVERクラウドプラットフォームの Cloud Hadoopには Zeppelin Notebookがインストールされています。
    このガイドでは、Zeppelin Notebook UIへのアクセス方法と簡単なユースケースの実行方法について説明します。
    Zeppelinに関する詳細は、Apache Zeppelin公式ホームページをご参照ください。

    Zeppelin Notebook UIへのアクセス

    Zeppelin Notebook UIにアクセスする方法は、次の通りです。

    コンソールの Web UIリストを介したアクセス

    Cloud Hadoopコンソールで [Application別に見る] から Zeppelin Notebook UIにアクセスできます。詳細は、Application別に見るをご参照ください。

    ウェブブラウザから直接アクセス

    ウェブブラウザを立ち上げ、アドレスバーに以下のように入力してアクセスします。クラスタに割り当てられたドメインアドレスを使用します。

    https://{ドメインアドレス}:9996
    

    Ambari Web UIを介したアクセス方法

    Ambari Web UIを介したアクセス方法は、次の通りです。

    1. Ambari UIにアクセスします。
      • Ambari UIへのアクセスに関する詳細は、Ambari UIガイドをご参照ください。
    2. Ambari UI画面で Zeppelin Notebook > Quick Links > Zeppelin UI を順にクリックします。
    3. ブラウザにログインページが表示されたら、クラスタの作成時に設定した管理者アカウントとパスワードを入力してログインします。
      • アクセスに成功すると、Zeppelinページの右上にある [login] ボタンの横にグリーンの点が表示されます。

    Zeppelin Notebook を開始する

    Zeppelin Notebookを作成し、データを入力して結果をグラフで確認できます。
    このガイドは、Zeppelin Notebookでデフォルトとして提供している Zeppelin Tutorial(Basic Features)Notebookを参照して作成されました。

    Notebook作成

    Notebookを作成する方法は、次の通りです。

    1. Zeppelin上部の [Notebook] > Create new note をクリックします。
      cloudhadoop-use-zeppelin1_ko

    2. Notebookの名前と情報を設定し、 [Create] ボタンをクリックします。

      • Default Interpreter は、ノート作成後にも変更できます。
        cloudhadoop-use-zeppelin2_ko

    テーブルにデータをロード

    以下は、bank.csvのデータを bankテーブルにロードするサンプルコードです。

    %spark.spark
     import org.apache.commons.io.IOUtils
     import java.net.URL
     import java.nio.charset.Charset
    
     // Zeppelin creates and injects sc (SparkContext) and sqlContext (HiveContext or SqlContext)
     // So you don't need create them manually
    
     // load bank data
     val bankText = sc.parallelize(
         IOUtils.toString(
             new URL("https://cdn.document360.io/6998976f-9d95-4df8-b847-d375892b92c2/Images/Documentation/bank.csv"),
             Charset.forName("utf8")).split("\n"))
    
    
     case class Bank(age: Integer, job: String, marital: String, education: String)
    
     val bank = bankText.map(s => s.split(",")).filter(s => s(0) != "age").map(
         s => Bank(s(0).toInt,
                 s(1).replaceAll("\"", ""),
                 s(2).replaceAll("\"", ""),
                 s(3).replaceAll("\"", "")
             )
    
     ).toDF()
     bank.registerTempTable("bank")
    

    コードの実行と結果の照会

    Zeppelin Notebookコードの実行と結果を確認する方法は、次の通りです。

    1. [Shift] + [Enter] キーを押すか、cloudhadoop-zeppelin-runをクリックしてコードを実行します。
    • FINISHED 状態と Took 4 sec メッセージが表示されると、コードが正常に実行されたという意味です。
      cloudhadoop-use-zeppelin3
    1. 新しい段落でテーブルのデータを照会する Spark SQL構文を作成して [Shift] + [Enter] キーを押すか、cloudhadoop-zeppelin-runをクリックしてコードを実行します。

      • 照会の結果画面が表示されます。グラフボタンを利用し、SQLの結果を様々な種類のグラフで確認できます。
      %spark.sql
      select age, count(1) value
      from bank
      where age < 30
      group by age
      order by age
      

      cloudhadoop-use-zeppelin4

    Zeppelin Notebookのバックアップ

    Zeppelin Notebookは、クラスタのマスターノードの1番サーバに保存されます。そのため、クラスタを削除すると Notebookも一緒に削除されます。
    同じ Notebookを別のクラスタで使用するには、タスクの実行を完了した後、Notebookをエクスポートする必要があります。

    Zeppelin Notebookをバックアップする方法は、次の通りです。

    1. Notebook画面上段の cloudhadoop-zeppelin-download ボタンをクリックします。
    2. ローカル PCにファイル名とパスを決めた後、保存します。
      • エクスポートしたファイルは JSON形式で保存されます。
    参考

    Zeppelin Notebookのバックアップ時、Notebook単位で保存します。

    参考

    zeppelinで jdbc interpreterをインストールするには、エッジサーバで/etc/zeppelin/conf/interpreter-listファイルの jdbcバージョン情報を修正した後、インストールします。

    変更前: jdbc org.apache.zeppelin:zeppelin-jdbc:0.11.0-SANPSHOT Jdbc interpreter変更後: jdbc org.apache.zeppelin:zeppelin-jdbc:0.10.1 Jdbc interpreter

    詳細は、メイブンで jdbc interpreterのライブラリ依存関係(バージョン、ライブラリ名など)を確認します。


    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.