美文网首页大数据
Hive【基础01】| Hive命令行数据库和表操作

Hive【基础01】| Hive命令行数据库和表操作

作者: Ada54 | 来源:发表于2019-02-20 16:20 被阅读0次

一、数据库操作

1. 显示所有数据库

2. 查看数据库信息

3. 新增数据库

4. 显示出当前使用的数据库

5. 切换当前数据库

6. 删除数据库

二、表操作

1. 显示当前数据库中所有的表

2. 新增表 - 直接建表 - 查询建表 - Like 建表

3. 查询表结构信息

4. 加载数据

5. 删除表

(注:使用命令行时,每次操作语句都要以 ; 结尾)


一、数据库操作

1. 显示所有数据库

     模糊查找数据库

2. 查看数据库信息

   查看在 hdfs 上数据库的位置和读写权限

3. 新增数据库

4. 显示出当前使用的数据库

5. 切换当前数据库

6. 删除数据库

    数据库中若有表,则不能删除

    若想删除,使用命令:drop database if exists testdb1 cascade;

    注:hive中是不能对数据库进行修改的,数据库的名称或存储路径都不能修改

二、表操作(updating)

1. 显示当前数据库中所有的表

2. 新增表

- 直接建表

- 查询建表

- Like 建表

(1) 直接建表

    语法  ( “  []  ” 为可选,“ | ” 为二选一 )

    CREATE  [TEMPORARY] [EXTERNAL]  TABLE  [IF NOT EXISTS] [db_name.]      

    table_name 

    [  (col_name   data_type [ COMMENT col_comment ], ...]   // COMMENT 备注字段

    [  COMMENT table_comment  ]  

    [  PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)  ]

    // PARTITIONED 分区,表中的一个 Partition 对应于表下的一个目录

    // 辅助查询,缩小查询范围,加快数据的检索速度

    [  CLUSTERED BY (col_name, col_name, ...) [SORTED BY (col_name [ASC|DESC], ...)

    ]   INTO num_buckets BUCKETS ]

    // CLUSTERED 分桶,将一个列名下的数据切分为一组桶

    [ SKEWED BY (col_name, col_name, ...)    

    ON ((col_value, col_value, ...), (col_value, col_value, ...), ...)

    [ STORED AS DIRECTORIES ]

    // SKEWED 倾斜的列名和值, 记录这些倾斜的列名和值,在join时能够进行优化

    // STORED AS DIRECTORIES 可选,它指定了使用列表桶

    [

       [ ROW FORMAT row_format] DELIMITED

          // 指明文件的间隔符          

            [ FIELDS TERMINATED BY char ]   // 列分割,一般用 ‘ \t ’        

            [ COLLECTION ITEMS TERMINATED BY char ]  // 集合      

            [ MAP KEYS TERMINATED BY char ]  // 键值对

            [ LINES TERMINATED BY char ]   // 行分割,用 ‘ \n ’

       [ STORED AS file_format]  //表数据的存储格式,默认为 textfile

          | STORED BY 'storage.handler.class.name' [WITH SERDEPROPERTIES (...)]

    ]

   [ LOCATION hdfs_path ]  //  可定义表存储的位置

   [ TBLPROPERTIES (property_name=property_value, ...)]   // 可定义表的属性,表的创建 者、创建时间等

   [ AS select_statement]; 

   1)新增内部表

  2)新增外部表

在建表时添加  external 修饰

内部表和外部表的区别:

- 内部表数据由Hive自身管理,外部表数据由HDFS管理

- 删除内部表,会删除元数据库中的元数据和hdfs上的数据

  删除外部表,只删除元数据中的元数据

注:建议使用外部表,但如果文件权限配置合理,内部表外部表无所谓,可以通过hive+sentry来给不同用户配置权限

3. 查询表结构信息

    desc table_name;

    desc extended table_name;

    desc formatted table_name;

(2)查询建表

(3)Like 建表

4. 加载数据

step1:准备数据

根据 t1 表结构,在 /opt/data/hivedatas 目录下创建文件 t1.txt

填写以下信息:

1   王五   看书-看电影-编程   北京:朝阳区

2   牛六   看书-编程   台湾:台北

3   赵七   听音乐-看书   福建:宁德

step2:装载数据

之前使用 MySQL,我们用 insert 语句插入数据

在Hive中,因为需要装载大量数据,一般使用 load data 语句插入数据

加载数据有两种方法:一种是从本地文件系统,第二种是从Hadoop文件系统

语法

LOAD  DATA  [LOCAL]  INPATH  'filepath'  [OVERWRITE]  INTO TABLE  tablename

[ PARTITION (partcol1=val1, partcol2=val2 ...) ]

// LOCAL 指定本地路径,不写则为hdfs的文件

// OVERWRITE  覆盖表中的数据,不写则不会覆盖

// PARTITION  指定分区,可选

5. 删除表

参考链接:https://blog.csdn.net/u010708577/article/details/79158358

                  https://blog.csdn.net/l1028386804/article/details/80547441

                  实战例子:https://blog.csdn.net/qq_41934990/article/details/81903963

                                    https://blog.csdn.net/Thomson617/article/details/83212338

相关文章

  • hive基础语法

    目录 Hive安装和启动 Hive表操作-分区表 Hive表操作-复杂类型操作 Hive 查询语句 Zepplin...

  • Hive DDL

    Hive 库操作 创建数据库 删除数据库 修改数据库信息 数据库信息 Hive 表操作 内部表又称管理表。 Hiv...

  • Hive数据库连接操作雷区

    基础操作测试 首先准备两张表收入表 hive_join_gaap_test 和 信息表 hive_join_pl_...

  • Hive 基本操作

    数据库基本操作 ( 和MySQL脚本相似 ): 创建删除库操作 创建删除表操作 hive 特点 Hive不支持修改...

  • Hive wordcount

    一 使用Hive CLI (old)命令行工具操作HiveQL 进入hive cli 创建统计表 导入数据 可...

  • Hive【基础01】| Hive命令行数据库和表操作

    一、数据库操作 1. 显示所有数据库 2. 查看数据库信息 3. 新增数据库 4. 显示出当前使用的数据库 5....

  • hive内部表与外部表

    hive内部表与外部表 hive的内部表与外部表之间的区别 传统数据库和hive之间的区别 传统数据库对表的验证是...

  • Hive框架基础(二)

    * Hive框架基础(二) 我们继续讨论hive框架 * Hive的外部表与内部表 内部表:hive默认创建的是内...

  • 数仓--Hive-面试之Hive内外表的区分方法及内外部差异

    Hive内外部区分方法 查看hive元数据:进入mysql中hive元数据库,查看TBLS表,查看对应的表名和表类...

  • HIVE

    基本操作 hive进入hive模式 exit; 退出hive模式 展示正则匹配表名hive> use ad_s...

网友评论

    本文标题:Hive【基础01】| Hive命令行数据库和表操作

    本文链接:https://www.haomeiwen.com/subject/eedhyqtx.html