- 印刷する
- PDF
Zeppelin を使用する
- 印刷する
- PDF
Classic環境で利用できます。
NAVERクラウドプラットフォームの Cloud Hadoopは、 クラスタ Type が Prestoまたは Sparkの場合のみ、Zeppelin Notebookをインストールします。
このガイドでは、Zeppelin Notebook UIへのアクセス方法と簡単なユースケースの実行方法について説明します。
Zeppelinに関する詳細は、Apache Zeppelin公式ホームページをご参照ください。
Zeppelin Notebook UIへのアクセス
Zeppelin Notebook UIにアクセスする方法は、次の通りです。
コンソールの Web UIリストを介したアクセス
Cloud Hadoopコンソールで [Application別に見る] から Zeppelin Notebook UIにアクセスできます。詳細は、Application別に見るをご参照ください。
ウェブブラウザから直接アクセス
ウェブブラウザを立ち上げた後、アドレスバーに以下のように入力してアクセスします。クラスタに割り当てられた Publicドメインアドレスを使用します。
http://{Publicドメイン}:9995
Ambari Web UIを介したアクセス方法
Ambari Web UIを介したアクセス方法は、次の通りです。
- Ambari UIにアクセスします。
- Ambari UIへのアクセスに関する詳細は、Ambari UIガイドをご参照ください。
- Ambari UI画面で Zeppelin Notebook > Quick Links > Zeppelin UI を順にクリックします。
- ブラウザにログインページが表示されたら、クラスタの作成時に設定した管理者アカウントとパスワードを入力してログインします。
- アクセスに成功すると、Zeppelinページの右上にある [login] ボタンの横にグリーンの点が表示されます。
Zeppelin Notebook を開始する
Zeppelin Notebookを作成し、データを入力して結果をグラフで確認できます。
このガイドは、Zeppelin Notebookにデフォルトで提供される Zeppelin Tutorial(Basic Features)Notebookを参照して作成されました。
Notebook作成
Notebookを作成する方法は、次の通りです。
Zeppelin上部の [Notebook] > Create new note をクリックします。
ノートの名前と情報を設定し、 [Create Note] ボタンをクリックします。
- Default Interpreter は、ノートを作成した後にも変更できます。
- Default Interpreter は、ノートを作成した後にも変更できます。
Default Interpreter を Sparkに設定するには、クラスタの作成時にクラスタ Type を Sparkに選択する必要があります。
テーブルにデータをロード
以下は、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://s3.amazonaws.com/apache-zeppelin/tutorial/bank/bank.csv"),
Charset.forName("utf8")).split("\n"))
case class Bank(age: Integer, job: String, marital: String, education: String, balance: Integer)
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("\"", ""),
s(5).replaceAll("\"", "").toInt
)
).toDF()
bank.registerTempTable("bank")
コードの実行と結果の照会
Zeppelin Notebookコードの実行と結果を確認する方法は、次の通りです。
- [Shift] + [Enter] キーを押すか、をクリックしてコードを実行します。
- FINISHED 状態と Took 5 sec メッセージが表示されると、コードが正常に実行されたという意味です。
新しい段落でテーブルのデータを照会する Spark SQL構文を作成した後、 [Shift] + [Enter] キーを押すか をクリックしてコードを実行します。
- 照会の結果画面が表示されます。グラフボタンを利用し、SQLの結果を様々な種類のグラフで確認できます。
%spark.sql select age, count(1) value from bank where age < 30 group by age order by age
Zeppelin Notebookのバックアップ
Zeppelin Notebookは、クラスタのマスターノードの1番サーバに保存されます。そのため、クラスタを削除すると Notebookも一緒に削除されます。
同じ Notebookを別のクラスタで使用するには、タスクの実行を完了した後、Notebookをエクスポートする必要があります。
Zeppelin Notebookをバックアップする方法は、次の通りです。
画面上部の をクリックします。
ローカル 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のライブラリ依存関係(バージョン、ライブラリ名など)を確認します。