如何使用Zeppelin处理大数据|专家热文

这样,您可以编写代码,对用户隐藏这些代码,创建漂亮的报告并进行分享。另外,您还可以创建实时报告和图形,并使用网页接口与用户共享。

Zeppelin支持多种不同的语言解析器和特性,例如:

                   Alluxio        Kylin

                    Amgular     Lens
   
                    BigQuery    Livy
   
                    Cassandra    Markdown
   
                    ElasticSearch    Pig
   
                    Hadoop File操作    Psql
   
                    Flink    Python
   
                    Hbase    Linux shell (sh)
   
                    Ignite    Spark
   
                    JDBC
               

您还可以添加第三方解析器。

以下是Spark的例子。但首先看一个小Markdown:

您可以点击箭头运行代码,它将以markdown格式显示文本,例如,与在Github中创建README.md文件的语法相同。

安装Spark

您可以将Zeppelin作为已经与Spark等捆绑的Jupyter笔记本运行。将其与apt-get或yum一同安装。它可以从此处下载。然后,解压并拷贝conf/zeppelin-site.xml.模板到conf/zeppelin-site.xml。

然后,您可能必须将其监听的IP地址从0.0.0.0改为其他地址:

<property>
<name>zeppelin.server.addr</name>
<value>77.235.46.77</value>
<description>Server address</description>
</property>

然后启动:

bin/zeppelin-daemon.sh

关于安全的重要事项

如果您设置了Zepplin,则可以通过公共互联网接入,接下来,为其设置密码非常重要。这是因为别人可以创建bash shell解析器,对您的服务器造成严重破坏。请遵循Zeppelin的这些简单指令去做。

Spark举例

以下列出了如何创建文本文件、将其转换为Spark数据框、然后使用SQL进行查询并创建表格显示格式和图形的简单例子。

1. 首先从此处下载本例中使用的数据。然后将数据拷贝到Hadoop文件系统或本地文件系统中。

2. 然后打开Zeppelin。它通常监听http://localhost:8080。

3. 接下来点击“Create new note”。

4. 这时选择Spark解析器,为笔记本命名。假设Spark主机与Zeppelin位于同一台服务器上。注意您可以更改解析器选项卡上的属性。

5. 然后,将以下代码发布到下述单元格中。由于我们选择了解析器Spark,因此不必使第一行为%spark。注意:有一点让人讨厌的是,您不能使用鼠标右键选择粘贴。相反,必须使用 (-ctl-)(-v-)。

以下粉色标出了一些按钮。从左向右、从上到下分别是:

    • 运行代码(称为段落)

    • 清除输出,即清除所显示的结果

    • 运行一个段落

    • 访问子菜单

    • 增加一个新段落

import org.apache.spark.sql.types._
import org.apache.spark.sql.{Row}
var data = sc.textFile("file:/home/walker/Downloads/lpsa.data")
val schemaStr = "a b c d e"
val fields = schemaStr.split(" ").map(fieldName => StructField(fieldName, DoubleType, nullable = true))
val schema = StructType(fields)
val parsedData = data.map( l => l.replace(",", " ").split(" "))
case class DataClass(a: Double, b: Double, c: Double, d: Double, e: Double)
var x = parsedData.map(b => DataClass(b(0).toDouble, b(1).toDouble, b(2).toDouble, b(3).toDouble, b(4).toDouble))
var df = x.toDF()
df.createTempView("df")

6. 在解析器的下一个段落中,您可以在刚才注册为临时表格的表格中再次使用常规SQL。在下方输入代码,然后运行。接下来查看以下数据。您这时可以看到可用于创建图形的按钮。

%sql
select * from df

点击饼图图标制作饼图。(我们此处仅选择两栏。在设置选项下进行更改。)

根据我的经验,Zeppelin存在缺陷。它有时会丢失笔记本,不能始终更新变量,而且图形特性会崩溃。因此,您可能必须删除段落,然后重新创建,这样才能修复错误。另外,您还需要将笔记本导出为JSON格式进行备份。

在这里,您可以练习使用Spark、JDBC、其他大数据数据库、或者%angular,而且如果您了解HTML和JavaScript,可以添加推送按钮,或者输入字段等。您还可以将Zeppelin与您的Github账号连接,将代码保存在账号中,并支持不同的版本。您还可以将Zeppelin存储在Amazon S3或Windows Azure中。如果丢失,由于它存储在<zeppelin install>/notebook 文件夹中,名称与笔记本的URL相同,因此,对于http://localhost:8080/#/notebook/2CJJYEZTG,它以JSON格式存储在文件夹notebook/2CJJYEZTG中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值