专栏首页数据社推荐一款可视化+NoteBook工具

推荐一款可视化+NoteBook工具

大数据平台搭建好后,我们要做的就是探索数据,探索数据就需要查询,做可视化,那么一款好用自助查询可视化工具,你值得拥有!

一、Zeppelin介绍

Apache Zeppelin是一个让交互式数据分析变得可行的基于网页的开源框架。Zeppelin提供了数据分析、数据可视化等功能。

Zeppelin 是一个提供交互数据分析且基于Web的笔记本。方便你做出可数据驱动的、可交互且可协作的精美文档,并且支持多种语言,包括 Scala(使用 Apache Spark)、Python(Apache Spark)、SparkSQL、 Hive、Hbase、 Markdown、Shell、MySQL、postgresql、JDBC等等。

Zeppelin提供了Interpreter(解释器)来连接各种数据源,也根据提供的API可以开发新的interpreter。

二、软件部署

环境

  • jdk
  • 最新版本的Zeppelin(http://zeppelin.apache.org/download.html)

下载zeppelin-XX-bin-all.tgz,拷贝到准备部署的主机上,然后解压。

tar –zxvf zeppelin-XX-bin-all.tgz

解压后看到目录结构如下:

配置Java环境变量

copy原来的conf/zeppelin-env.sh.template命名为zeppelin-env.sh,在conf/zeppelin-env.sh添加Java路径。

配置地址端口号

copy 原来的conf/zeppelin-site.xml.template修改配置文件conf/zeppelin-site.xml。默认端口是8080,如果8080端口没有被占用,也可以使用默认端口,不用修改。

启动

bin/zeppelin-daemon.sh start,查看日志,首次启动会创建日志目录

启动成功,打开前台web页面 172.1.1.1:8888

新建notebook,测试(默认为Scala语言)

三、连接hive数据仓库

配置interpreter

在前台页面打开interpreter,找到JDBC,配置参数

HiveServer2 的用户名和密码可以通过编辑 $HIVE_HOME/conf/hive-site.xml 属性:

• hive.server2.thrift.client.user

• hive.server2.thrift.client.password

如果没有配置该属性,那么上面的interpreter参数中的用户和密码可以不用配置。

下面就可以使用Zeppelin连接hive进行查询,首先新建一个notebook:

验证是否成功连接hive,输入:show databases,运行如下:

输入查询SQL脚本,运行如下图:

  • keys:指横轴
  • Values:指纵轴

可以通过拖拉方式指定Key和Values(横轴纵轴的比例是自适应的)

其中可视化的表现形式可以选择:

四、权限设置

在登录的时候我们发现Zeppelin默认登录时不需要输入用户名密码的,也就是匿名登录模式anonymous,通过查看配置文件conf/zeppelin-site.xml可以发现,默认配置的是允许匿名访问。

如何修改权限呢?

  • 首先我们修改该配置zeppelin.anonymous.allowed的value为false,表示不允许匿名访问
  • conf/shiro.ini文件,显然zeppelin采用了shiro作为他的验证登录权限控制框架,修改文件最后一行

把/=anon修改为/=authc,这样重启zeppelin后访问我们的zeppelin主页就变成这个样子了。(注意右上角编程了login)

看见右上角的Login按钮了吧,点击login但是没有发现注册按钮。

  • 需要修改conf/shiro.ini配置文件,其实Zeppelin已经给你配好了几个用户,再次再新增一个用户

然后重启Zeppelin,点击login登录,输入刚才的账号密码登录,可以看到登录上去了。

当然权限控制远不止如此。比如:

打开刚才的notebook,可以看到右上角有一个小锁的标志,点击,可以输入对应的用户对该notebook操作权限。

使用其他用户登录会提示没有权限

可以看到可以对每一个notebook进行权限控制,这样在分享自己的分析结果中很方便。

五、总结

Zeppelin的解释器设计非常巧妙,及时官方没有,你也可以开发自己的解释器(现在已经很完善,支持各种连接)。zeppelin支持MD、shell、python、R、SQL、scala等多种语言,在notebook中可以使用多种语言结合markdown和可视化在探索数据后,随即做一个很漂亮的分析报告,不用再机芯数据导出,数据可视化,多个工具之间进行迁移,大大提高工作效率。对于分析团队很有必要引入一下该组件,新的分析团队成员再也不用担心开发环境配置了~

本文分享自微信公众号 - 数据社(DataClub),作者:数据社

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-08-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 用户行为分之数据处理

    上一篇《用户行为分析之数据采集》我们说了用户行为分析的数据采集部分,同时也对用户行为分析做了简单的介绍,本篇我们来说一下用户行为分析的数据处理部分。

    数据社
  • Flink简介

    ApacheFlink是一个面向分布式数据流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时,提供支持流处理和批处理两种类型应用的功能。

    数据社
  • 一个数据人的思考

    最近领导和团队沟通,想提高数据建模团队的能力。结合自己工作的经验和朋友的交流,来总结下如何去做。

    数据社
  • 推荐系统中的相似度度量

    您是否曾经想过Netflix是如何向您推荐您感兴趣的电影?或者亚马逊如何向您推荐难以抵制购买的产品?

    deephub
  • GUI组件添加、布局设置

    先构建一个窗口对象,使用setLayout();方法把布局设置为null,用setBounds();方法将窗口的位置坐标设置好,记得setVisibel();显...

    端碗吹水
  • 深入了解推荐系统中的相似性

    你有没有想过Netflix是如何推荐你想看的电影的?或者亚马逊如何向你展示你觉得需要购买的产品?

    磐创AI
  • 数据中心:U位物联结合CFD精细化监控机房温度

    数据中心运维,喜冷怕热。在服务器的丛林里,热点无处不在,如何采用安全的RFID新技术方案,从每个服务器真实的物理温度监控开始,准确得出机房的热点云图,是跨越传统...

    james_008
  • Java程序员2019学习方向,高并发,分布式,Redis,微服务

    做任何事之前,需要先打好基础。想入行Java,就必须掌握JavaSE基础;其次是各种设计模式都要会,常用的就二十几种,像单例模式、工厂模式等等,一定要运用得滚瓜...

    美的让人心动
  • es6 Set 和Map 数据结构

    ES6提供了新的数据结构Set,它类似于数组,但是成员的值都是唯一的,没有重复的值。   Set 本身是一个数据结构,用来生成Set 数据结构。     con...

    用户1197315
  • SQL SERVER 2005/2008 中关于架构的理解(一)

    在一次的实际工作中碰到以下情况,在 SQL SERVER 2008中,新建了一个新用户去访问几张由其他用户创建的表,但是无法进行查询,提示“对象名...

    ellipse

扫码关注云+社区

领取腾讯云代金券