ヤマムギ

growing hard days.

*

Organizations対応のAWS CloudTrailのAthenaテーブルでPartition Projectionを使用しました

   


パーティション向けのAlterテーブルの定期実行が面倒だと思っていたら、Partition Projectionという機能があることを知りました。
ALTER TABLEの実行なしで、パーティションに区切ってくれるそうです。

CloudTrailのAthenaテーブル作成機能とこちらの記事【全リージョン対応】CloudTrailのログをAthenaのPartition Projectionなテーブルで作るを参考にしました。

CloudTrailからAthenaテーブル作成

CloudTrailのイベント履歴画面の[Athenaテーブルを作成]ボタンを押下しました。

CREATE EXTERNAL TABLEのDDLが生成されます。
バケットを選択すると、LOCATIONが自動設定されますが、Organizations対応になっていないので、s3://bucketname/AWSLogs/organizaiotnsid のようにOrganizationsのパスに変えました。

DDLの編集

PARTITIONED BY とTBLPROPERTIESを追加して次のDDLになりました。
パーティションは、アカウントID、リージョン、日付にしました。

テーブル作成後、パーティションを検索条件にしてクエリを実行しました。
スキャン対象のデータが絞られていました。

発生エラー

mismatched input ‘EXTERNAL’. Expecting: ‘OR’, ‘SCHEMA’, ‘TABLE’, ‘VIEW’

PARTITIONED BY行をCOMMENT行の前で実行しようとしていて上記エラーが発生しました。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

【PR】 「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

「雲勉 第1回【勉強会:新技術好き!】AWSマネージドサービス勉強会」に行ってきました

「雲勉 第1回【勉強会:新技術好き!】AWSマネージドサービス勉強会」に行ってき …

Amazon CloudSearchにAWS Lambda(Python)からデータをアップロードする

このブログはゆるっとアドベントカレンダー Advent Calendar 201 …

AWS Transit GatewayのVPN接続

上記のような構成で、オンプレミス側は東京リージョンのVPCでVyOSを起動して接 …

AWS CLIを使用したIAMロールの引き受けコマンドのメモ

よく忘れて調べるのでメモです。 公式のこちらAWS CLI を使用して IAM …

iPad ProのWorking CopyでAWS CodeCommitのリポジトリを使う

iPad Proを導入しましたので、原稿執筆や校正でフル活用しようと思いまして。 …

AWS CDKでリージョンをまたいだクロススタックリファレンスはできなかった

例えばこんなコードが実行できるかというと、 [crayon-6424e5b456 …

Amazon Data Lifecycle Manager(DLM)が東京リージョンで使えるようになったのでLambdaでAMI自動取得から乗り換えた

EBSのスナップショットを自動で作成してくれるAmazon Data Lifec …

AWS EC2 インスタンスステータスのチェックで失敗して起動しなくなり復旧

EC2のインスタンスに接続出来なくなったので、AMIから作成してElastic …

NATインスタンスを作成する

プライベートサブネットのEC2インスタンスからカスタムメトリクスとCloudWa …

Feedlyのフィードを自動でSlackへ投稿する(AWS Lambda , Amazon DynamoDB)

やりたいこと Feedlyで共有したいフィードに特定のタグを付けます。 特定のタ …