Hive on Zeppelin

news2024/11/16 13:49:21

**

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.coloradmin.cn/o/700774.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux内核的编译、安装、调试

这里写目录标题 编译安装内核下载内核安装依赖更改.config编译内核安装首先安装模块安装内核更改引导更改grub重启 其他操作清理内核源目录卸载安装的内核修改内核配置菜单实现对新加入内核源码的控制 常见问题1. Module.symvers is missing2. No rule to make target ‘debian…

Revit三维视图:第一人称的视角看模型,生成局部三维视图

​  一、Revit中怎么以第一人称的视角看空间效果 我们创建一栋完整的楼模型后&#xff0c;会不会想说假设在里面看看是什么效果呢&#xff0c;就是说想看看第一视角的空间效果&#xff0c;那么如何可以看第一人称的空间效果图呢?以下看步骤&#xff1a; 1、 打开楼层平面图 …

系统架构设计师 6:数据库设计

一、数据库系统 数据库系统&#xff08;DataBase System, DBS&#xff09;是一个采用了数据库技术&#xff0c;有组织地、动态地存储大量相关联数据&#xff0c;从而方便多用户访问的计算机系统。广义上讲&#xff0c;DBS包括了数据库管理系统&#xff08;DBMS&#xff09;。 …

详细认识二叉树【图片+代码】

目录 一、树的概念及结构 1.1树的概念 1.2树的相关概念 1.3树的表示 1.4树在实际中的应用&#xff08;目录树&#xff09; 二、二叉树概念及结构 2.1概念 2.2特殊的二叉树 2.3二叉树的性质 2.4二叉树存储结构 三、二叉树的顺序结构及实现 3.1二叉树的顺序结构 3…

Redis6之集群

集群&#xff0c;就是通过增加服务器的数量&#xff0c;提供相同的服务&#xff0c;从而让服务器达到一个稳定、高效的状态 必要性 单个redis存在不稳定性。当redis服务宕机了&#xff0c;就没有可用的服务了。而且单个redis的读写能力是有限的。使用redis集群可以强化redis的…

PIL.Image 调色板模式处理标签数据

文章目录 1 使用PIL.Image库进行调色板模式2 转回原来的色彩3 效果参考 1 使用PIL.Image库进行调色板模式 基本步骤&#xff1a; 自定义调色板&#xff0c;数据格式是一个Nx3的二维数组&#xff0c;一维数组的位置为分类的下标数据类型为np.uint8转化为调色板模式后img.conve…

想知道音频怎么转文字吗?

随着数字化技术的不断发展&#xff0c;我们生活中产生的各种音频越来越多&#xff0c;例如会议录音、采访录音等等。虽然音频记录信息方便&#xff0c;但它们在信息处理、存储和分享方面也存在问题。比如当我们需要对音频中的内容进行编辑或整理时&#xff0c;手动打字出现漏字…

Eclipse中项目的配置

1、修改本地运行时Tomcat对应的JRE版本 老项目升级JDK&#xff0c;在eclipse修改了项目的jdk、编译等级&#xff0c;但还是启动失败&#xff0c;报“java.lang.UnsupportedClassVersionError”。 观察发现&#xff0c;启动日志&#xff0c;tomcat还是使用的jdk1.5&#xff0c;…

编程题分享:有⼀堆糖果,其数量为n,现将糖果分成不同数量的堆数

背景 近期面试遇到一家公司的编程题&#xff0c;觉得挺有参考价值 此处使用 PHP语言&#xff0c;进行编码测试&#xff0c; 编码之前要进行思路分析&#xff0c;避免无头苍蝇&#xff0c;走一步看一步 最后&#xff0c;希望后期面试顺利&#xff01;欢迎指摘 . 题目&#xff1…

形态学操作之膨胀

note // 膨胀原理&#xff1a;操作过程中&#xff0c;若膨胀因子某点是1&#xff0c;且原图该点为1&#xff0c;则锚点位置为1 code // 膨胀 // 膨胀原理&#xff1a;操作过程中&#xff0c;若膨胀因子某点是1&#xff0c;且原图该点为1&#xff0c;则锚点位置为1 typedef e…

