Zeppelin使用hive解释器

此zeppelin为官方0.5.6版,可能还在孵化阶段,可能出现一些bug吧。

配置

cp zeppelin-env.sh.template zeppelin-env.sh
vi zeppelin-env.sh

添加:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.axs7.ppc64le
export HADOOP_CONF_DIR=/etc/hadoop/conf

启动zepplein

../bin/zeppelin-daemon.sh start

访问http://localhost:8080

修改hive Interpreter

记得修改完点右上restart,重启解释器。

查询

这就体现一下这个bug。

一、

对应解释器日志:

cat zeppelin-interpreter-hive--ldd-1.log
INFO [2016-11-01 10:06:53,238] ({pool-2-thread-8} HiveInterpreter.java[interpret]:326) - PropertyKey: default, SQL command: ‘select * from hehe.haha‘
 INFO [2016-11-01 10:06:53,328] ({pool-2-thread-8} SchedulerFactory.java[jobFinished]:135) - Job remoteInterpretJob_1478009213237 finished by scheduler org.apache.zeppelin.hive.HiveInterpreter197014835

二、

日志:

INFO [2016-11-01 10:08:39,412] ({pool-2-thread-15} HiveInterpreter.java[interpret]:326) - PropertyKey: *, SQL command: ‘ect count(*) from hehe.haha‘
ERROR [2016-11-01 10:08:39,412] ({pool-2-thread-15} Job.java[run]:182) - Job failed
org.apache.zeppelin.interpreter.InterpreterException: java.lang.NullPointerException
    at org.apache.zeppelin.interpreter.ClassloaderInterpreter.interpret(ClassloaderInterpreter.java:61)
    at org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:93)
    at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:300)
    at org.apache.zeppelin.scheduler.Job.run(Job.java:169)

三、

日志:

INFO [2016-11-01 10:11:17,500] ({pool-2-thread-5} HiveInterpreter.java[interpret]:326) - PropertyKey: default, SQL command: ‘select count(*) from hehe.haha‘
 INFO [2016-11-01 10:11:17,568] ({pool-2-thread-5} SchedulerFactory.java[jobFinished]:135) - Job remoteInterpretJob_1478009477499 finished by scheduler org.apache.zeppelin.hive.HiveInterpreter197014835

结论:官方说%hive(${prefix}),若不加默认prefix为default,但从上面可以看出,第一次不加default时,select * 可以查询,但select count(*)就会报错,从日志中可以看出,它把count(*)括号中的*识别成了PropertyKey,select语句解析也发生了变化,导致报java空指针异常,但从第三个可以看出,加上default,hive解释器解析又变正常。感觉是个bug。

总的来说,可以用hive解释器了。由于当时使用zeppelin的时候还是0.5.6,经过四个月左右吧已经出了3个版本,最新版本0.6.2,功能更强悍了。后续再进一步探索它的奥妙吧。

时间: 2025-01-18 02:39:40

Zeppelin使用hive解释器的相关文章

Zeppelin0.6.2使用hive解释器

Zeppelin0.6.2的jdbc Interpreter 配置 1.拷贝hive的配置文件hive-site.xml到zeppelin-0.6.2-bin-all/conf下. 2.进入conf下 cp zeppelin-env.sh.template zeppelin-env.sh 编辑zeppelin-env.sh文件,添加: export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.axs7.ppc64le expo

Zeppelin添加mysql解释器

安装Apache zeppelin 1 wget http://apache.fayea.com/zeppelin/zeppelin-0.6.2/zeppelin-0.6.2-bin-all.tgz 1 tar -xzvf zeppelin-0.6.2-bin-all.tgz 配置Mysql interpreter 1.在zeppelin目录下的interpreter下放入mysql的解释器. mysql解释器 密码:s8ec 2.修改配置文件 1 [[email protected] conf

Zeppelin使用spark解释器

