直接Copy文件
create table new_table like table_name;
hdfs dfs -get /apps/hive/warehouse/ods.db/table_name
load data local inpath '/路径' into table new_table;
修复表:
msck repair table table_name;
分析表
analyze table table_name compute statistics;
--新增字段
alter table add columns (filed1 data_type,filed2 data_type) cascade;
--修改字段
alter table change column filed_name new_filed_name data_type
--删除字段
--如果想删除最后一个字段column_2
create table table_name (
column_1 string,
column_2 int);
--删除column_2
alter table table_name replace columns(
column_1 string) cascade; --column_2不写,即删除column_2,保留column_1
NOTE :
CASCADE会刷历史分区字段。
说明:
cascade
【注:中文翻译为“级联”】关键字,不仅会变更新分区的表结构(metadata),同时也会变更旧分区的表结构。cascade
,否则其历史分区的元数据(metadata)信息将无法正常更新,可能会出现访问历史分区时数据为NULL等问题。hdfs dfs -ls /apps/hive/warehouse/edw.db/table_name/ | wc -l
hdfs dfs -count /apps/hive/warehouse/edw.db/table_name
第一个数值表示目录下的文件夹的个数,
第二个数值表是当前文件夹下文件的个数,
第三个数值表示该文件夹下文件所占的空间大小,这个大小是不计算副本的个数的。