- 浏览: 348323 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
lvyuan1234:
你好,你那个sample.txt文件可以分享给我吗
hive insert overwrite into -
107x:
不错,谢谢!
hive 表的一些默认值 -
on_way_:
赞
Hadoop相关书籍 -
bupt04406:
dengkanghua 写道出来这个问题该怎么解决?hbase ...
Unexpected state导致HMaster abort -
dengkanghua:
出来这个问题该怎么解决?hbase master启动不起来。
Unexpected state导致HMaster abort
修改 conf/hadoop-env.sh 的相关设置如:
export HADOOP_HEAPSIZE=64
export HADOOP_CLIENT_OPTS="-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/tianzhao/oom.hprof"
hive启动的时候会应用上面的设置,当OOM的时候,会dump映像到oom.hprof文件,可用java的VisualVM来查看内存相关的信息
partition相关:
hive在设置的内存相对比较小(64或128等)的时候会,对partition数有限制,写了一些脚本测试partition.
for ((i=1; i<=10000; i++));
do echo "alter table tablenamexxx add partition(pt='${i}');" >> parit_test.sql;
done
建表语句
create table tablenamexxx(s string) partitioned by (pt string);
生成的添加partition语句是
alter table partition2 add if not exists partition(pt='1');
alter table partition2 add if not exists partition(pt='2');
alter table partition2 add if not exists partition(pt='3');
运行parit_test.sql
cd到hive目录下面 bin/hive -f parit_test.sql 即可
修改表名:
ALTER TABLE table_name RENAME TO new_table_name
hive> select distinct value from src;
hive> select max(key) from src;
log日志:
目录下面的文件 conf/hive-log4j.properties
#hive.root.logger=WARN,DRFA
hive.root.logger=DEBUG,DRFA
修改log级别为debug,日志存储在下面的文件中 /tmp/tianzhao/hive.log
hive.log.dir=/tmp/${user.name}
hive.log.file=hive.log
user.name 为tianzhao
运行的过程中可以打开 hive.log文件 tail -f hive.log,在日志生成的过程中会在终端打印出来
hive命令记录:
hive每次执行的命令都会记录到当前用户主目录的 .hivehistory 文件中
tianzhao@tianzhao-VirtualBox:~$ less .hivehistory
代码在CliDriver的main函数中
final String HISTORYFILE = ".hivehistory";
String historyFile = System.getProperty("user.home") + File.separator + HISTORYFILE;
reader.setHistory(new History(new File(historyFile)));
[-count[-q] <path>]
$hadoop fs -count /history/ 目录下的文件数
(1)查看表的信息
hive> describe extended partition2;
OK
s string
pt string
Detailed Table Information Table(tableName:partition2, dbName:default, owner:tianzhao, createTime:1304566227, lastAccessTime:0, retention:0, sd:StorageDescriptor(cols:[FieldSchema(name:s, type:string, comment:null)], location:hdfs://localhost:54310/user/hive/warehouse/partition2, inputFormat:org.apache.hadoop.mapred.TextInputFormat, outputFormat:org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat, compressed:false, numBuckets:-1, serdeInfo:SerDeInfo(name:null, serializationLib:org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, parameters:{serialization.format=1}), bucketCols:[], sortCols:[], parameters:{}), partitionKeys:[FieldSchema(name:pt, type:string, comment:null)], parameters:{transient_lastDdlTime=1304566227}, viewOriginalText:null, viewExpandedText:null, tableType:MANAGED_TABLE)
Time taken: 0.054 seconds
hive> describe partition2;
OK
s string
pt string
Time taken: 0.104 seconds
hive> show functions hash;
OK
hash
Time taken: 0.062 seconds
hive> describe function hash;
OK
hash(a1, a2, ...) - Returns a hash value of the arguments
Time taken: 0.049 seconds
hive> describe function extended hash;
OK
hash(a1, a2, ...) - Returns a hash value of the arguments
Time taken: 0.05 seconds
输入数据形式:
1&&&&2&&&&4
CREATE TABLE IF NOT EXISTS rtable1 (
str1 string,
str2 string,
str3 string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'
With SERDEPROPERTIES (
"input.regex"="(\\d+)&&&&(\\d+)&&&&(\\d+)"
);
load data local inpath '/home/tianzhao/sql/data/RegexSerDe' into table rtable1;
select * from rtable1;
http://search-hadoop.com/m/WBuaH1Z4TKu1/partition+%252B++filter+%252B+udf&subj=+ANNOUNCE+Apache+Hive+0+7+0+Released
https://issues.apache.org/jira/browse/HIVE-1750
[HIVE-1609] - Support partition filtering in metastore
https://issues.apache.org/jira/browse/HIVE-1862
https://issues.apache.org/jira/browse/HIVE-1849
https://issues.apache.org/jira/browse/HIVE-1738
https://issues.apache.org/jira/browse/HIVE-1758
https://issues.apache.org/jira/browse/HIVE-1642
https://issues.apache.org/jira/browse/HIVE-1913
https://issues.apache.org/jira/browse/HIVE-1430
https://issues.apache.org/jira/browse/HIVE-1305
https://issues.apache.org/jira/browse/HIVE-1462
https://issues.apache.org/jira/browse/HIVE-1790
https://issues.apache.org/jira/browse/HIVE-1514
https://issues.apache.org/jira/browse/HIVE-1971
https://issues.apache.org/jira/browse/HIVE-1361
https://issues.apache.org/jira/browse/HIVE-138
https://issues.apache.org/jira/browse/HIVE-1835
https://issues.apache.org/jira/browse/HIVE-1815
https://issues.apache.org/jira/browse/HIVE-1943
https://issues.apache.org/jira/browse/HIVE-2056
https://issues.apache.org/jira/browse/HIVE-2028
https://issues.apache.org/jira/browse/HIVE-1918
https://issues.apache.org/jira/browse/HIVE-1803
https://issues.apache.org/jira/browse/HIVE-558
https://issues.apache.org/jira/browse/HIVE-1658
https://issues.apache.org/jira/browse/HIVE-1731
https://issues.apache.org/jira/browse/HIVE-138
https://issues.apache.org/jira/browse/HIVE-1408
在eclipse里面debug hive
未完待续
这些files也要像ADD JAR那样add吗?但是我试过,没有效果啊?
export HADOOP_HEAPSIZE=64
export HADOOP_CLIENT_OPTS="-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/tianzhao/oom.hprof"
hive启动的时候会应用上面的设置,当OOM的时候,会dump映像到oom.hprof文件,可用java的VisualVM来查看内存相关的信息
partition相关:
hive在设置的内存相对比较小(64或128等)的时候会,对partition数有限制,写了一些脚本测试partition.
for ((i=1; i<=10000; i++));
do echo "alter table tablenamexxx add partition(pt='${i}');" >> parit_test.sql;
done
建表语句
create table tablenamexxx(s string) partitioned by (pt string);
生成的添加partition语句是
alter table partition2 add if not exists partition(pt='1');
alter table partition2 add if not exists partition(pt='2');
alter table partition2 add if not exists partition(pt='3');
运行parit_test.sql
cd到hive目录下面 bin/hive -f parit_test.sql 即可
修改表名:
ALTER TABLE table_name RENAME TO new_table_name
hive> select distinct value from src;
hive> select max(key) from src;
log日志:
目录下面的文件 conf/hive-log4j.properties
#hive.root.logger=WARN,DRFA
hive.root.logger=DEBUG,DRFA
修改log级别为debug,日志存储在下面的文件中 /tmp/tianzhao/hive.log
hive.log.dir=/tmp/${user.name}
hive.log.file=hive.log
user.name 为tianzhao
运行的过程中可以打开 hive.log文件 tail -f hive.log,在日志生成的过程中会在终端打印出来
hive命令记录:
hive每次执行的命令都会记录到当前用户主目录的 .hivehistory 文件中
tianzhao@tianzhao-VirtualBox:~$ less .hivehistory
代码在CliDriver的main函数中
final String HISTORYFILE = ".hivehistory";
String historyFile = System.getProperty("user.home") + File.separator + HISTORYFILE;
reader.setHistory(new History(new File(historyFile)));
[-count[-q] <path>]
$hadoop fs -count /history/ 目录下的文件数
(1)查看表的信息
hive> describe extended partition2;
OK
s string
pt string
Detailed Table Information Table(tableName:partition2, dbName:default, owner:tianzhao, createTime:1304566227, lastAccessTime:0, retention:0, sd:StorageDescriptor(cols:[FieldSchema(name:s, type:string, comment:null)], location:hdfs://localhost:54310/user/hive/warehouse/partition2, inputFormat:org.apache.hadoop.mapred.TextInputFormat, outputFormat:org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat, compressed:false, numBuckets:-1, serdeInfo:SerDeInfo(name:null, serializationLib:org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, parameters:{serialization.format=1}), bucketCols:[], sortCols:[], parameters:{}), partitionKeys:[FieldSchema(name:pt, type:string, comment:null)], parameters:{transient_lastDdlTime=1304566227}, viewOriginalText:null, viewExpandedText:null, tableType:MANAGED_TABLE)
Time taken: 0.054 seconds
hive> describe partition2;
OK
s string
pt string
Time taken: 0.104 seconds
hive> show functions hash;
OK
hash
Time taken: 0.062 seconds
hive> describe function hash;
OK
hash(a1, a2, ...) - Returns a hash value of the arguments
Time taken: 0.049 seconds
hive> describe function extended hash;
OK
hash(a1, a2, ...) - Returns a hash value of the arguments
Time taken: 0.05 seconds
输入数据形式:
1&&&&2&&&&4
CREATE TABLE IF NOT EXISTS rtable1 (
str1 string,
str2 string,
str3 string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'
With SERDEPROPERTIES (
"input.regex"="(\\d+)&&&&(\\d+)&&&&(\\d+)"
);
load data local inpath '/home/tianzhao/sql/data/RegexSerDe' into table rtable1;
select * from rtable1;
http://search-hadoop.com/m/WBuaH1Z4TKu1/partition+%252B++filter+%252B+udf&subj=+ANNOUNCE+Apache+Hive+0+7+0+Released
https://issues.apache.org/jira/browse/HIVE-1750
[HIVE-1609] - Support partition filtering in metastore
https://issues.apache.org/jira/browse/HIVE-1862
https://issues.apache.org/jira/browse/HIVE-1849
https://issues.apache.org/jira/browse/HIVE-1738
https://issues.apache.org/jira/browse/HIVE-1758
https://issues.apache.org/jira/browse/HIVE-1642
https://issues.apache.org/jira/browse/HIVE-1913
https://issues.apache.org/jira/browse/HIVE-1430
https://issues.apache.org/jira/browse/HIVE-1305
https://issues.apache.org/jira/browse/HIVE-1462
https://issues.apache.org/jira/browse/HIVE-1790
https://issues.apache.org/jira/browse/HIVE-1514
https://issues.apache.org/jira/browse/HIVE-1971
https://issues.apache.org/jira/browse/HIVE-1361
https://issues.apache.org/jira/browse/HIVE-138
https://issues.apache.org/jira/browse/HIVE-1835
https://issues.apache.org/jira/browse/HIVE-1815
https://issues.apache.org/jira/browse/HIVE-1943
https://issues.apache.org/jira/browse/HIVE-2056
https://issues.apache.org/jira/browse/HIVE-2028
https://issues.apache.org/jira/browse/HIVE-1918
https://issues.apache.org/jira/browse/HIVE-1803
https://issues.apache.org/jira/browse/HIVE-558
https://issues.apache.org/jira/browse/HIVE-1658
https://issues.apache.org/jira/browse/HIVE-1731
https://issues.apache.org/jira/browse/HIVE-138
https://issues.apache.org/jira/browse/HIVE-1408
在eclipse里面debug hive
未完待续
评论
3 楼
kezhon
2011-09-06
bupt04406 写道
add file
这些files也要像ADD JAR那样add吗?但是我试过,没有效果啊?
2 楼
bupt04406
2011-09-06
add file
1 楼
kezhon
2011-09-06
前辈能不能请教个问题,我在使用hive写UDF时,函数需要引用外部resource中的文件,但是运行时就报
java.io.FileNotFoundException: resource/placeMap.txt (No such file or directory)。
但是在本地运行无误。
请问可以怎么解决?非常感谢!
java.io.FileNotFoundException: resource/placeMap.txt (No such file or directory)。
但是在本地运行无误。
请问可以怎么解决?非常感谢!
发表评论
-
hive rename table name
2013-09-18 14:28 2599hive rename tablename hive re ... -
hive的distribute by如何partition long型的数据
2013-08-20 10:15 2478有用户问:hive的distribute by分桶是怎么分 ... -
hive like vs rlike vs regexp
2013-04-11 18:53 11216like vs rlike vs regexp r ... -
hive sql where条件很简单,但是太多
2012-07-18 15:51 8743insert overwrite table aaaa ... -
insert into时(string->bigint)自动类型转换
2012-06-14 12:30 8281原表src: hive> desc src; ... -
通过复合结构来优化udf的调用
2012-05-11 14:07 1210select split("accba&quo ... -
RegexSerDe
2012-03-14 09:58 1551官方示例在: https://cwiki.apache.or ... -
Hive 的 OutputCommitter
2012-01-30 19:44 1820Hive 的 OutputCommitter publi ... -
hive LATERAL VIEW 行转列
2011-11-09 14:49 5452drop table lateralview; create ... -
hive complex type
2011-11-08 19:56 1369数据: 1,100|3,20|2,70|5,100 建表: ... -
hive转义字符
2011-10-25 16:41 6245CREATE TABLE escape (id STRING, ... -
hive 两个不同类型的columns进行比较
2011-09-19 13:46 3039select case when "ab1234&q ... -
lateral view
2011-09-18 04:04 0lateral view与udtf相关 -
udf 中获得 FileSystem
2011-09-14 10:28 0在udf中获得FileSystem,需要获得知道fs.defa ... -
hive union mapjoin
2011-09-09 16:29 0union union.q union2.q ... -
hive eclipse
2011-09-08 17:42 0eclipse-templates$ vi .classpat ... -
hive join filter
2011-09-07 23:05 0join16.q.out hive.optimize.ppd ... -
hive limit
2011-09-07 21:02 0limit 关键字: input4_limit.q.out ... -
hive convertMapJoin MapJoinProcessor
2011-09-06 21:17 0join25.q join26 ... -
hive hive.merge.mapfiles hive.merge.mapredfiles
2011-09-06 19:14 0HiveConf: HIVEMERGEMAPFILES ...
相关推荐
9. **Hive使用注意点** - 确保数据格式与表结构匹配。 - 优化查询,避免全表扫描和过度复杂的子查询。 - 合理使用分区,减少数据处理量。 10. **Hive优化** - 使用桶表(Bucketing)和分桶连接(Bucketed Joins...
### CDH550@hive 使用及操作说明 #### 系统介绍 ##### 总体说明 本文档旨在详细介绍CDH 5.5.0环境下Hive的使用方法及其相关操作指南。Hive是一种建立在Hadoop之上的数据仓库工具,主要用于通过SQL查询语言来处理...
### 云计算HIVE使用知识点详解 #### 一、Hive概念与特点 **Hive**是一种构建于**Hadoop**平台之上的数据仓库架构。它为数据抽取、转换与加载(ETL)提供了多种工具,并支持对存储在**Hadoop**中的大规模数据进行...
《Hive metastore 使用达梦数据库存储元数据详解》 在大数据处理领域,Hive作为一个分布式数据仓库工具,被广泛用于存储和管理大规模结构化数据。Hive的元数据是其核心组成部分,它包含了表、分区、列等信息,使得...
* 数据存储:HIVE使用Hadoop分布式文件系统(HDFS)存储数据,而传统数据库使用关系数据库管理系统(RDBMS) * 数据处理:HIVE使用MapReduce处理数据,而传统数据库使用SQL查询 * 扩展性:HIVE具有高可扩展性,可以...
2. 使用Hive命令行模式导出数据:使用`hive -e "select day_id,user,count from user_table where day_id in ('2014-03-06','2014-03-07','2014-03-08','2014-03-09','2014-03-10');"> /home/test/test.dat;`语句...
当需要使用 Oracle 数据库作为 Hive 的元数据存储时,我们需要对 Hive 进行相应的配置调整。本文档将详细介绍如何配置 Hive 以便能够利用 Oracle 数据库来管理其元数据信息。 #### 二、安装与配置流程 **1. 下载并...
3. **libthrift.jar**:Thrift库,Hive使用的RPC框架,用于跨语言通信。 4. **hadoop-common.jar** 和 **hadoop-hdfs.jar**:Hadoop的通用库和HDFS的客户端,用于与HDFS交互。 在DataGrip中配置Hive连接的步骤大致...
Hive是把一个查询转化成多个MapReduce任务,然后一个接一个执行。执行的中间结果通过对磁盘的读写来同步。然而,Presto没有使用MapReduce,它是通过一个定制的查询和执行引擎来完成的。它的所有的查询处理是在内存中...
**Hive基本概念** Hive是基于Hadoop的数据仓库工具,它可以将结构化的数据文件映射为一张数据库表,并提供SQL-like查询语言(HQL)进行数据查询、...Sentry和Kerberos的使用则进一步增强了Hive的安全性和访问控制。
8. **Hive on Tez/Spark**:Hive 2.3.9 版本中,用户可以选择使用Tez或Spark作为执行引擎,以提高查询性能,尤其是对于交互式查询。 9. **ACID特性**:从Hive 2.0开始,Hive支持事务(Transactions)、原子性...
在Hadoop生态系统中,Hive是一个基于HDFS的数据仓库工具,它允许用户使用SQL(HQL)查询和管理存储在Hadoop集群中的大数据集。然而,手动启动和停止Hive的服务,如HiveServer2和Metastore,可能会变得繁琐和耗时。...
实验报告主要涵盖了Hive的安装、配置以及基本操作,包括DDL(Data Definition Language)和DML(Data Manipulation Language)的使用,Hive与MySQL的交互,UDF(User Defined Function)的开发,以及部分调优策略的...
本文将详细讨论如何使用Java编程语言实现从Hive到HBase的快速数据导入方案。 首先,Hive是一个基于Hadoop的数据仓库工具,它可以将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,适合大规模数据的离线...
在Cloudera Manager中配置Hive使用MySQL数据库涉及多个步骤,从卸载CentOS默认MySQL到配置完毕,下面详细说明每一步的知识点。 首先,确保在添加Hive数据库前,系统中不存在先前安装的MySQL版本。使用命令rpm -qa |...
默认情况下,Hive使用内嵌的Derby数据库作为元数据库,但考虑到并发访问和性能问题,推荐使用MySQL作为元数据库。首先,我们需要安装MySQL服务器: ``` apt-get install mysql-server -y service mysql start `...
Hive使用元数据库来存储关于表的元数据信息。元数据库可以使用两种不同的实现方式: - **Derby**:Derby是一种轻量级的嵌入式数据库,主要用于测试和小型项目。Hive默认使用Derby作为元数据库。 - **MySQL**:对于...
10. **libthrift-0.9.3.jar**:Thrift库,是Facebook开源的一种跨语言的服务框架,Hive使用Thrift来提供RPC服务。 这个压缩包提供的jar文件是构建Hive JDBC连接的基础,可以用于开发应用程序,通过JDBC接口访问和...
- **创建目录**:Hive使用HDFS作为其底层存储,因此创建目录实际上是在HDFS中创建目录。 - **创建表**:使用CREATE TABLE语句创建表,可以指定列类型、分区键等。例如: ```sql CREATE TABLE pokes (id INT, name...