AmazonS3—在impala中使用s3位置创建了表,但无法将数据放入表中

kb5ga3dv  于 2021-06-26  发布在  Impala
关注(0)|答案(1)|浏览(271)

我已经用impala创建了一个表,它使用了一个s3位置和一个分区,但是在查询时没有数据填充。我怎样才能克服这个问题?

create table t(id int, name string) partitioned by (year int)
stored as avaro
location 's3a://impala-/dir1/';
rkttyhzu

rkttyhzu1#

似乎要使用外部表:
默认情况下,impala创建一个“内部”表,impala在其中管理表的基础数据文件,并在删除表时从物理上删除数据文件。如果您指定 EXTERNAL 子句中,impala将该表视为“外部”表,其中数据文件通常在impala外部生成,并从hdfs中的原始位置进行查询,当您删除该表时,impala将数据文件保留在原位。
因此,请尝试以下方法:

CREATE EXTERNAL TABLE t(id int, name string) partitioned by (year int)
STORED AS avro
LOCATION 's3a://impala-/dir1/';

相关问题