我正在尝试使用存储在hdfs中的文件创建配置单元orc表。
我有一个表“partsupp.tbl”文件,其中每行具有以下格式:
1|25002|8076|993.49|ven ideas. quickly even packages print. pending multipliers must have to are fluff|
我创建一个配置单元表,如下所示:
create table if not exists partsupp (PS_PARTKEY BIGINT,
PS_SUPPKEY BIGINT,
PS_AVAILQTY INT,
PS_SUPPLYCOST DOUBLE,
PS_COMMENT STRING)
STORED AS ORC TBLPROPERTIES ("orc.compress"="SNAPPY")
;
现在我试图像这样在表的.tbl文件中加载数据:
LOAD DATA LOCAL INPATH '/tables/partsupp/partsupp.tbl' INTO TABLE partsupp
但我得到这个问题:
No files matching path file:/tables/partsupp/partsupp.tbl
但是文件存在于hdfs中...
最佳答案
LOCAL
表示该文件存在于本地文件系统上。如果省略“LOCAL”,则它将在HDFS中查找文件。
因此,在这种情况下,请使用以下查询:
LOAD DATA INPATH '/tables/partsupp/partsupp.tbl' INTO TABLE partsupp