1.把内部表设置成外部表:
alter table table_name set TBLPROPERTIES ('EXTERNAL'='TRUE');
2.查看Hadoop的hdfs文件
hadoop fs -text | more
3.查看外部表信息
describe extended table_name
4.创建外部表
CREATE EXTERNAL TABLE IF NOT EXISTS table_name(id int,name string)
partitioned by(day string)
row format delimited fields terminated by '|';
5.加载hdfs数据到表中
alter table telno_app_times ADD IF NOT EXISTS PARTITION(day="20140317") location "/useapptimes/";
6.查看分区
show partitions tb_test;
添加分区
alter table telno_app_times ADD IF NOT EXISTS PARTITION(day="20140317")
删除分区
ALTER TABLE login DROP IF EXISTS PARTITION (dt='2008-08-08');
ALTER TABLE DROP PARTITION 来删除分区。分区的元数据和数据将被一并删除
7.加载数据到指定分区表
load data local inpath'/root/hcr/tmp/sample.txt' into table tb_test partition(ds='2013-12-06',ds2='shanghai')
8.修改表名rename to
alter table tb_records_ctas rename totb_records_2
9.增加新列
alter table tb_records_2 add columns(new_col int);
10.修改某一列的信息
ALTER TABLE tb_records_2 CHANGE COLUMN new_col col1 string;
11.数据导出
导出到本地目录
insert overwrite local directory'/root/hcr/tmp/ex_abc2.txt' select * from m_t2;
导出到hdfs目录
insert overwrite directory'/user/houchangren/tmp/m_t2' select * from m_t2;
11.1 hive 导出数据
bin/hive -e "select * from table" >> res.csv
12.用jdbc连接hive之前一定要启动hiveserver;命令:
hive -service hiveserver &
hive --service metastore -----------Startup Hive Embedded
bin/hive --service hiveserver-----------Startup Hive Standalone
13.hive部分优化
hive查询limit优化
set hive.limit.optimize. enable=true;
hive数据倾斜优化
set hive.groupby.skewindata=true;
14.采用RCFile 方式压缩历史数据。FackBook全部hive表都用RCFile存数据。
二、局部压缩方法
只需要两步:
1.创建表时指定压缩方式,默认不压缩,以下为示例:
create external table track_hist(
id bigint, url string, referer string, keyword string, type int, gu_idstring,
…/*此处省略中间部分字段*/ …, string,ext_field10 string)
partitioned by (ds string) stored as RCFile location '/data/share/track_histk' ;
2.插入数据是设定立即压缩
SET hive.exec.compress.output=true;
insert overwrite table track_histpartition(ds='2013-01-01')
select id,url, …/*此处省略中间部分字段*/ …, ext_field10 fromtrackinfo
where ds='2013-01-01';
分享到:
相关推荐
hive 常用命令大全,包含分区域表、函数,常用命令等
### Hive常用命令详解 #### 创建外部表(分区表) 在Hive中,创建外部表时通常会使用`CREATE EXTERNAL TABLE`语句。这有助于在Hive与HDFS之间建立良好的解耦关系,使得即使Hive表被删除,其对应的数据仍然保留在...
### Hive 常用命令总结 #### 创建外部表 创建一个名为`hbase_gpsinfo`的外部表,存储方式采用`HBaseStorageHandler`,并将键值对映射设置为`key`和`i:c`。 ```sql CREATE EXTERNAL TABLE hbase_gpsinfo (key STRING...
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的 sql查询功能,可以将sql语句转换 为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL 语句快速实现简单的...
3. 导入数据到`stocks`表,这是通过LOAD DATA命令实现的,将csv文件的数据加载到Hive表中。 4. 创建未分区的外部表`dividends_unpartitioned`,然后从csv文件导入数据。外部表的元数据由Hive管理,但数据本身的位置...
hive常用命令及用法
hive常用命令 1、进入hive数据库:hive 2、查看hive中的所有数据库:show databases; 3、用default数据库:use default; 4、查看所有的表:show tables; 5、查询表结构:desc mytest(表名); 6、查询表数据: ...
Hive 常用的 SQL 命令操作 Hive 是一个基于 Hadoop 的数据仓储工具,提供了类似于 MySQL 的 SQL 查询语言,支持各种复杂的数据操作。下面是 Hive 中常用的 SQL 命令操作。 1. 查看所有函数 Hive 提供了很多的函数...
#### 五、Hive常用命令 1. **查看所有表**:`SHOW TABLES;` 2. **模糊查询表**:`SHOW TABLES 'FCT_*';` 3. **查看表的分区**:`SHOW PARTITIONS table;` 4. **查看表结构**:`DESCRIBE (FORMATTED/EXTENDED) table...
一、Hive常用操作 1. **查看数据库列表**:可以使用`SHOW DATABASES;`命令来查看Hive中现有的所有数据库。 2. **查看数据表列表**:`SHOW TABLES [LIKE '*name*'];`用于列出特定数据库或所有数据库中的表。 3. **...
### HIVE常用函数参考手册知识点概述 #### 一、函数分类 Hive中的函数可以根据其功能和作用范围分为几大类: 1. **简单函数**:这类函数通常针对单条记录进行操作,如数学运算、逻辑运算等。 2. **聚合函数**:...
Hive 教程--命令 Hive 是一种数据库技术,可以定义数据库和表来分析结构化数据。主题结构化数据分析是以表方式存储数据,并通过查询来分析。 创建数据库 创建数据库是 Hive 中最基本的操作之一。Hive 中的数据库...
使用这些jar包时,开发者通常会将它们添加到项目的类路径中,或者在运行Hive命令时通过`-libjars`选项指定。在Hive on Spark模式下,还需要包含Spark的相关jar包。此外,如果涉及到数据集成,可能还需要与Hive连接的...
从提供的文件内容中,我们可以提取到关于Hive安装与配置的相关知识点,同时也包括了MySQL的安装知识,因为MySQL是Hive常用的后端数据库。接下来,我将详细介绍这些知识点。 **Hive的安装与配置** 1. Hive是一个...
其中,CLI是最常用的交互方式,它在启动时会自动启动一个Hive服务副本;而Client则是指Hive的Java客户端API,通过该API可以直接在应用程序中执行Hive SQL;WUI则提供了基于Web的用户界面,方便用户远程访问和管理...
标题提到的"show create table 表名"是Hive的一个常用命令,用于展示创建特定表的原始SQL语句。这对于理解和复制表结构非常有帮助。然而,描述中提到的“hive中文乱码”问题,是一个常见的困扰,尤其是在处理包含...
以下是 Hive Shell 的常用命令行选项: - `-i`: 从指定的文件初始化 HiveQL 语句。 - `-e`: 直接在命令行中执行 HiveQL 语句。 - `-f`: 从指定的文件中读取并执行 HiveQL 脚本。 - `-v`: 显示执行的 HiveQL 语句。 ...