S3 に保存されている Parquet ファイルを参照して、Redshift で外部テーブルを作成しています。parquet ファイルは pyarrow で作成されます。SELECT * すると、「タイムスタンプ」の下に定義された外部テーブルが機能しますが、「anonymous_id」(VARCHAR) は null です。同じことが VARCHAR にも当てはまります。
CREATE EXTERNAL TABLE
propensity_identify
(anonymous_id VARCHAR(max),
timestamp timestamp without time zone)
PARTITIONED BY (loaded_at timestamp)
STORED AS PARQUET
LOCATION 's3://bucket/key'
TABLE PROPERTIES ('compression'='none', 'serialization.null.format'='')
寄木細工のスキーマは次のとおりです。
anonymousId: BYTE_ARRAY UTF8
timestamp: INT96
なぜそれが起こるのですか?STL_S3CLIENT_ERROR 言います:
S3ServiceException:HTTP/1.1 403 Forbidden,Status 403
ご助力ありがとうございます!