これはなに?
Athenaでのクエリ結果のソースファイルを特定する方法。Athenaのトラブルシューティングをする際のソースファイルがおかしいのか、テーブルがおかしいのか切り分けする必要があるので、その際に利用できます。
やること
以下のAthenaの検索結果の各レコードのソースファイルを特定します。
S3に配置されているソースファイルの情報は以下のような感じです。
ソースファイルの特定
SELECT句に、 $path を指定すると、ソースファイル名を取得することでできます。
①ファイル一覧取得
テーブルの元となっているソースファイル一覧を取得します。
SELECT distinct("$path") FROM <table_name>;
②各レコードのソースファイル名を取得
通常のSELECT句と”path”を同時に指定すると、各レコードのソースファイルを取得することができます。
SELECT *,"$path" FROM <table_name>;
③特定のソースファイルのレコードのみ取得する
WHERE句でファイル名を指定することで特定のソースファイルのレコードのみ取得できます。
SELECT *,"$path" FROM <table_name> WHERE "$path" like '<ファイル名>';