`
aileqiang
  • 浏览: 7546 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

HIVE DDL

    博客分类:
  • hive
 
阅读更多

CREATE  [EXTERNAL ] TABLE IF NOT EXISTS XXXXXX(

     name1      String,

    cat1          String,

    alipay        String,

    gmvfee      String,

    alifee     String

)

partitioned by (pt string)

row format delimited fields terminated by '\t'

stored as sequencefile

location '/group/tFFFFsc-dev/feFFngFFFhFaDo/t_FDFXgFFmv_alFFFiapy_feEEe';

 

 说明:  

 

1 EXTERNAL  TABLE  

   创建表分表内部表和外部表 ,  差别在于创建外部表时候table之前要加关键字external,同时还要用location命令指定文件存储的路径,如果不使用locaction数据文件也会放置到hive的数据仓库里。

 这两种表在使用的区别主drop命令上,drop是hive删除表的命令,托管表执行drop命令的时候,会删除元数据和存储的数据,而外部表执行drop命令时候只删除元数据库里的数据,而不会删除存储的数据。

 

2  数据字段类型 :分为原子类型 和 负责数据类型

 原子数据类具体如下表所示:(hive不支持日期类型,在hive里日期都是用字符串来表示的,而常用的日期格式转化操作则是通过自定义函数进行操作。)

基本数据类型

类型

描述

示例

TINYINT

1个字节(8位)有符号整数

1

SMALLINT

2字节(16位)有符号整数

1

INT

4字节(32位)有符号整数

1

BIGINT

8字节(64位)有符号整数

1

FLOAT

4字节(32位)单精度浮点数

1.0

DOUBLE

8字节(64位)双精度浮点数

1.0

BOOLEAN

true/false

true

STRING

字符串

‘xia’,”xia”

 

 

复杂数据类型包括数组(ARRAY)、映射(MAP)和结构体(STRUCT),具体如下表所示:

复杂数据类型

类型

描述

示例

ARRAY

一组有序字段。字段的类型必须相同

Array(1,2)

MAP

一组无序的键/值对。键的类型必须是原子的,值可以是任何类型,同一个映射的键的类型必须相同,值得类型也必须相同

Map(‘a’,1,’b’,2)

STRUCT

一组命名的字段。字段类型可以不同

Struct(‘a’,1,1,0)

 

 

 

3 partitioned by (pt string) 

  是个虚拟的字段列,实际数据存储中不存在这个字段,而是做为基本数据目录分布的依据, 

  hive里分区的概念是根据“分区列”的值对表的数据进行粗略划分的机制,在hive存储上就体现在表的主目录(hive的表实际显示就是一个文件夹)下的一个子目录,这个文件夹的名字就是我们定义的分区列的名字,没有实际操作经验的人可能会认为分区列是表的某个字段,其实不是这样,分区列不是表里的某个字段,而是独立的列,我们根据这个列存储表的里的数据文件。使用分区是为了加快数据分区的查询速度而设计的,我们在查询某个具体分区列里的数据时候没必要进行全表扫描

   一个表可以拥有一个或者多个分区,每一个分区单独存在一个目录下。而且,表和分区都可以对某个列进行 CLUSTERED BY 操作,将若干个列放入一个桶(bucket)中。也可以利用SORT BY 对数据进行排序。这样可以为特定应用提高性能。

 

 

4    row format delimited fields terminated by '\t'      

     区分各数据列的标志字段.

   

5   stored as  

   如果文件数据是纯文本,可以使用 STORED AS TEXTFILE。如果数据需要压缩,使用 STORED AS SEQUENCE 。

 

6  location

(LOCATION),Hive 创建内部表时,会将数据移动到数据仓库指向的路径;若创建外部表,仅记录数据所在的路径,不对数据的位置做任何改变。在删除表的时候,内部表的元数据和数据会被一起删除,而外部表只删除元数据,不删除数据

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    基于 Antlr4 的 Hive SQL 解析.zip

    在本课程设计中,主题是“基于Antlr4的Hive SQL解析”,这涉及到了两个主要的技术领域:Antlr4和Hive SQL。Antlr4是一个强大的解析工具,用于生成解析器和词法分析器,它能处理各种语言的语法,包括SQL。而Hive SQL...

    hive框架简介

    详细介绍了hive框架,主要包含了以下内容: Hive架构 Hive DDL Hive DML Hive 查询 Hive 函数

    Hive教程.pdf

    #### 三、Hive DDL数据定义语法 - **创建数据库**: - `CREATE DATABASE database_name;` - **查看数据库定义**: - `DESCRIBE DATABASE EXTENDED database_name;` - **查看数据库列表**: - `SHOW DATABASES;` - *...

    大数据学习指南合集(Hadoop、Spark、Flink等)

    大数据框架组件 含Hadoop、Spark、Flink等大数据书籍 一、Hadoop   1. Hadoop——分布式文件管理系统HDFS ...  3.Hive——Hive DDL数据定义   4.Hive——Hive DML数据操作   5.Hive——Hive查询

    11-Hive-SQL语法

    HiveSQL思维导图,便捷整理思路,HiveBeeline、HiveDDL、HiveDML、Hive分区、HiveSerDe

    Hive表ddl操作.zip

    hive表ddl操作(一)

    Hive常用DDL操作.md

    Hive常用DDL操作,基础篇

    bak_hive_ddl.sh

    hive数仓databases,tables DDL语句 备份脚本,下载即可直接运行,需要运行脚本前须保证数据库已创建完成,数据库需要手动创建

    hadoop大数据平台技术与应用--第6章数据仓库Hive.pdf

    ### HiveDDL操作 Hive的数据定义语言(DDL)操作包括创建、修改、删除数据库、表、视图、索引等,类似传统数据库系统。例如,使用CREATE TABLE语句定义新表结构,使用ALTER TABLE修改表结构,以及使用DROP TABLE...

    数据仓库项目测试方法.rar

    这可能需要编写测试脚本,确保各种Hive DDL(Data Definition Language)和DML(Data Manipulation Language)语句的正确执行。同时,也要验证数据仓库的ETL(Extract, Transform, Load)过程,确保数据从源头到目标...

    大数据方向学习课程体系

    - Hive DDL数据定义语法:学习如何创建、修改和删除表等。 - Hive DML数据管理语法:掌握插入、更新和删除数据的方法。 - Hive QL数据查询语法:学习SQL-like查询语言的基础。 - Join:了解不同类型的连接操作...

    第2章 HiveSQL 数据定义语言(DDL)1

    在本章中,我们将深入探讨HiveSQL的数据定义语言(DDL),这是大数据处理领域中一个至关重要的工具。DDL主要用于创建、修改和管理数据库中的结构,包括表、分区、索引等对象。理解并熟练掌握Hive的DDL对于任何在...

    hive实验报告.docx

    实验报告主要涵盖了Hive的安装、配置以及基本操作,包括DDL(Data Definition Language)和DML(Data Manipulation Language)的使用,Hive与MySQL的交互,UDF(User Defined Function)的开发,以及部分调优策略的...

    Hive语法详解

    Hive SQL支持大多数传统关系型数据库所支持的SQL语句类型,包括DDL(Data Definition Language)、DML(Data Manipulation Language)和DQL(Data Query Language)等。此外,Hive还支持一系列内置函数和用户自定义...

    深入理解+Amazon+Athena+-+基于无服务器架构的大数据分析引擎

    - **Hive DDL 支持**:用户可以使用 Hive DDL 语句来创建、修改和删除表。 - **强大的 SQL 支持**:Athena 支持 ANSI SQL,并且能够处理复杂的联接操作、嵌套查询和窗口函数。 #### 高度可用性 为了保证高可用性和...

    hive基本操作

    hive 基本操作的命令和hive 实用命令等,有利与学习hive和mysql

    jdbc连接hive数据库的驱动jar包

    Hive JDBC驱动的使用不仅限于基本的查询操作,还可以执行DML(数据操纵语言)语句如INSERT、UPDATE和DELETE,以及DDL(数据定义语言)语句来创建或修改表结构。此外,Hive JDBC还支持事务管理和元数据查询,为Java...

    Hive语法详解.docx (排版清晰,覆盖全面,含目录)

    #### 二、DDL操作(数据定义语言) **2.1 建表操作** - **建表的三种方式**: - 直接创建新表。 - 通过LIKE语句创建新表,复制现有表的结构。 - 通过AS语句创建并填充数据。 - **创建内部表**:内部表的数据由...

Global site tag (gtag.js) - Google Analytics