知识库 : Hue之Spark使用

Edit Document

Hue 之 Spark 使用

目录

1.               Spark 简介

2.               Hue 中使用 Spark

2.1.               Spark & Python

2.2.               Spark & Scala

2.3.               Spark & Impala

2.4.               Spark & Hive

3.               注意事项

 

1.     Spark 简介

Spark   是基于   map reduce   算法实现的分布式计算,拥有   Hadoop MapReduce   所具有的优点   ;   但不同于   MapReduce   的是   Job   中间输出和结果可以保存在内存中,从而不再需要读写   HDFS   ,因此   Spark   能更好地适用于数据挖掘与机器学习等需要迭代的   map reduce   的算。

2.     Hue 中 使用 Spark

UDH 安装过程 中勾选 Spark 服务 和 Hue 服务, 安装完成 后 Hue 服务 界面会内嵌 Spark 服务。切换到 hue 的主页从快速链接进入到 hue 的 web 端,点击 Query Editor 选择 Spark 进入该服务的操作界面:

 

 

可以看到 Spark 的页面为:

 

 

              Spark 提供多种类型的工作方式,包括支持 Scala 、 Python 、 SQL ( hive , impala )、 Text 。可从下图的下拉菜单中选择您需要的工作方式,进行编程实现相应的功能:

 

下面 的章节将介绍 多种 类型 的 语言在 Spark 中运行 的 具体案例 。

2.1.     Spark & Python

在下拉菜单中选择 Python ,点击右侧“加号”按钮,则页面出现一个 Python 的编辑框,如下图所示:

 

             

在编辑框中输入相应的 Spark 程序,下图 的例子是 一个 利用 Spark python 通过扔飞镖估算 Pi 的值的 计算 ( spark 适用密集型计算)。

点击左侧的“运行”按钮,即可运行:

 

             

              运行结果将显示在代码编辑框下方的空白处。

2.2.     Spark & Scala

              在下拉菜单中选择 Scala ,点击右侧“加号”按钮,则页面出现一个 Scala 的编辑框,添加相应代码:

              该 代码 统计 hdfs 文件里单词个数,具体 如下图所示:

 

             

              执行结果为:

 

2.3.     Spark & Impala

              同时, S park 可通过调用 hive/impal api 来完成增、删、改、查等操作:

              在下拉菜单中选择 Impala ,点击右侧“加号”按钮,则页面出现一个 Impala 的编辑框,添加相应代码:

 

 

              可 如 Impala 页面 一样 在编辑框 下方查看执行结果 。

2.4.     Spark & Hive

在下拉菜单中选择 Hive ,点击右侧“加号”按钮,则页面出现一个 Hive 的编辑框,添加相应代码:

 

             

              可 如 Hive 页面 一样 在编辑框 下方查看执行结果 。

3.     注意 事项

多次添加 python 或 scala 编辑框会报如下 错误:

--- FAILED SelectChannelConnector@0.0.0.0:4040: java.net.BindException: 地址已在使用

解决方案 :

1 、    建议每个打开一个即可;

2 、    手动杀掉 其中一个进程 ( kill -9 进程号 )

 

Attachments:

Hue之Spark使用.docx (application/vnd.openxmlformats-officedocument.wordprocessingml.document)
Hue之Spark使用.docx (application/vnd.openxmlformats-officedocument.wordprocessingml.document)