私はS3にバックアップされたDynamoDBテーブルを用意しており、Dynamoがサポートしていない方法でデータに対して注文付きクエリを実行する必要があります。 Athenaは、私たちのS3バックアップをproto DW/BIツールのソースとして使う良い方法のようです。Amazon AthenaとDynamoDBバックアップの統合
これで問題がアテナ/プレストがそれを読むためには、この形式のS3格納各行にDyanmoDBバックアップが
{"Column1":{"n":"1234"},"Column2":{"n":"5678"},"Column3":{"s":"abcd"}}
これは、それが困難になるということです。
CREATE EXTERNAL TABLE test_table (
column1 struct<n:string>
)
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
これは理想的ではありません。数字は文字列と見なされます。私はファイルをダウンロードし、JSONを平坦化して別の場所にアップロードすることを検討しましたが、これは有効なJSONでもありません。ファイルの各行のみが有効なJSONです。
アテナがファイル内のデータを読み取ってフィールドタイプを正しくインポートする方法はありますか?または理想的には、Athenaが{"n": "1234"}をintにフラット化する方法がありますか?