Zeppelin使用说明

来源:互联网 发布:手机淘宝促销活动 编辑:程序博客网 时间:2024/06/05 02:06

布局介绍

在Zeppelin中以笔记本(notebook)的形式组织和管理交互式数据探索任务,一个笔记本(note)可以包括多个段(paragraph)。段是进行数据分析的最小单位,即在段中可以完成数据分析代码的编写以及结果的可视化查看。

下图所示笔记本为“应用向导”,图中红框部分为段。在段内,包括段标题、段代码编辑区、结果展示区和操作区。


笔记本内和段内操作按钮说明如下所示:



创建Note

1) 单击标题栏部分的“Notebook”,在下拉菜单中选择“新建note”。


2) 在弹出的对话框中输入Note名称。
名称中可以使用包含绝对路径,系统会自动创建相关目录。

 
3) 单击“创建”。
空白的Notebook如下所示:

 
光标所在处即为段的代码编辑区。

创建Paragraph

1) 单击标题栏部分的“Notebook”,在下拉菜单中选择一个已存在的Notebook。
2) 将关闭移动到一个已存在段的上方或下方,待鼠标从箭头变为手的样式时,单击鼠标,即可创建一个新的paragraph。
 
在上图中,鼠标为 “手”的样式,单击鼠标左键即可在原有paragraph下方创建出一个新的paragraph,如下图所示:

 在上图中,从光标所在位置可以开始段代码的编辑。

3) 在段中写入如下代码。
val user_data = sc.textFile("/root/ml-100k/u.user")user_data.first()val user_fields = user_data.map(line => line.split("\\|"))val num_users = user_fields.map(fields => fields(0)).count()val num_genders = user_fields.map(fields => fields(2)).distinct().count()val num_occupations = user_fields.map(fields => fields(3)).distinct().count()val num_zipcodes = user_fields.map(fields => fields(4)).distinct().count()val count_by_occupation = user_fields.map(fields => (fields(3),1)).reduceByKey(_ + _).collect().toList.sortBy(_._2).map(line => line._1+"\t"+line._2).toList.mkString("\n")println("%table occupation\tsize\n" + count_by_occupation)
上述为scala代码,功能为统计“/root/ml-100k/u.user”文件中每种职业的用户数目。其中u.user文件样例如下所示,每行是以“|”分割,字段依次表示序号、年龄、性别、职业、ID。
1|24|M|technician|857112|53|F|other|940433|23|M|writer|320674|24|M|technician|435375|33|F|other|152136|42|M|executive|981017|57|M|administrator|913448|36|M|administrator|052019|29|M|student|0100210|53|M|lawyer|90703

4) 单击 运行段中的代码。
运行结果如下所示:

5) 以饼图展示结果。单击表格上方的 ,结果以饼图展示,如下图所示。




6) 导出结果文件。单击图上方的下载按钮,并在下拉列表中选择CSV,即可将结果文件下载到本地。
原创粉丝点击