`
yugouai
  • 浏览: 495005 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

HIVE表创建/删除/ 截断

 
阅读更多

下文只描述不常见的Hive创建|删除|截断表的用法

指定数据库创建表

如果不指定数据库,hive会把表创建在default数据库下,假设有一个hive的数据库mydb,要创建表到mydb,如下:

CREATE TABLE mydb.pokes(foo INT,bar STRING);

或者是

use mydb; --把当前数据库指向mydb
CREATE TABLE pokes(foo INT,bar STRING);

 

create-table-as-select (CTAS)

CTAS创建的表是原子性的,这意味着,该表直到所有的查询结果完成后,其他用户才可以看到完整的查询结果表。

CTAS唯一的限制是目标表,不能是一个有分区的表,也不能是外部表。

简单的方式

CREATE TABLE new_key_value_store
  AS 
SELECT (key % 1024) new_key, concat(key, value) key_value_pair FROM key_value_store;

 复杂的方式

CREATE TABLE new_key_value_store
   ROW FORMAT SERDE "org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe"
   STORED AS RCFile AS
SELECT (key % 1024) new_key, concat(key, value) key_value_pair
FROM key_value_store
SORT BY new_key, key_value_pair;

删除表

DROP TABLE table_name;
DROP TABLE IF EXISTS table_name;

删除表会移除表的元数据和数据,而HDFS上的数据,如果配置了Trash,会移到.Trash/Current目录下。

删除外部表时,表中的数据不会被删除。

 

截断表

从表或者表分区删除所有行,不指定分区,将截断表中的所有分区,也可以一次指定多个分区,截断多个分区。

TRUNCATE TABLE table_name;
TRUNCATE TABLE table_name PARTITION (dt='20080808');

 

分享到:
评论

相关推荐

    Hive Beeline连接报错:Could not open client transport with JDBC Uri: jdbc:hive2://hcmaster:10000/default

    在使用Hive的Beeline客户端进行连接时,可能会遇到错误提示"Could not open client transport with JDBC Uri: jdbc:hive2://hcmaster:10000/default"。这个错误通常意味着Beeline无法通过JDBC URL成功建立到Hive ...

    修改hive表分区名称

    `命令查看表`test`的创建语句,了解表的具体结构及数据存放的位置。通常情况下,Hive表的数据会被存储在HDFS的某个指定路径下,例如`/user/hive/radius/test`。 2. **检查分区信息**:可以通过多种方式来查看Hive表...

    cdh6.3.2升级hive至3.x后登陆HiveServer2连接失败.doc

    ### CDH 6.3.2 升级 Hive 至 3.x 后登录 HiveServer2 连接失败问题分析及解决方法 #### 一、问题背景与现象 在将 Cloudera Data Hub (CDH) 6.3.2 版本中的 Hive 升级到 3.x 版本后,用户在尝试通过 JDBC 连接到 ...

    Hive表生成工具,Hive表生成工具Hive表生成工具

    Hive表生成工具,Hive表生成工具Hive表生成工具

    hive-exec-*.jar包

    Missing Hive Execution Jar: /hive/hive1.2.1/lib/hive-exec-*.jar

    hive外部表创建

    ### Hive外部表创建详解 #### 一、引言 在大数据处理领域,Hive作为一款广泛使用的数据仓库工具,能够高效地对存储在Hadoop文件系统中的数据进行查询与管理。其中,外部表的创建是Hive使用过程中的一个重要概念。...

    Hive和Hase配置

    注意:如hive/lib下已经存在这两个文件的其他版本,建议删除后使用hbase下的相关版本。 //在/home/hadoop/hive-0.9.0/lib 下,备份两个jar包 mv hbase-0.92.0.jar hbase-0.92.0.jar.bak mv zookeeper-3.4.3....

    快捷删除hive表的工具

    然而,当面对大量不再需要的Hive表时,手动删除不仅耗时且容易出错。针对这个问题,出现了“快捷删除Hive表的工具”,它极大地简化了这一过程。 这个工具的主要特点包括: 1. **批量删除功能**:此工具允许用户...

    hive3.1.2编译.doc

    在本文中,我们将深入探讨如何在Hive 3.1.2版本中进行源码编译,以便使其兼容Spark 3.x。这个过程涉及到解决依赖冲突、修改源代码以及适应新版本的Spark和Hadoop。以下是一步步的详细步骤: 首先,确保你已经准备好...

    hive 表结构导出

    支持hive 源数据、表结构导出

    基于springboot + Hadoop + Hive 的健身馆可视化分析平台源码+数据库

    基于springboot + Hadoop + Hive 的健身馆可视化分析平台源码+数据库 整合组件: HDFS MapReduce Hive Hadoop ###性别认为锻炼的重要性占比 饼图 ...

    Hive数据导入HBase的方法.docx

    这种方法适用于数据量不大的情况(小于 4TB),通过 Hive 创建一个关联 HBase 表的表,可以将数据从 Hive 导入到 HBase 中。 首先,需要创建一个 Hive 表,关联到 HBase 表,并指定 Hive schema 到 HBase schema 的...

    hive如何去安装与配置

    在Hive CLI中,可以创建表、加载数据、执行查询等操作,验证Hive是否正常工作。例如: ```sql CREATE TABLE test_table (id INT, name STRING); LOAD DATA LOCAL INPATH '/path/to/data.txt' INTO TABLE test_table...

    spark操作hive表源码

    如`HiveExternalCatalog`用于与Hive Metastore交互,`HiveShim`处理Hive版本之间的差异,`HiveContext`是Spark与Hive交互的主要入口,它封装了创建Hive连接、解析HQL等操作。 此外,值得注意的是,由于Spark的弹性...

    SparkSQL通过Hive创建DataFrame

    SparkSQL通过Hive创建DataFrame问题分析 问题一 Caused by: org.apache.spark.sql.catalyst.analysis.NoSuchTableException: Table or view 'stu' not found in database 'default'; 分析:确实没有临时表View,...

    第7集-Hadoop环境搭建 - linux(centos7) - 安装配置hive2.1.1.pdf

    6. **HBase 1.3.6安装配置**: 可选组件,用于支持Hive读写HBase表。 #### 三、Hive 2.1.1安装配置步骤 **1. 下载与解压** 在Hadoop用户的家目录下下载并解压缩Hive 2.1.1: ```bash [hadoop@localhost ~]$ pwd...

    hive-hbase-handler-1.2.1.jar

    被编译的hive-hbase-handler-1.2.1.jar,用于在Hive中创建关联HBase表的jar,解决创建Hive关联HBase时报FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. org.apache.hadoop....

    hive客户端安装_hive客户端安装_hive_

    在Hive CLI中,你可以创建数据库、表,加载数据,执行SQL查询等操作。 七、连接Hive与Hadoop 确保Hive知道Hadoop的位置,编辑$HIVE_HOME/conf/hive-site.xml,添加以下配置: ```xml ... <name>fs.defaultFS</...

    大数据技术之Hive-03(源码).pdf

    Hive是基于Hadoop的一个数据仓库工具,它可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。本文将对Hive的核心组成、HQL语句如何转换为MR任务的源码...

    解决hive报hdfs exceeded directory item limit错误

    下面是一个示例脚本,它接受两个参数:路径和天数,然后删除该路径下10天前创建的目录,每次删除5000个目录: ```bash #!/bin/bash usage="Usage: ./cleanup.sh [path] [days]" if [ ! "$1" ]; then echo $...

Global site tag (gtag.js) - Google Analytics