Zeppelin默认自带本地spark,可以不依赖任何集群,下载bin包,解压安装就可以使用. 使用其他的spark集群在yarn模式下. 配置: vi zeppelin-env.sh 添加: export SPARK_HOME=/usr/crh/current/spark-client export SPARK_SUBMIT_OPTIONS="--driver-memory 512M --executor-memory 1G" export HADOOP_CONF_DIR=/etc/

Zeppelin0.7.2结合hive解释器进行报表展示

前提:服务器已经安装好了hadoop_client端即hadoop的环境hbase,hive等相关组件 1.环境和变量配置①拷贝hive的配置文件hive-site.xml到zeppelin-0.7.2-bin-all/conf下 # cp /root/hadoop-2.6.0/conf/hive-site.xml /data/hadoop/zeppelin/zeppelin-0.7.2-bin-all/conf ②进入conf下进行环境变量的配置 # cd /data/hadoop/zeppe

HIVE简明教程

完整PDF下载:<HIVE简明教程> 前言 Hive是对于数据仓库进行管理和分析的工具.但是不要被“数据仓库”这个词所吓倒,数据仓库是很复杂的东西,但是如果你会SQL,就会发现Hive是那么的简单,简单到甚至不用学就可以使用Hive做出业务需求所需要的东西. 但是Hive和SQL毕竟不同,执行原理.优化方法,底层架构都完全不相同. 大数据离线分析使用Hive已经成为主流,但是目前市面上Hive相关的中文书籍只有一本<Hive编程指南>,对于不懂技术的数据分析人员来说,这本书有些繁琐

详解Hive的架构、工作原理及安装步骤

一.Hive是什么? Hive 是基于 Hadoop 构建的一套数据仓库分析系统,它提供了丰富的 SQL 查询方式来分析存储在 Hadoop 分布式文件系统中的数据, 可以将结构化的数据文件映射为一张数据库表,并提供完整的 SQL 查询功能,可以将 SQL 语句转换为 MapReduce 任务进行运行,通过自己的 SQL 去 查询分析需要的内容,这套 SQL 简称 Hive SQL. 二.理解Hive 架构 Hive 架构可以分为四部分. 用户接口 Hive 对外提供了三种服务模式,即 Hive

详解Hive的架构及安装步骤

一.Hive是什么? Hive 是基于 Hadoop 构建的一套数据仓库分析系统,它提供了丰富的 SQL 查询方式来分析存储在 Hadoop 分布式文件系统中的数据, 可以将结构化的数据文件映射为一张数据库表,并提供完整的 SQL 查询功能,可以将 SQL 语句转换为 MapReduce 任务进行运行,通过自己的 SQL 去 查询分析需要的内容,这套 SQL 简称 Hive SQL. 二.理解Hive 架构 Hive 架构可以分为四部分. 用户接口 Hive 对外提供了三种服务模式,即 Hive

hive概念、架构、部署及原理介绍

转:https://www.aboutyun.com/thread-21544-1-1.html 问题导读: 1.Hive 是什么? 2.Hive 架构分哪几部分? 3.Hive 文件格式是怎样的? 一.Hive是什么? Hive 是基于 Hadoop 构建的一套数据仓库分析系统,它提供了丰富的 SQL 查询方式来分析存储在 Hadoop 分布式文件系统中的数据, 可以将结构化的数据文件映射为一张数据库表,并提供完整的 SQL 查询功能,可以将 SQL 语句转换为 MapReduce 任务进行运

hadoop mr优化

1,比较器尽量不要让mr产生序列化和反序列化的转换,参考WritableComparable类 2,reducer严重的数据倾斜,可以考虑自定义分区器 但是之前可以尝试使用combiner来压缩数据看是否能解决问题 3,Map阶段不使用正则表达式 4,split使用StringUtils,据测试性能远高于(String,Scanner,StringTokenizer),writableutils等工具类可以尝试去用一种 5,hadoop产生的数据要压缩,减少数据传输和I/O开销 6,使用结果或中