Hive on Zeppelin

**

Hive on Zeppelin

**

官网:zeppelin.apache.org

做大数据的人应该对Hive不陌生,Hive应该是大数据SQL引擎的鼻祖。历经多个版本的改进,现在的Hive3已经具备比较完善的ACID功能,能够同时满足交互式查询和ETL 两种场景。
那怎么来用hive呢 ?如果你还在用beeline来跑hive sql的话,你就弱爆了,来看看强大的Zeppelin能够给你带来什么吧

在这里插入图片描述
配置Hive Interpreter
未启用Shiro
未启用kerberos
在这里插入图片描述
启用kerberos
在这里插入图片描述

启用Shiro
未启用kerberos

在这里插入图片描述
启用kerberos
在这里插入图片描述
Interpreter 是Zeppelin里最重要的概念,每一种Interpreter对应一个引擎。Hive对应的Interpreter是Jdbc Interpreter, 因为Zeppelin是通过Hive的Jdbc接口来运行Hive SQL。
接下来你可以在Zeppelin的Interpreter页面配置Jdbc Interpreter来启用Hive。首先我想说明的是Zeppelin的Jdbc Interpreter可以支持所有Jdbc协议的数据库,Zeppelin 的Jdbc Interpreter默认是连接Postgresql。
启动Hive,可以有2种选择

  1. 修改默认jdbc interpreter的配置项(这种配置下,在Note里用hive可以直接 %jdbc 开头)
  2. 创建一个新的Jdbc interpreter,命名为hive (这种配置下,在Note里用hive可以直接 %hive 开头)
    这里我会选用第2种方法。我会创建一个新的hive interpreter,然后配置以下基本的属性(你需要根据自己的环境做配置)

在这里插入图片描述
hive.driver 配置成 org.apache.hive.jdbc.HiveDriver, 因为Zeppelin没有把Hive打包进去,所以默认情况下找不到这个Class的,你需要在这个Interpreter中添加dependency,如下图所示:

在这里插入图片描述
hive.url的默认配置形式是 jdbc:hive2://host:port/<db_name>, 这里的host是你的hiveserver2的机器名,port是 hiveserver2的thrift 端口 (如果你的hiveserver2用的是binary模式,那么对应的hive配置是hive.server2.thrift.port (默认是10000),如果是http模式,那么对应的hive配置是hive.server2.thrift.http.port,(默认是10001) 。db_name是你要连的hive 数据库的名字,默认是default

在这里插入图片描述

高级功能
看到这边,你可能会说Zeppelin不就是连接hive jdbc来运行sql嘛,也没什么特别的啊。稍安勿躁,接下来我们来看看除了以上基本sql的执行功能,Zeppelin的Jdbc Interpreter还能为Hive做什么:
● Dynamic Forms
● 支持一次运行多条SQL语句
● 支持并发运行多条SQL语句
● 展示Hive Job运行过程log
● 关联Job URL
● Rest API 运行 Hive SQL
Dynamic Forms

Dynamic Forms 是Zeppelin的一个高级功能,允许用户在代码中插入UI控件来允许用户定制化你的代码。Jdbc Interpreter支持这一功能,用户可以定制SQL,下面是一个下拉框的例子。

在这里插入图片描述
Zeppelin也支持文本框,Checkbox,具体可以参考 http://zeppelin.apache.org/docs/0.8.0/usage/dynamic_form/intro.html
支持一次运行多条SQL语句

默认情况下,Zeppelin支持在一个Paragraph中按顺序运行多条SQL语句。每条SQL语句以分号隔开,如下图

在这里插入图片描述
支持并发运行多条SQL语句

默认情况下,Jdbc Interpreter能够允许同时运行多条SQL语句(运行多个Hive Job),你可以修改以下配置来调整。

在这里插入图片描述
展示Hive Job运行过程log

在最新版本的Zeppelin中可以展示Hive Job的运行过程log,和你在beeline里看到的一样。如下图所示:
在这里插入图片描述
如果你不想看到log,那么有2种方式
● 设置hive interpreter的属性 hive.log.display 为false,这样所有的paragraph都不会展示log
● 设置paragraph的local property:displayLog=false来控制每个paragraph的log输出,如下图:

在这里插入图片描述
关联Job URL

如果你是用MR引擎,那么Zeppelin还帮你自动关联到对应MR Job URL。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/1119.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软考高级系统架构设计师(九) 作文模板-微服务架构(待继续完善)

