雲のメモ帳

猫とクラウドと旅行が好きなインフラエンジニアです。 日々の調べたことや興味が持ったことをこのブログにアウトプットします。

AWS CLIでS3 SELECTを実行し、S3上のファイルの中身を簡単に確認する

これはなに?

AWS S3 Selectを使って、CSVやParquetファイルの中身を確認するスクリプトを作ったので備忘録。 CLIをそのまま使うとパラメータの指定が大変なので、スクリプト化しました。利用しているAWSコマンドは、”select-object-content”。

select-object-content — AWS CLI 1.18.203 Command Reference

GUIからファイルの中身を確認する場合は以下を参照ください。

www.cloudnotes.tech

スクリプトでできること

スクリプトを実行し、S3バケット上にあるファイルの中身をクエリ、データ取得

Output Image

AWSが提供しているNYのタクシー情報が格納されたCSVをクエリした場合

f:id:ykoomaru:20201224172933p:plain

Script

gist.github.com

github.com

Usage

./s3select_cli.sh s3_bucket_name s3_object_key file_format SQL

引数 説明
第1 S3バケット名 nyc-tlc
第2 S3 キー名 misc/uber_nyc_data.csv
第3 ファイルフォーマット CSV
第4 SQL "select * from s3object limit 5"

<例>
./s3select_cli.sh nyc-tlc misc/uber_nyc_data.csv CSV "select * from s3object limit 10"

S3 SelectのSQLの書き方は以下を参照ください。
SELECT コマンド - Amazon Simple Storage Service