IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> hive的常用命令 -> 正文阅读

[大数据]hive的常用命令

hive的常用命令:

一、hive 管理表(内部表)与外部表的互相转换

1.修改外部表emp为内部表(emp为表名)

alter table emp set tblproperties ('EXTERNAL'='FALSE');

2.修改内部表emp为外部表

alter table emp set tblproperties ('EXTERNAL'='TRUE');

注意:(‘EXTERNAL’=‘TRUE’)和(‘EXTERNAL’=‘FALSE’)为固定写法,区分大小写!

二、hive的分区操作

1、删除分区

ALTER TABLE table_name DROP IF EXISTS PARTITION (dt=’2008-08-08’);
ALTER TABLE table_name DROP IF EXISTS PARTITION (dt=’2008-08-08’, country=’us’);

2、修改分区

ALTER TABLE table_name PARTITION (dt=’2008-08-08’) SET LOCATION “newlocation”;
ALTER TABLE table_name PARTITION (dt=’2008-08-08’) RENAME TO PARTITION (dt=’20080808’);

3、增加分区

alter table table_name if not exists add partition (p_hour='', p_city='', p_loctype='MHA');

三、表级别修改

1、添加列:

ALTER TABLE table_name ADD COLUMNS (col_name STRING);

注:在所有存在的列后面,但是在分区列之前添加一列

2、修改字段:

CREATE TABLE table_name (a int, b int, c int);
ALTER TABLE table_name CHANGE a a1 INT; --将 a 列的名字改为 a1.
ALTER TABLE table_name CHANGE c c1 INT FIRST;--然后将c列的名称改为c1,并将其作为第一列:
// 此时新表的结构是: 
 c1 int, b int, a int.

3、删除列示例:

原有Hive表table_name中有a,b,c,d,e这几个字段
   将从test_change中删除“d”列:
     ALTER TABLE table_name REPLACE COLUMNS (a int, b int,c string,e string);
   将d和e两列一起删除:
      ALTER TABLE table_name REPLACE COLUMNS (a int, b int,c string);
注:只有内部表管用,外部表会报错可能和版本有关

4、表重命名

ALTER TABLE table_name RENAME TO new_table_name

四、hive修改表路径

1、内部表:

? a.设置新路径

alter table table_name set location 'hdfs://cluster/hive/warehouse/test.db/table_name2

? b.移动文件地址

dfs -mv /hive/warehouse/test.db/table_name /hive/warehouse/test.db/table_name2
2、外部表
  1. 删除旧表

    drop table table_name;
    
  2. 移动文件到新位置

    dfs -mv /hive/warehouse/test.db/table_name /hive/warehouse/test.db/table_name2
    
  3. 新建新表, 并且指定路径为新地址

    create EXTERNAL table table2 (....) location '/hive/warehouse/test.db/table_name2'
    
  4. 恢复元数据

    MSCK REPAIR TABLE table2;
    
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-27 11:55:47  更:2021-08-27 11:56:35 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 16:45:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码