Redshift Spectrum查询返回行中的空白字段

时间:2019-10-07 19:28:04

标签: sql amazon-redshift psql amazon-redshift-spectrum

我试图在Redshift中查询一个外部表(指向包含Parquet文件的S3文件夹),但是每当我这样做时,每个字段都是空的。但是,当我在Redshift上创建本地表并从同一Parquet文件加载数据时,这些字段并不为空,并且它们具有我希望它们具有的数据。

要创建外部表,我使用以下查询:

create external schema spectrum 
from data catalog 
database 'spectrumdb' 
iam_role 'arn:aws:iam::$SOMEROLE'
create external database if not exists;

create external table spectrum.lineitem_2 (    
l_orderkey bigint , 
l_partkey bigint , 
l_suppkey bigint , 
l_linenumber bigint , 
l_quantity double precision , 
l_extendedprice double precision , 
l_discount double precision , 
l_tax double precision , 
l_returnflag char(1) , 
l_linestatus char(1) , 
l_shipdate char(10) , 
l_commitdate char(10) , 
l_receiptdate char(10) , 
l_shipinstruct char(25) , 
l_shipmode char(10) , 
l_comment varchar(44) )
stored as PARQUET
location 's3://$BUCKET/$FOLDER/'
table properties ('numRows'='405022147');

使用此查询:

select * from SPECTRUM.lineitem_2 limit 5;

我得到以下结果:

  

l_orderkey | l_partkey | l_suppkey | l_linenumber | l_quantity | l_extendedprice | l_discount | l_tax | l_returnflag | l_linestatus | l_shipdate | l_commitdate | l_receiptdate | l_shipinstruct | l_shipmode | l_comment   ------------ + ----------- + ----------- + ------------- -+ ------------ + ----------------- + ------------ + ---- --- + -------------- + -------------- + ------------ + --- ----------- + --------------- + ---------------- + ----- ------- + -----------               | | | | | | | | | | | | | | |               | | | | | | | | | | | | | | |               | | | | | | | | | | | | | | |               | | | | | | | | | | | | | | |               | | | | | | | | | | | | | | |

当我期望以下情况时:

  

l_orderkey | l_partkey | l_suppkey | l_linenumber | l_quantity | l_extendedprice | l_discount | l_tax | l_returnflag | l_linestatus | l_shipdate | l_commitdate | l_receiptdate | l_shipinstruct | l_shipmode | l_comment
  ------------ + ----------- + ----------- + ------------- -+ ------------ + ----------------- + ------------ + ---- --- + -------------- + -------------- + ------------ + --- ----------- + --------------- + ---------------------- ----- + ------------ + ------------------------------- -----     406401153 | 140024 | 477525 | 4 | 6 | 6384.12 | 0.04 | 0.02 | N | O | 1995-09-15 | 1995-09-03 | 1995-09-30 |交付人|邮件|具有讽刺意味的帐户     406401154 | 18074465 | 187005 | 1 | 12 | 17262.72 | 0.05 | 0.07 | A | F | 1994-09-19 | 1994-07-09 | 1994-10-01 |退货|空气|异常账户     406401154 | 1950973 | 938475 | 3 | 16 | 32382.08 | 0.04 | 0.01 | A | F | 1994-06-14 | 1994-08-22 | 1994-07-13 |退货|卡车|最终要求讨价还价。 PL     406401155 | 18762207 | 874747 | 1 | 19 | 24097.13 | 0.04 | 0.06 | R | F | 1992-11-14 | 1992-09-15 | 1992-12-07 |交付人|空气|乌斯特蓬松异常的存款w     406401155 | 22935297 | 1335298 | 3 | 18 | 23960.7 | 0.04 | 0.03 | R | F | 1992-09-09 | 1992-08-28 | 1992-09-22 |收集鳕鱼|空气|展开待处理,

此外,似乎Spectrum可以实际看到文件中正确的行数。似乎看不到数据。难道我做错了什么?抱歉,格式化。

编辑:我必须补充一点,几天前我能够使用相同的文件和命令来执行此操作。刚才它停止工作了。

0 个答案:

没有答案