Zeppelin是基于spark的数据可视化方案。支持scala语言,任何在spark上运行的job都可以在此平台上运行,此外支持对表数据的可视化。对数据源的可视化可以通过interpreter进行扩展,比如github中就有支持mysql的interpreter。
下面着重介绍zeppelin notebook中代码书写:
scala:使用此interpreter的好处是,可以将各个数据源的数据在同一张视图中进行展示。比如以下是对mysql,hive数据的混合展示:
Load mysql表,并注册为spark sqlContext同样的表名:
import java.util.Properties
val properties = new Properties()
val url = "..."
properties.put("user", "...")
properties.put("password", "...")
properties.put("driver", "com.mysql.jdbc.Driver")
val tables = "...,..."
tables.split(",").foreach{mysql_table =>
sqlContext.read.jdbc(url, mysql_table, properties).registerTempTable(mysql_table)
}
Hive数据可以直接进行load:
sql(s"""
SELECT
...<