码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Hive学习笔记——数据类型及DDL数据定义


    目录

    一、Hive数据类型

    1、基本数据类型

    2、集合数据类型

    3、类型转换

    二、DDL数据定义

    1、创建数据库

    2、查询数据库

    2.1 显示数据库

    2.2 显示数据库的详细信息

    3、修改数据库(一般不用)

    4、删除数据库

    5、创建表

    5.1 内部表(管理表) 

    5.2 外部表

    5.3 内部表和外部表的相互转换

    6、查看表

    7、修改表

    7.1 重命名表

    7.2 增加、修改和删除表分区

    7.3 增加/修改/替换列信息

    8、删除表


    一、Hive数据类型

    1、基本数据类型

    2、集合数据类型

    案例实操:

     

    注意:

    1、对于字段解释的说明:列分隔符就是将by后面指定的符号去分割数据;数据分割符号就是将数组(STRUCT和ARRAY中的数据进行分割),而MAP中每一组数据的kv还需要再进行拆分,就使用第三个分隔符;行分隔符就是一行一行进行解析(默认就是按行,因此可以不写)

    2、insert是一条条插入进表,但大数据数据量大,因此我们一般不采用insert的方法,而是将数据提前准备好,然后直接加载到表里去

    3、表的数据要用txt文件放在之前创建好的datas中(便于管理),加载入表有两种方法:

    第一种:创建表的时候系统会在HDFS形成数据和表的一个映射,只需要将该文件上传到HDFS的/user/hive/warehouse/xxx表中这个文件夹即可(建议使用该种方法)

    第二种:使用load data local inpath '/opt/module/hive-3.1.2/datas/test.txt' into table test即可;

    4、删除表:drop table xxx; 

    结果: 

    1. select name,friends[0],childrens['xiao song'],address.street from test2;
    2. +-----------+-----------+-------+----------------+
    3. | name | _c1 | _c2 | street |
    4. +-----------+-----------+-------+----------------+
    5. | songsong | bingbing | 18 | hui long guan |
    6. | yangyang | caicai | NULL | chao yang |
    7. +-----------+-----------+-------+----------------+
    8. 2 rows selected (0.156 seconds)
    9. //数组通过下标访问,map通过key来访问,结构体通过属性访问

    3、类型转换

    二、DDL数据定义

    1、创建数据库

     COMMENT xxx是对该数据库自定义的一个描述

    2、查询数据库

    2.1 显示数据库

    2.2 显示数据库的详细信息

     extend可以查看到创建的时间等额外信息

    注意:在默认的default库下创建的表会直接放在warehouse目录下,而其他创建的库也会直接放在该目录下(这并不是代表是在default下再创建一个库) ,在HDFS中库会自带一个.db后缀来区分库和表(我们自己可以使用上面创建表的LOCATION来更改存储在HDFS的位置)

    3、修改数据库(一般不用)

    大部分的信息都不能修改,只能更改一些无关紧要的,因此只需要了解一下就行 

    4、删除数据库

    5、创建表

    注意:

    表的默认存储位置是在当前库这个目录中,但是我们可以使用LOCATION使其存储位置发生改变。(但是它仍然是属于该库的表,不会因为存储位置改变而改变)

    5.1 内部表(管理表) 

    5.2 外部表

    5.3 内部表和外部表的相互转换

    6、查看表

    show tables;(查看有哪些表)

    desc test1;(查看表的部分具体信息,比如字段等)

    desc formatted test1;(查看表的全部信息)

    7、修改表

    7.1 重命名表

    7.2 增加、修改和删除表分区

    在之后讲表分区的时候再进行说明

    7.3 增加/修改/替换列信息

    注意:

    1、修改列的类型的时候要注意更改后列的类型要比原来的类型大或相等,不然无法更改

    2、增加列的时候如果数据没有后面的内容就会赋值为空,同样如果数据的内容比表的列更多也只会读取到能匹配的内容

    8、删除表

    drop table dept;

     

  • 相关阅读:
    Vue提升:理解vue中的 slot-scope=“scope“
    sklearn【Accuracy】准确度介绍和案例学习!
    使用java.util.Timer实现定时任务,详解Thread.sleep() in a loop, probably busy-waiting问题
    让AI拥有人类的价值观,和让AI拥有人类智能同样重要
    树模型(2)随机森林
    江苏服务器有哪些特点
    红外花青素荧光染料Cy7-PEG-RGD RGD-PEG-Cyanine 7 EG-Cy7-RGD 环肽iRGD聚乙二醇花菁Cy7/Cy5/Cy3.5
    MIT6.824-lab2A-leader选举(leader election)
    如何测试 esp-matter_example_light 例程
    大数据开发-Hadoop伪集群搭建
  • 原文地址:https://blog.csdn.net/qq_64557330/article/details/126132522
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号