Him*_*dar 5 amazon-s3 amazon-web-services terraform amazon-athena
Amazon Athena 使用提交查询的用户的 IAM 凭证从输入 Amazon S3 存储桶读取数据;查询结果存储在单独的S3存储桶中。
这是 Hashicorp 网站https://www.terraform.io/docs/providers/aws/r/athena_database.html中的脚本
resource "aws_s3_bucket" "hoge" {
bucket = "hoge"
}
resource "aws_athena_database" "hoge" {
name = "database_name"
bucket = "${aws_s3_bucket.hoge.bucket}"
}
Run Code Online (Sandbox Code Playgroud)
哪里说的
bucket - (Required) Name of s3 bucket to save the results of the query execution.
Run Code Online (Sandbox Code Playgroud)
如何在 terraform 脚本中指定输入 S3 存储桶?
输入 S3 存储桶在您在数据库中创建的每个表中指定,因此,它没有全局定义。
截至目前,AWS API 没有太多用于 Athena 管理的规定,awsCLI 命令和 Terraform 也没有。没有“正确”的方法来通过这些方式创建表。
理论上,您可以创建一个命名查询来创建表,然后执行该查询(有 API 功能,但 Terraform 还没有)。对我来说这似乎有点混乱,但如果/当 TF 获得 StartQuery 功能时它可能会起作用。Athena 的异步特性使得很难知道该表何时实际创建,因此我可以想象 TF 不会直接完全支持表创建。
涵盖当前可用功能的 TF 代码位于: https: //github.com/terraform-providers/terraform-provider-aws/tree/master/aws
Athena 函数的 API doco 位于:https://docs.aws.amazon.com/athena/latest/APIReference/API_Operations.html
| 归档时间: |
|
| 查看次数: |
6382 次 |
| 最近记录: |