提问人:RSHAP 提问时间:10/27/2023 更新时间:10/27/2023 访问量:31
Redshift Spectrum 返回 null WITHOUT 错误
Redshift Spectrum returns null WITHOUT error
问:
我正在查询红移频谱,某些字段显示为空,没有任何解释。我已经检查过了
- SVL_S3LOG
- SVL_SPECTRUM_SCAN_ERROR
- SYS_EXTERNAL_QUERY_ERROR
而且它们都是空的。
在下面的示例中,如何强制 redshift 出错,而不仅仅是返回 null?
我尝试过使用表属性,例如“data_cleansing_enabled”和相关属性。我也试过了
set spectrum_query_maxerror=0
但结果总是一样的。
CREATE EXTERNAL TABLE myschema.test (
numberfield decimal(18,3),
"timestamp" text
)
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
STORED AS TEXTFILE
location 's3://mybucket/data/'
select * from myschema.test
s3://mybucket/data/test.json 中文件的内容:
-- note numberfield has more than 3 decimal digits
{"numberfield":"98.7400000", "timestamp": "2023-01-01T20:21:40.100226269+00:00"}
在上面的文件中,“numberfield”值有 3 个十进制数字,因此返回 Null。我不确定为什么会发生这种情况 - 我本来希望它会四舍五入到 redshift 文档所述的适当位置
答: 暂无答案
评论