我在 Redshift 中创建了一个外部表,然后将一些数据添加到指定的 S3 文件夹中。我可以在 Athena 中完美地查看所有数据,但我似乎无法从 Redshift 查询它。奇怪的是 select count(*) 有效,这意味着它可以找到数据,但它实际上不能显示任何内容。我猜这是某处的一些错误配置,但我不确定是什么。
一些可能相关的东西(我匿名了一些东西):
create external schema spectrum_staging
from data catalog
database 'spectrum_db'
iam_role 'arn:aws:iam::############:role/RedshiftSpectrumRole'
create external database if not exists;
create external table spectrum_staging.errors(
id varchar(100),
error varchar(100))
stored as parquet
location 's3://mybucket/errors/';
我的样本数据存储在 s3://mybucket/errors/2018-08-27-errors.parquet
此查询有效:
db=# select count(*) from spectrum_staging.errors;
count
-------
11
(1 row)
此查询不会:
db=# select * from spectrum_staging.errors;
id | error
----+-------
(0 rows)