在美东1创建CloudFormation Stack,使用以下地址:
https://pingfan.s3.amazonaws.com/files/Athena-Workshop.yaml
点击Next,最后进入创建过程。CloudFormation大约需要 5 分钟才能创建完成。
上面的CloudFormation将创建出来两个IAM 用户、两个Athena Workgroup和几个Athena Named Query,后面的实验会用到它们。
当然最重要的,还创建出来了一个S3桶,用于存储数据:
在美东1继续创建CloudFormation Stack,用于后面的联合查询、UDF
等实验,使用以下地址:
https://pingfan.s3.amazonaws.com/files/Athena-Federation-Workshop.yaml
一直点击Next ,直至进行创建。
在使用 Athena 查询数据集之前,我们需要将数据加载到 s3 存储桶中。
在CloudShell中运行以下命令:
accountid=$(aws sts get-caller-identity --query "Account" --output text)
aws s3 cp s3://ws-assets-prod-iad-r-iad-ed304a55c2ca1aee/9981f1a1-abdc-49b5-8387-cb01d238bb78/v1/csv/customers.csv ./customers.csv
aws s3 cp s3://ws-assets-prod-iad-r-iad-ed304a55c2ca1aee/9981f1a1-abdc-49b5-8387-cb01d238bb78/v1/csv/sales.csv ./sales.csv
aws s3 cp customers.csv s3://athena-workshop-$accountid/basics/csv/customers/customers.csv
aws s3 cp sales.csv s3://athena-workshop-$accountid/basics/csv/sales/sales.csv
aws s3 cp s3://ws-assets-prod-iad-r-iad-ed304a55c2ca1aee/9981f1a1-abdc-49b5-8387-cb01d238bb78/v1/parquet/sales.zip ./sales.zip
aws s3 cp s3://ws-assets-prod-iad-r-iad-ed304a55c2ca1aee/9981f1a1-abdc-49b5-8387-cb01d238bb78/v1/parquet/customers.zip ./customers.zip
unzip -o sales.zip
unzip -o customers.zip
aws s3 sync ./sales s3://athena-workshop-$accountid/basics/parquet/sales
aws s3 sync ./customers s3://athena-workshop-$accountid/basics/parquet/customers
echo "----- done -----"
命令完成后,数据将被加载到帐户中的 S3 存储桶中。在S3中找到被命名为athena-workshop-[ AWS 帐号] 例如 athena-workshop-12345678910的桶,单击存储桶名称,然后检查:
现在在实验中使用的数据集已加载到S3中
我们首先为Primary Athena workgroup启用 Cloudwatch Metrics,以便我们可以在运行查询后查看指标。
进入Athena页面选择Workgroups,然后单击Primary:
进行编辑:
启用将指标发送到CloudWatch,保存更改:
athena查询后的结果也要保存到S3中,为它设置一个保存位置: