hive练习作业1

本文详细介绍了在Linux环境下如何关闭防火墙和禁止其自启动,以及修改IP地址的步骤。接着,讨论了Hive中的复杂数据类型如struct、map和array,并给出了创建表的完整语法。此外,还阐述了Hive内部表与外部表的区别,以及如何清空表数据。最后,对比了静态分区表和动态分区表的差异,并列举了Hive严格模式下的查询限制。
摘要由CSDN通过智能技术生成

1.关闭防火墙应该如何操作?
首先,切换到root用户
su - root
然后,关闭防火墙和禁止防火墙自启动
systemctl stop firewalld.service
systemctl disable firewalld.service

2.修改IP时,需要更改哪个文件?
vim /etc/sysconfig/network-scripts/ifcfg-ens33
第四行修改为BOOTPROTO=“static”

3.hive中复杂的数据类型有哪些?
struct,map,array

4.尝试写出hive中创建表的完整语法

create [external] table if not exists 表名
(列名 数据类型 [comment 本列注释],...)
[comment 表注释]
[partitioned by (列名 数据类型 [comment 本列注释],...)]
[clustered by(列名,列名,...)]
[sorted by (列名 [asc|desc],...)] info num_buckets buckets]
[row format row_format]
[stored as file_format]
[location hdfs_path]
[tblproperties (property_name=property_value,...)]
[as select_statement]

说明:
①external表示创建外部表;hive在创建内部表时,会将数据移动到数据仓库指向的路径;若创建外部表,
仅记录数据所在的路径,不对数据的位置做任何改变
②partitioned by表示创建分区表
③clustered by创建分桶表
④sorted by 不常用
⑤row format delimited [fields terminated by char] [collection items terminated
by char] [map keys terminated by char] [line terminated by char]
⑥stored as 指定文件存储类型(sequencefile二进制文件、textfile文本文件、rcfile列式存储格式)
⑦location 指定表在hdfs上的存储位置
⑧like 允许用户复制现有的表结构,但是不复制数据
⑨as 后跟查询语句,根据查询结果创建表

5.内部表和外部表的区别
目前所创建的表都是所谓的管理表,有时也被称为内部表,因为这种表,Hive会(或多或少地)控制着数据的生命周期。当删除一个管理表时,Hive也会删除这个表中数据,管理表不方便和其他工作共享数据。

  1. 用关键字external说明
  2. 指定外部表存放的数据的路径
  3. 如果不指定外部表的存放路径,Hive将在HDFS上的/user/hive/warehouse文件夹下以外部表名创建
    一个文件夹,并且将属于这个表的数据都存放在这里
  4. 删除一个外部表时,只会删除表的元数据信息,而不会删除数据。
  5. 在生产中一般创建外部表来存储数据

6.如何清除hive表中的数据
truncate table 表名;

7.静态分区表和动态分区表有什么区别?
静态分区与动态分区的主要区别在于静态分区是手动指定,而动态分区是通过数据来进行判判断;
静态分区的列是在编译时期,通过用户传递列名来指定的;动态分区只有在SQL执行时才能决定。

8.hive的严格模式限制了哪几种查询
1)对于分区表,where后面要含有分区过滤条件;
2)对于使用order by 语句的查询,要求必须使用limit进行限制查询;
3)限制笛卡尔积的查询

9.如何将HDFS中的数据导入到hive表中

load data inpath 'HDFS上的路径' into table 表名 [partition(partcol1=val1,....)];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值