impala中常用SQL操作,建表,增加分区,增加统计信息,增加字段,修改字段信息

Posted Leo Han

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了impala中常用SQL操作,建表,增加分区,增加统计信息,增加字段,修改字段信息相关的知识,希望对你有一定的参考价值。

impala中常用SQL操作:

  • 建表并创建分区,指定存储类型
create EXTRENAL table IF NOT EXISTS  testDB.testTable(
a INT,
b BIGINT,
c STRING,
d FLOAT,
e DOUBLE,
f BOOLEAN
) PARTITIONED  BY (year INT,month INT,day INT)
stored as parquet
  • 从指定位置导入表:
CREATE table testDB.testTable(
a INT,
b BIGINT,
c STRING,
d FLOAT,
e DOUBLE,
f BOOLEAN
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE
LOCATION '/user/test/dataDir';

或者可以先建表,然后倒入:

load data inpath '/user/test/dataDir' into table  testDB.testTable;
  • select as 建表:
create  table IF NOT EXISTS  testDB.testTable as 
select a as aa ,b as bb from test.testbb
  • 查看建表语句
show create table testDB.testTable
  • 删除表
drop table if  exists  testDB.testTable
  • 给表增加字段:
alter table testDB.testTable add columns(a1 INT,a2 String)
  • 更改字段名称和类型
ALTER TABLE name CHANGE column_name new_name new_type;
  • 给表增加分区
alter table testDB.testTable ADD IF NOT EXISTS  PARTITION(year=2021,month=202105,day=20210506)
  • 删除表分区
alter table testDB.testTable drop IF EXISTS  PARTITION(year=2021,month=202105,day=20210506)
  • 查看表分区
show partitions  testDB.testTable
  • 表分区插入数据
insert overwrite testDB.testTable PARTITION(year=2021,month=202105,day=20210506)
select xxxx ... from testDB.testTable_tmp

或者可以不指定一个分区插入,这时候需指定字段

insert overwrite testDB.testTable(a,b,c) PARTITION(year=2021,month=202105,day=20210506,hour)
select a,b,c,hourDay from testDB.testTable_tmp
  • 查看字段信息
show column stats testDB.testTable
  • 增加表统计信息:
compute stats  testDB.testTable
  • 增加分区统计信息
compute incremental stats  testDB.testTable PARTITION(year=2021,month=202105,day=20210506)
  • 刷新表
refresh testDB.testTable
  • 刷新表分区
refresh  testDB.testTable  PARTITION(year=2021,month=202105,day=20210506)
  • 刷新表分区
alter table testDB.testTable recover partitions
  • 刷新元数据
INVALIDATE METADATA testDB.testTable

以上是关于impala中常用SQL操作,建表,增加分区,增加统计信息,增加字段,修改字段信息的主要内容,如果未能解决你的问题,请参考以下文章

SQL语法精讲(包括建库建表建视图查询增加删除)

Linux增加swap分区的方法

clickhouse操作(表,列,数据删除等)

LINUX增加SWAP分区---install_oracle

LINUX新建和增加SWAP分区

Hive 常用命令 | 表操作 | 分区操作 | 数据导入 | 权限处理 | 查看锁 | 解锁 | 多字符分隔符建表