目录 举一反三-论微服务架构及其应用 ps: 更多微服务信息 ps: 微服务与SOA区别 微服务架构举例 微服务的落地技术 微服务的技术可大致分为五类 举一反三-论微服务架构及其应用 论微服务架构及其应用 微服务提倡将单一应用程序划分成一组小的服务&#xff0c;服务之间互相…

HTML5 新增的标签有哪些

HTML5&#xff08;超文本标记语言第五版&#xff09;是一种用于创建和呈现网页内容的标准标记语言。是最新的html标准&#xff0c;拥有新的语义、图形以及多媒体元素&#xff0c;简化web应用程序&#xff0c;专为丰富的web内容而设计的&#xff0c;简称“H5”。 语义化标签 H5是…

Linux:通过wget下载安装mysql数据库(5.7版本)

目前&#xff0c;主要使用的MySQL有5.7和8.0两个版本&#xff0c;在安装上&#xff0c;5.7和8.0版本基本一致&#xff0c;区别只在于配置root密码和远程登陆上不同。本次将以5.7版本作为对象&#xff0c;进行后续安装。 1.wget下载MySQL安装文件 下载完成&#xff0c;得到mysq…

Vue3自定义指令实现按钮权限

一、需求前提 登录成功后&#xff0c;后端直接返回了用户的所有权限&#xff08;路由权限按钮权限&#xff09;&#xff0c;在已经实现菜单权限的基础上&#xff0c;实现每个页面的按钮权限&#xff0c;树形数据结构如下&#xff1a; { "roles": ["admin&q…

Multiple HTTP implementations were found on the classpath错误的解决方法

当我们的项目中集成了多个AWS相关Jar包时,有可能就会遇到这个错误: 错误信息: There is an issue with the connector Code: InvalidInput.InvalidConnectorConfiguration Message: The connector configuration is invalid. Message: Multiple HTTP implementations were f…

新手小白学JAVA_IDEA修改主题 设置背景图片

很多小白在刚刚使用IDEA的时候还不是很熟练 本文主要给大家提供一些使用的小技巧&#xff0c;希望能帮助到你 1.修改IDEA默认主题 IDEA的默认主题是黑色的&#xff0c;其实也可以选择其他的主题 我们一起来试一试吧~ 2.修改IDEA背景图片 IDEA的背景图片也是可以自定义的 我们…

蓝桥杯专题-试题版含答案-【两点距离】【字符串替换】【盗梦空间】【素数】

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 &#x1f449;关于作者 专注于Android/Unity和各种游…

关于内存颗粒的地址映射

即便从软件角度&#xff0c;抛开地址译码器讨论内存颗粒中指定位置处的地址&#xff08;DDR中的指定位置的电容&#xff09;也是没有意义的。晶体管没有绝对地址&#xff0c;就如同地理测量中测定位置前需要确定坐标系一样&#xff0c;同一个位置在不同的坐标系中的地址描述可以…

vue-tsc --noEmit导致打包报TS类型错误

&#x1f431; 个人主页&#xff1a;不叫猫先生&#xff0c;公众号&#xff1a;前端舵手 &#x1f64b;‍♂️ 作者简介&#xff1a;2022年度博客之星前端领域TOP 2&#xff0c;前端领域优质作者、阿里云专家博主&#xff0c;专注于前端各领域技术&#xff0c;共同学习共同进步…

TypeScript——泛型

泛型&#xff08;Generics&#xff09;是指在定义函数、接口或类的时候&#xff0c;不预先指定具体的类型&#xff0c;而在使用的时候再指定类型的一种特性。 函数泛型 本来函数参数类型的不同时&#xff0c;要写多个&#xff0c;现在用泛型&#xff0c;只需要使用时传参即可…

吉他如何实现内录or通过转接头和简易声卡连接电脑没有声音怎么办

目录 效果器or智能音箱 电吉他和效果器的连接 效果器和耳机or音箱连接 内录方法 为什么用6.5mm&#xff08;入&#xff09;转3.5mm&#xff08;出&#xff09;转接头内录无声音 整体连接图示 这篇文章我会以通俗的语言为初学者描述如何让电吉他“燃起来”&#xff0c;效果…

Idea项目application.properties配置文件默认GBK,如何设置默认为UTF-8编码

简述&#xff1a;java程序在项目中一般设置都是UTF-8编码格式&#xff0c;但是项目application.properties 文件默认是GBK,需要手工修改默认编码格式 步骤&#xff1a; file->setting->editor->file encodings下&#xff0c;勾选transparent native-to-ascll conver…