hive的表及分区操作方式(一)

hive的建表方式:

方式一
create table if not exist table_name(
......
);
comment 'description of the table'
tblproperties('cretor'='me','create_at'='2012-01-02 10:00:00',...)
LOCATION '/user/hive/warehouse/mydb.db.table_name'
方式二
create  table if not exists table_name1 like table_name;

hive的插入数据的方式:

Hive的分区操作:
分区修改:
Alter table_name partition (date='201801') rename to partition(date='201802')
删除分区:
alter table login Drop if exists partition(date='201801')
添加分区:
alter table table_name add id not exists partition(date='201803') location '/user/hadoop/warhouse/table_name=dt=201803'

HIve的一些基本命令

查看表的分区  
show partitions table_name;
//查看特定分区
show partitions table_name partition(date='20200101')
//数据拷贝
hadoop distcp /data/log_message/  node01://ourbucket/logs/
//删除hdfs的数据
hadoop fs -rmr  /data/log_message/
//定义存储格式
stored as orc;
//修改列信息
alter table log_message
change columns hms hours_minutes_second INT
comment 'the hours minutes and seconnds part of the timestamp'
alter severity;
//增加列
alter table log_message add  columns(app_name String);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hive中,分区Partition)是一种将表数据按照指定的列进行逻辑划分和存储的方式。通过将数据按照某个列的值进行分区,可以提高查询效率和数据管理的灵活性。 具体来说,以下是关于Hive分区的一些概念和特点: 1. 分区列(Partition Column):分区列是表中用于进行分区的列。通常选择具有高基数(Distinct Value)的列作为分区列,以便更好地划分数据并提高查询性能。 2. 分区目录(Partition Directory):每个分区都会对应一个独立的目录,用于存储该分区的数据文件。分区目录的命名通常基于分区列的值,以便更好地组织和管理数据。 3. 动态分区(Dynamic Partition):Hive支持动态分区,在插入数据时根据数据中的列值动态创建和管理分区。这允许在插入数据时自动创建新的分区目录。 4. 静态分区(Static Partition):与动态分区相反,静态分区需要在创建表时明确地定义所有分区,并提前创建对应的分区目录。 5. 多级分区(Multi-level Partitioning):Hive还支持多级分区,即在一个表中使用多个列进行分区。这样可以更细粒度地划分数据,提供更灵活的查询和管理能力。 通过使用表分区,可以使Hive在处理大规模数据时更高效地执行查询操作。例如,当查询仅涉及特定分区时,Hive可以仅加载相关分区的数据,而不必加载整个表的数据。此外,分区还可以帮助优化数据存储和管理,以及提供更灵活的数据查询和过滤功能。 需要注意的是,在设计和使用表分区时,需要考虑数据分布的均匀性、查询模式、分区列的选择等因素,以确保最佳的性能和使用效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值