Ubuntu下基于Saprk安装Zeppelin
前言
Apache Zeppelin是一款基于web的notebook(类似于ipython的notebook),支持交互式地数据分析,即一个Web笔记形式的交互式数据查询分析工具,可以在线用scala和SQL对数据进行查询分析并生成报表。原生就支持Spark、Scala、SQL 、shell 、markdown等。而且它是完全开源的,目前还处于Apache孵化阶段。其已经在各大公司均有采用,比如美团、微软等等。
Zeppelin的后台数据引擎可以是Spark,也可以通过实现更多的解释器来为Zeppelin添加数据引擎。在本地搭建一个Zeppelin 使得Spark更易用,同时可以很方便的将自己的工作成功展示给客户。
准备
sudo apt-get update //更新Apt
安装JDK
sudo apt-get install openjdk-8-jre openjdk-8-jdk
安装Hadoop
安装Spark
安装Git
sudo apt-get install git
安装Maven
sudo apt-get install maven
安装Npm
sudo apt-get install npm //Npm home: /usr/share/npm
安装Phantomjs
下载"phantomjs-1.9.8-linux-x86_64.tar.bz2"
解压至:/usr/local/phantomjs
安装Apache Zeppelin
源码下载
解压安装
Apache Zeppelin官方提供了Source包和二进制包,我们可以根据需要下载相关的包进行安装。
- 通过下载zeppelin的binary包:http://ftp.meisei-u.ac.jp/mirror/apache/dist/incubator/zeppelin/0.5.6-incubating/zeppelin-0.5.6-incubating-bin-all.tgz,然后解压缩安装。
tar -xzvf zeppelin--incubating-bin-all.tgz
通过编译源码的方式来安装Apache Zeppelin,我这里从Zeppelin的git库里面下载最新的源码进行编译。
$ git clone https://github.com/apache/incubator-zeppelin.git //下载最新的->解压至:/usr/local/zeppelin
编译Apache Zeppelin
- 本地模式:mvn clean package -DskipTests
- 集群模式:mvn package -Pspark-2.0 -Dhadoop.version=2.7.1 -Phadoop-2.7 -DskipTests -X
在安装过程中可能会出现各种问题,但是一般都是网络问题导致,重新执行下编译命令即可。但如果编译出现oom,需增加如下命令:
export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"
- 配置环境变量
ysp@YSP:~$ vim .bashrc
-openjdk-amd64 export SPARK_HOME=/usr/local/spark export HADOOP_HOME=/usr/local/hadoop export PHANTOMJS_HOME=/usr/local/phantomjs export ZEPPELIN_HOME=/usr/local/zeppelin export PATH=.:$PATH:/usr/local/hadoop/bin:/usr/local/phantomjs/bin:/usr/local/spark/bin:/usr/local/zeppelin/bin:/usr/lib/jvm/java--openjdk-amd64/bin;
ysp@YSP:~$ source .bashrc - 集群模式编译
ysp@YSP:~$ cd /usr/local/zeppelin ysp@YSP:/usr/local/zeppelin$ mvn package -Pspark- -Phadoop-2.7 -DskipTests -X
如果你需要使用到YARN,你必须在编译Zeppelin的时候指定-Pyarn选项。
配置
配置文件为环境变量文件(conf/zeppelin-env.sh)和Java属性文件(conf/zeppelin-site.xml)。根据自己的要求进行配置。
- 拷贝/usr/local/zeppelin/conf/zeppelin-env.sh.template和/usr/local/zeppelin/conf/zeppelin-site.xml.template至/usr/local/zeppelin/conf/zeppelin-env.sh与/usr/local/zeppelin/conf/zeppelin-site.xml。
- 编辑conf/zeppelin-env.sh
export JAVA_HOME=/usr/lib/jvm/java--openjdk-amd64 export SPARK_HOME=/usr/local/spark export HADOOP_CONF_DIR=/usr/local/hadoop export SPARK_SUBMIT_OPTIONS="--packages com.databricks:spark-csv_2.10:1.2.0"
启动
在zeppelin_home目录下执行如下命令:
ysp@YSP:/usr/local/zeppelin$ ./bin/zeppelin-daemon.sh start
其启动/停止命令: bin/zeppelin-daemon.sh start/stop。
启动之后,打开localhost:8080访问zepplin主页。
测试
配置Spark解释器
创建Note
1.text
默认使用scala语言输出text内容:
println("Hello Yuan Siping!")
2.html
shell输出html:
%sh echo "%html <h2>Hello Zeppelin</h2>"
3.table
scala:
print(s"""%table name\tsize\nsun\t100\nmoon\t10""")
4.Tutorial with Local File
Data Refine:
下载bank数据:http://archive.ics.uci.edu/ml/machine-learning-databases/00222/bank.zip ,将csv格式数据转成Bank对象RDD,并过滤表头列:
val bankText = sc.textFile("/usr/data/bank/bank-full.csv") case class Bank(age:Integer, job:String, marital : String, education : String, balance : Integer) val bank = bankText.map(s=>s.split()!="\"age\"").map( s=>Bank(s().toInt, s().replaceAll("\"", ""), s().replaceAll("\"", ""), s().replaceAll("\"", ""), s().replaceAll("\"", "").toInt ) ) bank.toDF().registerTempTable("bank")
Data Retrieval:
执行以下语句,可看到年龄的分布:
%sql ) group by age order by age
动态输入maxAge参数(默认是30岁),查看小于maxAge岁的年龄分布:
%sql ) } group by age order by age
根据婚姻状况选项,查看年龄分布状况:
%sql ) from bank where marital="${marital=single,single|divorced|married}" group by age order by age
Ubuntu下基于Saprk安装Zeppelin的更多相关文章
- ubuntu下的openfire安装、配置、运行
openfire服务器 Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议.您可以使用它轻易的构建高效率的即时通信服务器.Op ...
- 2010-01-20 12:09 ubuntu下minicom的安装及使用
转http://hi.baidu.com/npugtawqdnbgqrq/item/106f805409b42813db163527 ubuntu下minicom的安装及使用 安装: sudo apt ...
- Ubuntu下git的安装与使用
Ubuntu下git的安装与使用 Ubuntu下git的安装与使用与Windows下的大致相同,只不过个人感觉在Ubuntu下使用git更方便. 首先,确认你的系统是否已安装git,可以通过git指令 ...
- Ubuntu下Speedtest的安装
要安装Speedtest,需要先安装apache,参见<Ubuntu下Apache的安装>一文:*(再安装LAMP server,参见<Ubuntu下快速安装LAMP server& ...
- Ubuntu下Apache的安装
Ubuntu下可快速安装LAMP server(Apache+MySQL+PHP5),参见<Ubuntu下快速安装LAMP server>一文. 也可以手动安装Apache.本文介绍如何手 ...
- Linux(Ubuntu)下MySQL的安装与配置
转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...
- ubuntu下boost编译安装
ubuntu下boost编译安装 boost 安装 1.依赖安装 apt-get install mpi-default-dev libicu-dev python-dev python3-dev l ...
- ubuntu 下redis的安装简介
Linux公社:https://www.linuxidc.com/topicnews.aspx?page=2&tid=2 简单介绍下ubuntu下redis的安装方式: 第一种: 1:进入re ...
- ubuntu下tomcat的安装及注册成系统服务
在ubuntu下tomcat的安装有两种方式,第一种是下载二进制文件,解压安装:第二种则是使用apt-get自动下载.这里不推荐第二种方法安装,因为这种方法安装会像天女散花一样把安装的文件散落在系统的 ...
随机推荐
- 学习javascript数据结构(二)——链表
前言 人生总是直向前行走,从不留下什么. 原文地址:学习javascript数据结构(二)--链表 博主博客地址:Damonare的个人博客 正文 链表简介 上一篇博客-学习javascript数据结 ...
- 高德地图API 简单使用
主要是功能是 在地图上添加标记点.在标记点添加相应的内容.单击查看内容.双击直接进入相应的项目系统. <!DOCTYPE html> <html xmlns="http:/ ...
- dpkg:处理软件包dradis (--configure)时出错
dpkg:处理软件包dradis (--configure)时出错!解决方案:1.将info文件夹更名%mv /var/lib/dpkg/info /var/lib/dpkg/info_old2.新建 ...
- Maven远程仓库的认证
大部分远程仓库无须认证就可以访问,但有时处于安全方面的考虑,我们需要提供认证信息才能访问一些远程仓库.为了防止非法的仓库访问,管理员为每个仓库提供了一组用户名及密码. 这时,为了能让Maven访问仓库 ...
- 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.0.1
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...
- Canvas的width,height 和 样式中Canvas的width,height
控制Canvas的大小,有两种方式: 1:直接设置Canvas标签上的书width,height属性值; 2:通过Css设置Canvas的width,height; 这两种方式,区别是很大的. 1:C ...
- Oracle Sales Cloud:管理沙盒(定制化)小细节1——利用公式创建字段并显示在前端页面
Oracle Sales Cloud(Oracle 销售云)是一套基于Oracle云端的CRM管理系统.由于 Oracle 销售云是基于 Oracle 云环境的,它与传统的管理系统相比,显著特点之一便 ...
- 国外远控软件DarkComet-RAT
下载地址:[点此下载] 使用步骤: 注册noip.org账号创建主机地址. 安装并配置DUC. 配置监听端口 配置NO-IP Updater 然后点击Update ,配置成功则会提示Success. ...
- Golang Web开发时前端出现谜之空白换行的坑
在使用Golang做Web开发时,有时候渲染出来的模板在前台显示时会出现一些奇怪的空白换行,具体特征就是查看css样式表并没有相关定义的空白部分. 分析: 查看出现问题页面的网页源代码,复制空白换行部 ...
- 【代码笔记】iOS-一个tableView,两个section
一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...