1Q: 是否有像类似于phpmyadmin一样的hive查询客户端,能以界面的方式查询hive语句和导出数据
A: 有的,客户端的话可以使用squirrel来连接hive,squirrel是一个通用的数据库查询客户端,还有有一个开源项目phphiveadmin也不错,
web方式访问hive,这里也有一个hive web client(https://github.com/lalaguozhe/hiveweb-1)
2Q: 执行语句时候,能否控制reducer的个数
A: 可以在执行hive语句之前先 set mapred.reduce.tasks=<number>
3Q: 是否可能在输出的时候在结果第一行打印列名
A: 可以在执行hive语句之前先 set hive.cli.print.header=true;
4Q: Hive是否支持跨数据库查询,比如database arch的table1和database algo的table2 进行join
A: 可以,只要有用户有这两张表的select权限即可,用户需要用“database.table”的方式来指定数据库下的表
5Q: Hive是否有内置的函数,可以对输出的数据进行处理
A: Hive提供了丰富的内置函数,参见https://cwiki.apache.org/Hive/languagemanual-udf.html,
用户也可以自己实现自定义的UDF方法来满足更复杂的查询需求
6Q: Hive支持exist in么?
A: 不支持,但是可以通过改写语句达到相同的效果,比如对于查询语句:
SELECT a.key, a.value FROM a WHERE a.key in (SELECT b.key FROM B);
可以改写成:
SELECT a.key, a.val
FROM a LEFT SEMI JOIN b on (a.key = b.key)
PS:上述答案过时了,目前 hive 已经支持 in 查询了。
http://blog.csdn.net/yfkiss/article/details/8073608
7Q:Hive是否支持本地执行模式
A:Hive支持本地执行模式,当数据量小的时候,本地执行比提交到集群上执行效率提升很大
set hive.exec.mode.local.auto=true(默认false)
当一个job满足如下条件才能真正使用本地模式:
1.job的输入数据大小必须小于参数hive.exec.mode.local.auto.inputbytes.max(默认值128MB)
2.job的map处理的文件数大于参数hive.exec.mode.local.auto.input.files.max(默认值4)
3.job的reduce数必须为0或者1,不管是用户设置的还是系统推测出来的
用参数hive.mapred.local.mem(默认0)来设置local mode下mapper和reducer task jvm heap size
8Q: 关键词UNION ALL的用法
A:The number and names of columns returned by each select_statement has to be the same. Otherwise, a schema error is thrown.
UNION ALL两边的字段名,和字段数都必须一致,可以用as xxx来统一字段名,并且目前UNION ALL只能作为子查询。
9Q:hive left outer join的问题:where 与 on 条件的区别
http://blog.csdn.net/lalaguozhe/article/details/9498947
10Q:其它技巧请见:
http://my.oschina.net/leejun2005/blog/121945
11、对于 jar 包调用失败 NullPointerException 的问题:
FAILED: Error in metadata: java.lang.NullPointerException
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask
你可能需要再 hive-site.xml 中添加 jar 的路径:
具体参考:http://abloz.com/2013/03/28/the-hive-execute-statements-times-nullpointerexception.html
1 |
< property >
|
2 |
< name >
|
3 |
hive.aux.jars.path
|
4 |
</ name >
|
5 |
< value >
|
6 |
file:///home/june/soft/hive-0.9.0-bin/lib/hive-json-serde.jar
|
7 |
</ value >
|
8 |
</ property >
|
相关推荐
### Hive原理与实现 #### 一、Hive的概述与意义 Hive 是一个构建于 Hadoop 之上的数据仓库工具,它提供了类 SQL 的查询语言(HQL),使得...通过对HQL的编写技巧、Hive内部机制的理解,可以有效提升Hive查询的性能。
4. **错误处理与调试**: 识别并解决查询中的常见问题,理解Hive日志以进行故障排除。 5. **实时查询**: 使用Hive on Tez或Hive on Spark实现更快的响应时间。 **Hive高级编程** 高级编程涉及更复杂的Hive使用场景和...
- 提供了一些常见问题解答,帮助用户解决使用过程中遇到的问题。 以上是Hive用户指南中文版的主要内容概述,通过对这些知识点的学习和理解,可以帮助用户更好地使用Hive进行大数据处理和分析。
- 通过具体的案例演示Hive的使用方法与技巧,包括但不限于表的设计、HiveQL语句的编写与优化等。 3. **Hive高级话题** - 生产环境中问题的分析与解决; - Hive源代码的调试与bug修复; - Hive元数据表结构的...
Hive是基于Hadoop的一个数据仓库工具,它提供了数据存储、查询和分析的机制。...Hive的FAQ部分通常涵盖了常见问题的解答,比如如何安装Hive、如何配置Hive参数、如何管理Hive表以及如何诊断和解决常见问题等。
本手册将深入探讨Hive的概念、数据类型、表的操作以及优化技巧。 1. **Hive概念与连接使用** Hive是建立在Hadoop之上的数据仓库工具,它可以将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,方便大数据...
通过上述命令和技巧,用户可以有效地管理和操作 Hive 中的数据,解决常见的数据处理和分析问题。这些方法涵盖了从基础的数据查询到复杂的表结构调整等多个方面,对于提高数据分析效率和准确性具有重要作用。
Zhou Zxy”,它可能包含了Hive的实际操作步骤、技巧以及常见问题的解决方案,对于初学者来说是一份宝贵的参考资料。 通过这些资源,学习者可以从理论到实践,全面掌握Hive的使用,包括安装、配置、数据导入、查询...
在《Apache Hive Cookbook》这本书中,作者深入浅出地介绍了如何利用Hive解决实际数据处理问题。源码部分是书籍内容的实践应用,可以帮助读者更好地理解和应用书中提到的技术点。 `Chapter 2`可能涵盖了Hive的基本...
HiveQL是Hive的SQL方言,支持常见的SQL操作,如SELECT、FROM、WHERE、GROUP BY等,同时也有针对大数据处理的独特功能,如分桶(Bucketing)、分区(Partitioning)和倾斜Join(Skewed Join)优化。 3. **数据模型*...
- **实际应用场景案例:**通过具体案例展示 Hive 如何应用于实际业务问题的解决。 - **性能调优技巧:**介绍如何根据业务需求调整 Hive 的参数以提高查询效率。 - **最佳实践分享:**分享在实际项目中积累的最佳实践...
#### 九、优化与技巧 - **9.1 全排序**:对于大规模数据集进行全排序可能会导致性能问题。 - **9.2 怎样做笛卡尔积**:在特定场景下使用笛卡尔积进行数据关联。 - **9.3 怎样写exist/in子句**:优化子查询以提高...
#### 七、Hive常见优化技巧 为了提高查询效率,Hive提供了多种优化方法,包括但不限于: - **分区**:合理设计分区策略,减少扫描的数据量。 - **索引**:为经常出现在查询条件中的列创建索引。 - **小文件合并**...
"面试用神sql--套路--累计报表.txt"可能包含了更多关于如何编写高效的Hive SQL来解决这类问题的实例和技巧,这将帮助你在面试中脱颖而出。 总结来说,Hive的级联求和功能是处理分层数据和构建累计报表的关键。通过...
【Hive、MySQL、HBase数据互导】是大数据领域常见的数据处理操作,涉及三个不同的数据存储系统。Hive是一个基于Hadoop的数据仓库工具,它允许使用类SQL的查询语言HiveQL对大规模数据进行批处理和分析。MySQL是一种...
博客链接 "<https://blog.csdn.net/magic_ninja/article/details/80486882>" 提供了关于 Hive 使用的详细教程,可能涵盖了安装配置、基本操作、查询优化以及常见问题的解决方法。读者可以通过这个博客来深入理解 ...
Hive是构建在Hadoop之上的数据仓库工具,用于简化大数据处理。其核心是Hive查询语言(HiveQL),它允许用户进行类SQL的...Hive的FAQ部分可能包含了常见问题的解答,但具体内容未在摘要中提供,因此无法进行详细解读。
列裁剪是另一种常见的Hive优化手段,指的是在SELECT语句中仅选择必要的列,避免全列扫描。例如,使用`SELECT mgid, mgid2 FROM mds_prod_grp_base_info WHERE dt='${date_qt}'`代替`SELECT * FROM mds_prod_grp_base...
本书不仅为新手提供了入门指导,也为资深玩家提供了深入的战术分析及实战技巧,旨在帮助读者在Hive棋游戏中取得胜利。本书共分为七个章节,涵盖了基本规则、虫子角色特性、记谱法、常见布局、战略思维、基础战术及...