Há mais AWS SDK exemplos disponíveis no GitHub repositório AWS Doc SDK Examples
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Exemplos de Athena usando AWS CLI
Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface with Athena.
Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, é possível ver as ações no contexto em seus cenários relacionados.
Cada exemplo inclui um link para o código-fonte completo, onde você pode encontrar instruções sobre como configurar e executar o código no contexto.
Tópicos
Ações
O código de exemplo a seguir mostra como usar batch-get-named-query
.
- AWS CLI
-
Para retornar informações sobre mais de uma consulta
O
batch-get-named-query
exemplo a seguir retorna informações sobre as consultas nomeadas que têm o especificadoIDs.aws athena batch-get-named-query \ --named-query-ids
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
a1b2c3d4-5678-90ab-cdef-EXAMPLE22222
a1b2c3d4-5678-90ab-cdef-EXAMPLE33333
Saída:
{ "NamedQueries": [ { "Name": "Flights Select Query", "Description": "Sample query to get the top 10 airports with the most number of departures since 2000", "Database": "sampledb", "QueryString": "SELECT origin, count(*) AS total_departures\nFROM\nflights_parquet\nWHERE year >= '2000'\nGROUP BY origin\nORDER BY total_departures DESC\nLIMIT 10;", "NamedQueryId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "WorkGroup": "primary" }, { "Name": "Load flights table partitions", "Description": "Sample query to load flights table partitions using MSCK REPAIR TABLE statement", "Database": "sampledb", "QueryString": "MSCK REPAIR TABLE flights_parquet;", "NamedQueryId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "WorkGroup": "primary" }, { "Name": "CloudFront Select Query", "Description": "Sample query to view requests per operating system during a particular time frame", "Database": "sampledb", "QueryString": "SELECT os, COUNT(*) count FROM cloudfront_logs WHERE date BETWEEN date '2014-07-05' AND date '2014-08-05' GROUP BY os;", "NamedQueryId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "WorkGroup": "primary" } ], "UnprocessedNamedQueryIds": [] }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte BatchGetNamedQuery
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar batch-get-query-execution
.
- AWS CLI
-
Para retornar informações sobre uma ou mais execuções de consulta
O
batch-get-query-execution
exemplo a seguir retorna informações de execução da consulta para as consultas que têm a consulta IDs especificada.aws athena batch-get-query-execution \ --query-execution-ids
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
a1b2c3d4-5678-90ab-cdef-EXAMPLE22222
Saída:
{ "QueryExecutions": [ { "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Query": "create database if not exists webdata", "StatementType": "DDL", "ResultConfiguration": { "OutputLocation": "s3://awsdoc-example-bucket/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111.txt" }, "QueryExecutionContext": {}, "Status": { "State": "SUCCEEDED", "SubmissionDateTime": 1593470720.592, "CompletionDateTime": 1593470720.902 }, "Statistics": { "EngineExecutionTimeInMillis": 232, "DataScannedInBytes": 0, "TotalExecutionTimeInMillis": 310, "ResultConfiguration": { "QueryQueueTimeInMillis": 50, "ServiceProcessingTimeInMillis": 28 }, "WorkGroup": "AthenaAdmin" }, { "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "Query": "select date, location, browser, uri, status from cloudfront_logs where method = 'GET' and status = 200 and location like 'SFO%' limit 10", "StatementType": "DML", "ResultConfiguration": { "OutputLocation": "s3://awsdoc-example-bucket/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222.csv" }, "QueryExecutionContext": { "Database": "mydatabase", "Catalog": "awsdatacatalog" }, "Status": { "State": "SUCCEEDED", "SubmissionDateTime": 1593469842.665, "CompletionDateTime": 1593469846.486 }, "Statistics": { "EngineExecutionTimeInMillis": 3600, "DataScannedInBytes": 203089, "TotalExecutionTimeInMillis": 3821, "QueryQueueTimeInMillis": 267, "QueryPlanningTimeInMillis": 1175 }, "WorkGroup": "AthenaAdmin" } ], "UnprocessedQueryExecutionIds": [] }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte BatchGetQueryExecution
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar create-data-catalog
.
- AWS CLI
-
Para criar um catálogo de dados
O
create-data-catalog
exemplo a seguir cria o catálogodynamo_db_catalog
de dados.aws athena create-data-catalog \ --name
dynamo_db_catalog
\ --typeLAMBDA
\ --description"DynamoDB Catalog"
\ --parametersfunction=arn:aws:lambda:us-west-2:111122223333:function:dynamo_db_lambda
Este comando não produz saída. Para ver o resultado, use
aws athena get-data-catalog --name dynamo_db_catalog
.Para obter mais informações, consulte Registro de um catálogo: create-data-catalog no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte CreateDataCatalog
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar create-named-query
.
- AWS CLI
-
Para criar uma consulta nomeada
O
create-named-query
exemplo a seguir cria uma consulta salva noAthenaAdmin
grupo de trabalho que consulta aflights_parquet
tabela de voos de Seattle para Nova York em janeiro de 2016, cuja partida e chegada foram atrasadas em mais de dez minutos. Como os valores do código do aeroporto na tabela são cadeias de caracteres que incluem aspas duplas (por exemplo, "SEA“), eles são escapados por barras invertidas e cercados por aspas simples.aws athena create-named-query \ --name
"SEA to JFK delayed flights Jan 2016"
\ --description"Both arrival and departure delayed more than 10 minutes."
\ --databasesampledb
\ --query-string "SELECT flightdate, carrier, flightnum, origin, dest, depdelayminutes, arrdelayminutes FROM sampledb.flights_parquet WHERE yr = 2016 AND month = 1 AND origin = '\"SEA\"' AND dest = '\"JFK\"' AND depdelayminutes > 10 AND arrdelayminutes > 10" \ --work-groupAthenaAdmin
Saída:
{ "NamedQueryId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte CreateNamedQuery
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar create-work-group
.
- AWS CLI
-
Para criar um grupo de trabalho
O
create-work-group
exemplo a seguir cria um grupo de trabalho chamadoData_Analyst_Group
que tem o locals3://awsdoc-example-bucket
de saída dos resultados da consulta. O comando cria um grupo de trabalho que substitui as configurações do cliente, o que inclui o local de saída dos resultados da consulta. O comando também ativa CloudWatch métricas e adiciona três pares de tags de valores-chave ao grupo de trabalho para diferenciá-lo de outros grupos de trabalho. Observe que o--configuration
argumento não tem espaços antes das vírgulas que separam suas opções.aws athena create-work-group \ --name
Data_Analyst_Group
\ --configuration ResultConfiguration={OutputLocation="s3://awsdoc-example-bucket"},EnforceWorkGroupConfiguration="true",PublishCloudWatchMetricsEnabled="true" \ --description"Workgroup for data analysts"
\ --tagsKey=Division,Value=West
Key=Location,Value=Seattle
Key=Team,Value="Big Data"Este comando não produz saída. Para ver os resultados, use
aws athena get-work-group --work-group Data_Analyst_Group
.Para obter mais informações, consulte Gerenciamento de grupos de trabalho no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte CreateWorkGroup
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar delete-data-catalog
.
- AWS CLI
-
Para excluir um catálogo de dados
O
delete-data-catalog
exemplo a seguir exclui o catálogoUnusedDataCatalog
de dados.aws athena delete-data-catalog \ --name
UnusedDataCatalog
Este comando não produz saída.
Para obter mais informações, consulte Excluindo um catálogo: delete-data-catalog no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte DeleteDataCatalog
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar delete-named-query
.
- AWS CLI
-
Para excluir uma consulta nomeada
O
delete-named-query
exemplo a seguir exclui a consulta nomeada que tem o ID especificado.aws athena delete-named-query \ --named-query-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Este comando não produz saída.
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte DeleteNamedQuery
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar delete-work-group
.
- AWS CLI
-
Para excluir um grupo de trabalho
O
delete-work-group
exemplo a seguir exclui o grupo deTeamB
trabalho.aws athena delete-work-group \ --work-group
TeamB
Este comando não produz saída. Para confirmar a exclusão, use
aws athena list-work-groups
.Para obter mais informações, consulte Gerenciamento de grupos de trabalho no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte DeleteWorkGroup
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-data-catalog
.
- AWS CLI
-
Para retornar informações sobre um catálogo de dados
O
get-data-catalog
exemplo a seguir retorna informações sobre o catálogodynamo_db_catalog
de dados.aws athena get-data-catalog \ --name
dynamo_db_catalog
Saída:
{ "DataCatalog": { "Name": "dynamo_db_catalog", "Description": "DynamoDB Catalog", "Type": "LAMBDA", "Parameters": { "catalog": "dynamo_db_catalog", "metadata-function": "arn:aws:lambda:us-west-2:111122223333:function:dynamo_db_lambda", "record-function": "arn:aws:lambda:us-west-2:111122223333:function:dynamo_db_lambda" } } }
Para obter mais informações, consulte Exibindo detalhes do catálogo: get-data-catalog no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte GetDataCatalog
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-database
.
- AWS CLI
-
Para retornar informações sobre um banco de dados em um catálogo de dados
O
get-database
exemplo a seguir retorna informações sobre osampledb
banco de dados no catálogoAwsDataCatalog
de dados.aws athena get-database \ --catalog-name
AwsDataCatalog
\ --database-namesampledb
Saída:
{ "Database": { "Name": "sampledb", "Description": "Sample database", "Parameters": { "CreatedBy": "Athena", "EXTERNAL": "TRUE" } } }
Para obter mais informações, consulte Mostrando detalhes do banco de dados: get-database no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte GetDatabase
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-named-query
.
- AWS CLI
-
Para retornar uma consulta nomeada
O
get-named-query
exemplo a seguir retorna informações sobre a consulta que tem o ID especificado.aws athena get-named-query \ --named-query-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Saída:
{ "NamedQuery": { "Name": "CloudFront Logs - SFO", "Description": "Shows successful GET request data for SFO", "Database": "default", "QueryString": "select date, location, browser, uri, status from cloudfront_logs where method = 'GET' and status = 200 and location like 'SFO%' limit 10", "NamedQueryId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "WorkGroup": "AthenaAdmin" } }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte GetNamedQuery
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-query-execution
.
- AWS CLI
-
Para retornar informações sobre a execução de uma consulta
O
get-query-execution
exemplo a seguir retorna informações sobre a consulta que tem o ID de consulta especificado.aws athena get-query-execution \ --query-execution-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Saída:
{ "QueryExecution": { "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Query": "select date, location, browser, uri, status from cloudfront_logs where method = 'GET ' and status = 200 and location like 'SFO%' limit 10", "StatementType": "DML", "ResultConfiguration": { "OutputLocation": "s3://awsdoc-example-bucket/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111.csv" }, "QueryExecutionContext": { "Database": "mydatabase", "Catalog": "awsdatacatalog" }, "Status": { "State": "SUCCEEDED", "SubmissionDateTime": 1593469842.665, "CompletionDateTime": 1593469846.486 }, "Statistics": { "EngineExecutionTimeInMillis": 3600, "DataScannedInBytes": 203089, "TotalExecutionTimeInMillis": 3821, "QueryQueueTimeInMillis": 267, "QueryPlanningTimeInMillis": 1175 }, "WorkGroup": "AthenaAdmin" } }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte GetQueryExecution
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-query-results
.
- AWS CLI
-
Para retornar os resultados de uma consulta
O
get-query-results
exemplo a seguir retorna os resultados da consulta que tem o ID de consulta especificado.aws athena get-query-results \ --query-execution-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Saída:
{ "ResultSet": { "Rows": [ { "Data": [ { "VarCharValue": "date" }, { "VarCharValue": "location" }, { "VarCharValue": "browser" }, { "VarCharValue": "uri" }, { "VarCharValue": "status" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "Safari" }, { "VarCharValue": "/test-image-2.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "Opera" }, { "VarCharValue": "/test-image-2.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "Firefox" }, { "VarCharValue": "/test-image-3.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "Lynx" }, { "VarCharValue": "/test-image-3.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "IE" }, { "VarCharValue": "/test-image-2.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "Opera" }, { "VarCharValue": "/test-image-1.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "Chrome" }, { "VarCharValue": "/test-image-3.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "Firefox" }, { "VarCharValue": "/test-image-2.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "Chrome" }, { "VarCharValue": "/test-image-3.jpeg" }, { "VarCharValue": "200" } ] }, { "Data": [ { "VarCharValue": "2014-07-05" }, { "VarCharValue": "SFO4" }, { "VarCharValue": "IE" }, { "VarCharValue": "/test-image-2.jpeg" }, { "VarCharValue": "200" } ] } ], "ResultSetMetadata": { "ColumnInfo": [ { "CatalogName": "hive", "SchemaName": "", "TableName": "", "Name": "date", "Label": "date", "Type": "date", "Precision": 0, "Scale": 0, "Nullable": "UNKNOWN", "CaseSensitive": false }, { "CatalogName": "hive", "SchemaName": "", "TableName": "", "Name": "location", "Label": "location", "Type": "varchar", "Precision": 2147483647, "Data": [ "Scale": 0, "Nullable": "UNKNOWN", "CaseSensitive": true }, { "CatalogName": "hive", "SchemaName": "", "TableName": "", "Name": "browser", "Label": "browser", "Type": "varchar", "Precision": 2147483647, "Scale": 0, "Nullable": "UNKNOWN", "CaseSensitive": true }, { "CatalogName": "hive", "SchemaName": "", "TableName": "", "Name": "uri", "Label": "uri", "Type": "varchar", "Precision": 2147483647, "Scale": 0, "Nullable": "UNKNOWN", "CaseSensitive": true }, { "CatalogName": "hive", "SchemaName": "", "TableName": "", "Name": "status", "Label": "status", "Type": "integer", "Precision": 10, "Scale": 0, "Nullable": "UNKNOWN", "CaseSensitive": false } ] } }, "UpdateCount": 0 }
Para obter mais informações, consulte Como trabalhar com resultados de consultas, arquivos de saída e histórico de consultas no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte GetQueryResults
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-table-metadata
.
- AWS CLI
-
Para retornar informações de metadados sobre uma tabela
O
get-table-metadata
exemplo a seguir retorna informações de metadados sobre acounties
tabela, incluindo nomes de colunas e seus tipos de dados, dosampledb
banco de dados do catálogo de dados.AwsDataCatalog
aws athena get-table-metadata \ --catalog-name
AwsDataCatalog
\ --database-namesampledb
\ --table-namecounties
Saída:
{ "TableMetadata": { "Name": "counties", "CreateTime": 1593559968.0, "LastAccessTime": 0.0, "TableType": "EXTERNAL_TABLE", "Columns": [ { "Name": "name", "Type": "string", "Comment": "from deserializer" }, { "Name": "boundaryshape", "Type": "binary", "Comment": "from deserializer" }, { "Name": "motto", "Type": "string", "Comment": "from deserializer" }, { "Name": "population", "Type": "int", "Comment": "from deserializer" } ], "PartitionKeys": [], "Parameters": { "EXTERNAL": "TRUE", "inputformat": "com.esri.json.hadoop.EnclosedJsonInputFormat", "location": "s3://awsdoc-example-bucket/json", "outputformat": "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat", "serde.param.serialization.format": "1", "serde.serialization.lib": "com.esri.hadoop.hive.serde.JsonSerde", "transient_lastDdlTime": "1593559968" } } }
Para obter mais informações, consulte Exibindo detalhes da tabela: get-table-metadata no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte GetTableMetadata
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar get-work-group
.
- AWS CLI
-
Para retornar informações sobre um grupo de trabalho
O
get-work-group
exemplo a seguir retorna informações sobre oAthenaAdmin
grupo de trabalho.aws athena get-work-group \ --work-group
AthenaAdmin
Saída:
{ "WorkGroup": { "Name": "AthenaAdmin", "State": "ENABLED", "Configuration": { "ResultConfiguration": { "OutputLocation": "s3://awsdoc-example-bucket/" }, "EnforceWorkGroupConfiguration": false, "PublishCloudWatchMetricsEnabled": true, "RequesterPaysEnabled": false }, "Description": "Workgroup for Athena administrators", "CreationTime": 1573677174.105 } }
Para obter mais informações, consulte Gerenciamento de grupos de trabalho no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte GetWorkGroup
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-data-catalogs
.
- AWS CLI
-
Para listar os catálogos de dados registrados no Athena
O
list-data-catalogs
exemplo a seguir lista os catálogos de dados registrados no Athena.aws athena list-data-catalogs
Saída:
{ "DataCatalogsSummary": [ { "CatalogName": "AwsDataCatalog", "Type": "GLUE" }, { "CatalogName": "cw_logs_catalog", "Type": "LAMBDA" }, { "CatalogName": "cw_metrics_catalog", "Type": "LAMBDA" } ] }
Para obter mais informações, consulte Listando catálogos registrados: list-data-catalogs no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte ListDataCatalogs
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-databases
.
- AWS CLI
-
Para listar os bancos de dados em um catálogo de dados
O
list-databases
exemplo a seguir lista os bancos de dados no catálogoAwsDataCatalog
de dados.aws athena list-databases \ --catalog-name
AwsDataCatalog
Saída:
{ "DatabaseList": [ { "Name": "default" }, { "Name": "mydatabase" }, { "Name": "newdb" }, { "Name": "sampledb", "Description": "Sample database", "Parameters": { "CreatedBy": "Athena", "EXTERNAL": "TRUE" } }, { "Name": "webdata" } ] }
Para obter mais informações, consulte Listar bancos de dados em um catálogo: bancos de dados de lista no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte ListDatabases
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-named-queries
.
- AWS CLI
-
Para listar as consultas nomeadas para um grupo de trabalho
O
list-named-queries
exemplo a seguir lista as consultas nomeadas para o grupoAthenaAdmin
de trabalho.aws athena list-named-queries \ --work-group
AthenaAdmin
Saída:
{ "NamedQueryIds": [ "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333" ] }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte ListNamedQueries
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-query-executions
.
- AWS CLI
-
Para listar a consulta IDs das consultas em um grupo de trabalho especificado
O
list-query-executions
exemplo a seguir lista no máximo dez da consulta IDs noAthenaAdmin
grupo de trabalho.aws athena list-query-executions \ --work-group
AthenaAdmin
\ --max-items10
Saída:
{ "QueryExecutionIds": [ "a1b2c3d4-5678-90ab-cdef-EXAMPLE11110", "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "a1b2c3d4-5678-90ab-cdef-EXAMPLE11114", "a1b2c3d4-5678-90ab-cdef-EXAMPLE11115", "a1b2c3d4-5678-90ab-cdef-EXAMPLE11116", "a1b2c3d4-5678-90ab-cdef-EXAMPLE11117", "a1b2c3d4-5678-90ab-cdef-EXAMPLE11118", "a1b2c3d4-5678-90ab-cdef-EXAMPLE11119" ], "NextToken": "eyJOZXh0VG9rZW4iOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxMH0=" }
Para obter mais informações, consulte Como trabalhar com resultados de consultas, arquivos de saída e histórico de consultas no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte ListQueryExecutions
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-table-metadata
.
- AWS CLI
-
Para listar os metadados das tabelas no banco de dados especificado de um catálogo de dados
O
list-table-metadata
exemplo a seguir retorna informações de metadados para no máximo duas tabelas nogeography
banco de dados do catálogo deAwsDataCatalog
dados.aws athena list-table-metadata \ --catalog-name
AwsDataCatalog
\ --database-namegeography
\ --max-items2
Saída:
{ "TableMetadataList": [ { "Name": "country_codes", "CreateTime": 1586553454.0, "TableType": "EXTERNAL_TABLE", "Columns": [ { "Name": "country", "Type": "string", "Comment": "geo id" }, { "Name": "alpha-2 code", "Type": "string", "Comment": "geo id2" }, { "Name": "alpha-3 code", "Type": "string", "Comment": "state name" }, { "Name": "numeric code", "Type": "bigint", "Comment": "" }, { "Name": "latitude", "Type": "bigint", "Comment": "location (latitude)" }, { "Name": "longitude", "Type": "bigint", "Comment": "location (longitude)" } ], "Parameters": { "areColumnsQuoted": "false", "classification": "csv", "columnsOrdered": "true", "delimiter": ",", "has_encrypted_data": "false", "inputformat": "org.apache.hadoop.mapred.TextInputFormat", "location": "s3://awsdoc-example-bucket/csv/countrycode", "outputformat": "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat", "serde.param.field.delim": ",", "serde.serialization.lib": "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe", "skip.header.line.count": "1", "typeOfData": "file" } }, { "Name": "county_populations", "CreateTime": 1586553446.0, "TableType": "EXTERNAL_TABLE", "Columns": [ { "Name": "id", "Type": "string", "Comment": "geo id" }, { "Name": "country", "Name": "id2", "Type": "string", "Comment": "geo id2" }, { "Name": "county", "Type": "string", "Comment": "county name" }, { "Name": "state", "Type": "string", "Comment": "state name" }, { "Name": "population estimate 2018", "Type": "string", "Comment": "" } ], "Parameters": { "areColumnsQuoted": "false", "classification": "csv", "columnsOrdered": "true", "delimiter": ",", "has_encrypted_data": "false", "inputformat": "org.apache.hadoop.mapred.TextInputFormat", "location": "s3://awsdoc-example-bucket/csv/CountyPopulation", "outputformat": "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat", "serde.param.field.delim": ",", "serde.serialization.lib": "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe", "skip.header.line.count": "1", "typeOfData": "file" } } ], "NextToken": "eyJOZXh0VG9rZW4iOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAyfQ==" }
Para obter mais informações, consulte Mostrar metadados de todas as tabelas em um banco de dados: list-table-metadata no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte ListTableMetadata
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-tags-for-resource
.
- AWS CLI
-
Exemplo 1: Para listar as tags de um grupo de trabalho
O
list-tags-for-resource
exemplo a seguir lista as tags doData_Analyst_Group
grupo de trabalho.aws athena list-tags-for-resource \ --resource-arn
arn:aws:athena:us-west-2:111122223333:workgroup/Data_Analyst_Group
Saída:
{ "Tags": [ { "Key": "Division", "Value": "West" }, { "Key": "Team", "Value": "Big Data" }, { "Key": "Location", "Value": "Seattle" } ] }
Exemplo 2: Para listar as tags de um catálogo de dados
O
list-tags-for-resource
exemplo a seguir lista as tags do catálogodynamo_db_catalog
de dados.aws athena list-tags-for-resource \ --resource-arn
arn:aws:athena:us-west-2:111122223333:datacatalog/dynamo_db_catalog
Saída:
{ "Tags": [ { "Key": "Division", "Value": "Mountain" }, { "Key": "Organization", "Value": "Retail" }, { "Key": "Product_Line", "Value": "Shoes" }, { "Key": "Location", "Value": "Denver" } ] }
Para obter mais informações, consulte Listar as tags de um recurso: list-tags-for-resource no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte ListTagsForResource
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar list-work-groups
.
- AWS CLI
-
Para listar grupos de trabalho
O
list-work-groups
exemplo a seguir lista os grupos de trabalho na conta atual.aws athena list-work-groups
Saída:
{ "WorkGroups": [ { "Name": "Data_Analyst_Group", "State": "ENABLED", "Description": "", "CreationTime": 1578006683.016 }, { "Name": "AthenaAdmin", "State": "ENABLED", "Description": "", "CreationTime": 1573677174.105 }, { "Name": "primary", "State": "ENABLED", "Description": "", "CreationTime": 1567465222.723 } ] }
Para obter mais informações, consulte Gerenciamento de grupos de trabalho no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte ListWorkGroups
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar start-query-execution
.
- AWS CLI
-
Exemplo 1: Para executar uma consulta em um grupo de trabalho na tabela especificada no banco de dados e no catálogo de dados especificados
O
start-query-execution
exemplo a seguir usa oAthenaAdmin
grupo de trabalho para executar uma consulta nacloudfront_logs
tabelacflogsdatabase
no catálogo deAwsDataCatalog
dados.aws athena start-query-execution \ --query-string
"select date, location, browser, uri, status from cloudfront_logs where method = 'GET' and status = 200 and location like 'SFO%' limit 10"
\ --work-group"AthenaAdmin"
\ --query-execution-contextDatabase=cflogsdatabase,Catalog=AwsDataCatalog
Saída:
{ "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
Exemplo 2: Para executar uma consulta que usa um grupo de trabalho especificado para criar um banco de dados no catálogo de dados especificado
O
start-query-execution
exemplo a seguir usa oAthenaAdmin
grupo de trabalho para criar o banco de dadosnewdb
no catálogoAwsDataCatalog
de dados padrão.aws athena start-query-execution \ --query-string
"create database if not exists newdb"
\ --work-group"AthenaAdmin"
Saída:
{ "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11112" }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
Exemplo 3: Para executar uma consulta que cria uma exibição em uma tabela no banco de dados e no catálogo de dados especificados
O
start-query-execution
exemplo a seguir usa umaSELECT
declaração nacloudfront_logs
tabela docflogsdatabase
para criar a exibiçãocf10
.aws athena start-query-execution \ --query-string
"CREATE OR REPLACE VIEW cf10 AS SELECT * FROM cloudfront_logs limit 10"
\ --query-execution-contextDatabase=cflogsdatabase
Saída:
{ "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11113" }
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte StartQueryExecution
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar stop-query-execution
.
- AWS CLI
-
Para interromper uma consulta em execução
O
stop-query-execution
exemplo a seguir interrompe a consulta que tem o ID de consulta especificado.aws athena stop-query-execution \ --query-execution-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Este comando não produz saída.
Para obter mais informações, consulte Como executar SQL consultas usando o Amazon Athena no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte StopQueryExecution
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar tag-resource
.
- AWS CLI
-
Para adicionar uma tag a um recurso
O
tag-resource
exemplo a seguir adiciona três tags ao catálogodynamo_db_catalog
de dados.aws athena tag-resource \ --resource-arn
arn:aws:athena:us-west-2:111122223333:datacatalog/dynamo_db_catalog
\ --tagsKey=Organization,Value=Retail
Key=Division,Value=Mountain
Key=Product_Line,Value=Shoes
Key=Location,Value=Denver
Este comando não produz saída. Para ver o resultado, use
aws athena list-tags-for-resource --resource-arn arn:aws:athena:us-west-2:111122223333:datacatalog/dynamo_db_catalog
.Para obter mais informações, consulte Adicionar tags a um recurso: tag-resource no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte TagResource
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar untag-resource
.
- AWS CLI
-
Para remover uma tag de um recurso
O
untag-resource
exemplo a seguir remove asFocus
chavesSpecialization
e e seus valores associados do recurso do catálogo dedynamo_db_catalog
dados.aws athena untag-resource \ --resource-arn
arn:aws:athena:us-west-2:111122223333:datacatalog/dynamo_db_catalog
\ --tag-keysSpecialization
Focus
Este comando não produz saída. Para ver os resultados, use o
list-tags-for-resource
comando.Para obter mais informações, consulte Removendo tags de um recurso: untag-resource no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte UntagResource
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar update-data-catalog
.
- AWS CLI
-
Para atualizar um catálogo de dados
O
update-data-catalog
exemplo a seguir atualiza a função Lambda e a descrição do catálogo decw_logs_catalog
dados.aws athena update-data-catalog \ --name
cw_logs_catalog
\ --typeLAMBDA
\ --description"New CloudWatch Logs Catalog"
\ --function=arn:aws:lambda:us-west-2:111122223333:function:new_cw_logs_lambdaEste comando não produz saída. Para ver o resultado, use
aws athena get-data-catalog --name cw_logs_catalog
.Para obter mais informações, consulte Atualização de um catálogo: update-data-catalog no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte UpdateDataCatalog
na Referência de AWS CLI Comandos.
-
O código de exemplo a seguir mostra como usar update-work-group
.
- AWS CLI
-
Para atualizar um grupo de trabalho
O
update-work-group
exemplo a seguir desativa o grupo deData_Analyst_Group
trabalho. Os usuários não podem executar ou criar consultas no grupo de trabalho desativado, mas ainda podem visualizar métricas, controles de limite de uso de dados, configurações do grupo de trabalho, histórico de consultas e consultas salvas.aws athena update-work-group \ --work-group
Data_Analyst_Group
\ --stateDISABLED
Este comando não produz saída. Para verificar a alteração no estado, use
aws athena get-work-group --work-group Data_Analyst_Group
e verifique aState
propriedade na saída.Para obter mais informações, consulte Gerenciamento de grupos de trabalho no Guia do usuário do Amazon Athena.
-
Para API obter detalhes, consulte UpdateWorkGroup
na Referência de AWS CLI Comandos.
-