gma 2 教程(一)概述:1.GMA 简介

地理与气象分析库&#xff08;Geographic and Meteorological Analysis. gma&#xff09;&#xff0c;是一个基于 Python 的地理、气象数据快速处理分析和地理制图函数包。构建过程参考了ArcGIS和QGIS的操作逻辑和特点&#xff0c;并添加诸多独创性、独有的功能&#xff0c;具有…

QT Creator上位机学习(三)QString及其相关控件介绍

系列文章目录 文章目录 系列文章目录字符串QStringQLableQLineEditQString的常用功能 字符串QString QSting类&#xff0c;用于处理字符串&#xff0c;进行字符串和数字之间的转化 转换函数&#xff1a; //字符串转数字 QString str......; int numstr.toInt(); float num2s…

微信项目IO优化:Jetpack DataStore 与MMKV实现高效持久化

咱们一起来看看mmkv 腾讯微信团队于2018年9月底宣布开源 MMKV &#xff0c;原理上基于 mmap的一个高性能key-value 组件&#xff0c;数据的序列化/反序列化使用 protobuf 实现&#xff0c;主打高性能和稳定性&#xff0c;也支持了Android 平台。 **MMKV最新源码托管地址&#…

Mybatis【核心配置文件说明】

配置解析 1、核心配置文件 mybatis-config.xml 注意&#xff1a; 在配置 mybatis-config.xml 时&#xff0c;要注意标签的顺序&#xff1a; 2、环境变量&#xff08;environments&#xff09; MyBatis 可以配置成适应多种环境 不过要记住&#xff1a;尽管可以配置多个环境…

现代操作系统(下)

第六章 死锁 在计算机系统中有很多独占性的资源&#xff0c;在任一时刻它们都只能被一个进程使用。两个进程同时使用同一文件系统表中的表项会引起文件系统的瘫痪。正因为如此&#xff0c;操作系统都具有授权一个进程&#xff08;临时&#xff09;排他地访问某一种资源的能力。…

【AcWing】夏季每日一题2023 -- 4382. 快速打字 -- Java Version

题目链接&#xff1a;https://www.acwing.com/problem/content/4385/ 1. 题解&#xff08;4382. 快速打字&#xff09; y总视频讲解&#xff1a;https://www.acwing.com/video/4743/ 类似题目&#xff1a;AcWing 2816. 判断子序列 1.1 双指针&#xff1a;判断子序列 ⭐ 时间复…

一文吃透MAUI、WinUI3和WPF的优势及劣势

引言&#xff1a; 在应用程序开发领域&#xff0c;选择合适的框架对于开发人员和业务来说至关重要。本文将比较并对比三个流行的用户界面框架&#xff1a;MAUI&#xff08;Multi-platform App UI&#xff09;、WinUI 3和WPF&#xff08;Windows Presentation Foundation&#x…

element ui table表格(表头、表体)样式

效果图如下 1.表头样式&#xff1a;header-cell-stayle 2.表体样式 在methods中写 在style中

使用Qt/C++实现WGS84、高德GCJ-02、百度BD-09坐标系间相互转化

在做地图相关开发时候&#xff0c;绕不开不同坐标系间的转化&#xff0c;因此我根据查阅相关资料后将不同坐标系间的转换封装到一个GeoTranslate类中&#xff0c;该类转换函数不仅支持Qt/C调用&#xff0c;同时可在QML中直接调用&#xff0c;配合上QML/Map很方便&#xff0c;我…

大咖培训讲座|高性能计算专场 认识真正的高性能计算,探究如何成为高性能计算工程师 ...

猿代码科技高性能计算讲座原文——OpenBLAS创始人无保留分享 我们如何成为一个高性能计算的工程师&#xff0c;或者这种性能优化的这一部分的软件工程师。 我其实想了一下&#xff0c;这一部分的入门的基础其实没那么难。 就是更主要的话&#xff0c;我还是在于兴趣和自驱力…