我正在使用aws-java-sdk版本1.11.573调用Athena,以使用Groovy执行查询:
def queryExecutionContext = new QueryExecutionContext().withDatabase(AthenaConstants.ATHENA_DATABASE)
def resultConfiguration = new ResultConfiguration().withOutputLocation("s3://${resultBucket}")
def startQueryExecutionRequest = new StartQueryExecutionRequest()
.withQueryString(query)
.withQueryExecutionContext(queryExecutionContext)
.withResultConfiguration(resultConfiguration)
def startQueryExecutionResult = amazonAthena.startQueryExecution(startQueryExecutionRequest)
def queryExecutionId = startQueryExecutionResult.getQueryExecutionId()
def queryStatusRequest = new GetQueryExecutionRequest().withQueryExecutionId(queryExecutionId)
Awaitility.await("Athena query ${queryExecutionId}")
.pollInterval(new org.awaitility.Duration(pollingPeriod.toMillis(), TimeUnit.MILLISECONDS))
.atMost(timeout.toMillis(), TimeUnit.MILLISECONDS)
.until { hasQuerySucceeded(queryStatusRequest) }
def getQueryResultsRequest = new GetQueryResultsRequest().withQueryExecutionId(queryExecutionId)
GetQueryResultsResult getQueryResultsResult = amazonAthena.getQueryResults(getQueryResultsRequest)
List<Row> results = getQueryResultsResult.getResultSet().getRows()我希望扫描数据量,以便可以将其记录为指标,以便可以轻松地对其进行监控。
我相信用gversion2做这件事很简单,但我现在不能真正升级。
有没有人知道如何获得这个指标?
谢谢!
发布于 2021-11-12 00:08:33
Java不是推荐使用V1的方式。然而,你可以在这里参考这个非常老的例子:
https://stackoverflow.com/questions/69935304
复制相似问题