若要在 Java 中使用 Amazon Athena 的 JDBC 驱动程序创建表格,请按照以下步骤操作:
请确保具备管理员权限以创建表格。
确认您的 Java 代码已经正确地设置 JDBC 驱动程序和连接字符串。
以下代码示例展示如何设置 JDBC 驱动程序和连接字符串:
Class.forName("com.amazonaws.athena.jdbc.AthenaDriver");
Properties info = new java.util.Properties();
info.put("aws_credentials_provider_class",
"com.amazonaws.auth.DefaultAWSCredentialsProviderChain");
info.put("s3_staging_dir", "s3://YOUR_QUERY_RESULTS_BUCKET/");
info.put("log_path", "/var/log/athena/");
Connection conn = DriverManager.getConnection("jdbc:awsathena://athena.{REGION}.amazonaws.com:443", info);
以下代码示例展示如何为 Amazon Athena 创建用于执行 CREATE TABLE 命令的 IAM 策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"athena:CreateNamedQuery",
"athena:GetNamedQuery",
"athena:CreateWorkGroup",
"athena:StartQueryExecution",
"athena:GetQueryExecution",
"athena:GetQueryResults",
"s3:ListBucket",
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject"
],
"Resource": [
"arn:aws:athena:{REGION}:{ACCOUNT_ID}:workgroup/*",
"arn:aws:logs:{REGION}:{ACCOUNT_ID}:log-group:/aws/athena/*",
"arn:aws:s3:::athena-examples-{ACCOUNT_ID}/*",
"arn:aws:s3:::aws-athena-query-results-{ACCOUNT_ID}-{REGION}/*",
"arn:aws:s3:::aws-athena-query-results-{ACCOUNT_ID}-{REGION