Athena-Beispiele mit AWS CLI - AWS Command Line Interface

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Athena-Beispiele mit AWS CLI

Die folgenden Codebeispiele zeigen Ihnen, wie Sie AWS Command Line Interface mit Athena Aktionen ausführen und allgemeine Szenarien implementieren.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Aktionen zeigen Ihnen zwar, wie Sie einzelne Servicefunktionen aufrufen, aber Sie können Aktionen in den zugehörigen Szenarien im Kontext sehen.

Jedes Beispiel enthält einen Link zum vollständigen Quellcode, in dem Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt die Verwendungbatch-get-named-query.

AWS CLI

Um Informationen zu mehr als einer Abfrage zurückzugeben

Im folgenden batch-get-named-query Beispiel werden Informationen zu den benannten Abfragen zurückgegeben, die den angegebenen Wert habenIDs.

aws athena batch-get-named-query \ --named-query-ids a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 a1b2c3d4-5678-90ab-cdef-EXAMPLE22222 a1b2c3d4-5678-90ab-cdef-EXAMPLE33333

Ausgabe:

{ "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": [] }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungbatch-get-query-execution.

AWS CLI

Um Informationen über eine oder mehrere Abfrageausführungen zurückzugeben

Im folgenden batch-get-query-execution Beispiel werden Informationen zur Abfrageausführung für die Abfragen zurückgegeben, die die angegebene Abfrage IDs haben.

aws athena batch-get-query-execution \ --query-execution-ids a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 a1b2c3d4-5678-90ab-cdef-EXAMPLE22222

Ausgabe:

{ "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": [] }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungcreate-data-catalog.

AWS CLI

Um einen Datenkatalog zu erstellen

Im folgenden create-data-catalog Beispiel wird der dynamo_db_catalog Datenkatalog erstellt.

aws athena create-data-catalog \ --name dynamo_db_catalog \ --type LAMBDA \ --description "DynamoDB Catalog" \ --parameters function=arn:aws:lambda:us-west-2:111122223333:function:dynamo_db_lambda

Mit diesem Befehl wird keine Ausgabe zurückgegeben. Um das Ergebnis zu sehen, verwenden Sieaws athena get-data-catalog --name dynamo_db_catalog.

Weitere Informationen finden Sie unter Registrierung eines Katalogs: create-data-catalog im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungcreate-named-query.

AWS CLI

Um eine benannte Abfrage zu erstellen

Im folgenden create-named-query Beispiel wird eine gespeicherte Abfrage in der AthenaAdmin Arbeitsgruppe erstellt, die die flights_parquet Tabelle nach Flügen von Seattle nach New York im Januar 2016 abfragt, deren Abflug und Ankunft jeweils um mehr als zehn Minuten verspätet waren. Da es sich bei den Flughafencodewerten in der Tabelle um Zeichenfolgen handelt, die doppelte Anführungszeichen enthalten (z. B. "SEA„), werden sie durch umgekehrte Schrägstriche maskiert und von einfachen Anführungszeichen umgeben.

aws athena create-named-query \ --name "SEA to JFK delayed flights Jan 2016" \ --description "Both arrival and departure delayed more than 10 minutes." \ --database sampledb \ --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-group AthenaAdmin

Ausgabe:

{ "NamedQueryId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungcreate-work-group.

AWS CLI

Um eine Arbeitsgruppe zu erstellen

Im folgenden create-work-group Beispiel wird eine Arbeitsgruppe mit dem Namen erstelltData_Analyst_Group, die den Speicherort für die Ausgabe der Abfrageergebnisse enthält. s3://awsdoc-example-bucket Mit dem Befehl wird eine Arbeitsgruppe erstellt, die die Client-Konfigurationseinstellungen außer Kraft setzt. Dazu gehört auch der Speicherort für die Ausgabe der Abfrageergebnisse. Der Befehl aktiviert außerdem CloudWatch Metriken und fügt der Arbeitsgruppe drei Schlüssel-Wert-Tag-Paare hinzu, um sie von anderen Arbeitsgruppen zu unterscheiden. Beachten Sie, dass das --configuration Argument keine Leerzeichen vor den Kommas enthält, die seine Optionen trennen.

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" \ --tags Key=Division,Value=West Key=Location,Value=Seattle Key=Team,Value="Big Data"

Mit diesem Befehl wird keine Ausgabe zurückgegeben. Um die Ergebnisse zu sehen, verwenden Sieaws athena get-work-group --work-group Data_Analyst_Group.

Weitere Informationen finden Sie unter Managing Workgroups im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie CreateWorkGroupin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungdelete-data-catalog.

AWS CLI

Um einen Datenkatalog zu löschen

Im folgenden delete-data-catalog Beispiel wird der UnusedDataCatalog Datenkatalog gelöscht.

aws athena delete-data-catalog \ --name UnusedDataCatalog

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Löschen eines Katalogs: delete-data-catalog im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdelete-named-query.

AWS CLI

Um eine benannte Abfrage zu löschen

Im folgenden delete-named-query Beispiel wird die benannte Abfrage mit der angegebenen ID gelöscht.

aws athena delete-named-query \ --named-query-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdelete-work-group.

AWS CLI

Um eine Arbeitsgruppe zu löschen

Im folgenden delete-work-group Beispiel wird die TeamB Arbeitsgruppe gelöscht.

aws athena delete-work-group \ --work-group TeamB

Mit diesem Befehl wird keine Ausgabe zurückgegeben. Um den Löschvorgang zu bestätigen, verwenden Sie. aws athena list-work-groups

Weitere Informationen finden Sie unter Managing Workgroups im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie DeleteWorkGroupin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-data-catalog.

AWS CLI

Um Informationen über einen Datenkatalog zurückzugeben

Das folgende get-data-catalog Beispiel gibt Informationen über den dynamo_db_catalog Datenkatalog zurück.

aws athena get-data-catalog \ --name dynamo_db_catalog

Ausgabe:

{ "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" } } }

Weitere Informationen finden Sie unter Katalogdetails anzeigen: get-data-catalog im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-database.

AWS CLI

Um Informationen über eine Datenbank in einem Datenkatalog zurückzugeben

Das folgende get-database Beispiel gibt Informationen über die sampledb Datenbank im AwsDataCatalog Datenkatalog zurück.

aws athena get-database \ --catalog-name AwsDataCatalog \ --database-name sampledb

Ausgabe:

{ "Database": { "Name": "sampledb", "Description": "Sample database", "Parameters": { "CreatedBy": "Athena", "EXTERNAL": "TRUE" } } }

Weitere Informationen finden Sie unter Showing Database Details: get-database im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-named-query.

AWS CLI

Um eine benannte Abfrage zurückzugeben

Das folgende get-named-query Beispiel gibt Informationen über die Abfrage zurück, die die angegebene ID hat.

aws athena get-named-query \ --named-query-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Ausgabe:

{ "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" } }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-query-execution.

AWS CLI

Um Informationen über die Ausführung einer Abfrage zurückzugeben

Das folgende get-query-execution Beispiel gibt Informationen über die Abfrage zurück, die die angegebene Abfrage-ID hat.

aws athena get-query-execution \ --query-execution-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Ausgabe:

{ "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" } }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-query-results.

AWS CLI

Um die Ergebnisse einer Abfrage zurückzugeben

Das folgende get-query-results Beispiel gibt die Ergebnisse der Abfrage mit der angegebenen Abfrage-ID zurück.

aws athena get-query-results \ --query-execution-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Ausgabe:

{ "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 }

Weitere Informationen finden Sie unter Arbeiten mit Abfrageergebnissen, Ausgabedateien und Abfrageverlauf im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie GetQueryResultsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-table-metadata.

AWS CLI

Um Metadateninformationen zu einer Tabelle zurückzugeben

Im folgenden get-table-metadata Beispiel werden Metadateninformationen über die counties Tabelle, einschließlich Spaltennamen und deren Datentypen, aus der sampledb Datenbank des AwsDataCatalog Datenkatalogs zurückgegeben.

aws athena get-table-metadata \ --catalog-name AwsDataCatalog \ --database-name sampledb \ --table-name counties

Ausgabe:

{ "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" } } }

Weitere Informationen finden Sie unter Tabellendetails anzeigen: get-table-metadata im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-work-group.

AWS CLI

Um Informationen über eine Arbeitsgruppe zurückzugeben

Das folgende get-work-group Beispiel gibt Informationen über die AthenaAdmin Arbeitsgruppe zurück.

aws athena get-work-group \ --work-group AthenaAdmin

Ausgabe:

{ "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 } }

Weitere Informationen finden Sie unter Managing Workgroups im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie GetWorkGroupin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-data-catalogs.

AWS CLI

Um die bei Athena registrierten Datenkataloge aufzulisten

Das folgende list-data-catalogs Beispiel listet die bei Athena registrierten Datenkataloge auf.

aws athena list-data-catalogs

Ausgabe:

{ "DataCatalogsSummary": [ { "CatalogName": "AwsDataCatalog", "Type": "GLUE" }, { "CatalogName": "cw_logs_catalog", "Type": "LAMBDA" }, { "CatalogName": "cw_metrics_catalog", "Type": "LAMBDA" } ] }

Weitere Informationen finden Sie unter Auflisten registrierter Kataloge: list-data-catalogs im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunglist-databases.

AWS CLI

Um die Datenbanken in einem Datenkatalog aufzulisten

Das folgende list-databases Beispiel listet die Datenbanken im AwsDataCatalog Datenkatalog auf.

aws athena list-databases \ --catalog-name AwsDataCatalog

Ausgabe:

{ "DatabaseList": [ { "Name": "default" }, { "Name": "mydatabase" }, { "Name": "newdb" }, { "Name": "sampledb", "Description": "Sample database", "Parameters": { "CreatedBy": "Athena", "EXTERNAL": "TRUE" } }, { "Name": "webdata" } ] }

Weitere Informationen finden Sie unter Datenbanken in einem Katalog auflisten: Listendatenbanken im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie ListDatabasesin AWS CLI der Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-named-queries.

AWS CLI

Um die benannten Abfragen für eine Arbeitsgruppe aufzulisten

Das folgende list-named-queries Beispiel listet die benannten Abfragen für die AthenaAdmin Arbeitsgruppe auf.

aws athena list-named-queries \ --work-group AthenaAdmin

Ausgabe:

{ "NamedQueryIds": [ "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333" ] }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunglist-query-executions.

AWS CLI

Um die Abfrage IDs der Abfragen in einer bestimmten Arbeitsgruppe aufzulisten

Im folgenden list-query-executions Beispiel werden maximal zehn der Abfragen IDs in der AthenaAdmin Arbeitsgruppe aufgeführt.

aws athena list-query-executions \ --work-group AthenaAdmin \ --max-items 10

Ausgabe:

{ "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=" }

Weitere Informationen finden Sie unter Arbeiten mit Abfrageergebnissen, Ausgabedateien und Abfrageverlauf im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunglist-table-metadata.

AWS CLI

Um die Metadaten für Tabellen in der angegebenen Datenbank eines Datenkatalogs aufzulisten

Im folgenden list-table-metadata Beispiel werden Metadateninformationen für maximal zwei Tabellen in der geography Datenbank des AwsDataCatalog Datenkatalogs zurückgegeben.

aws athena list-table-metadata \ --catalog-name AwsDataCatalog \ --database-name geography \ --max-items 2

Ausgabe:

{ "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==" }

Weitere Informationen finden Sie unter Metadaten für alle Tabellen in einer Datenbank anzeigen: list-table-metadata im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunglist-tags-for-resource.

AWS CLI

Beispiel 1: Um die Tags für eine Arbeitsgruppe aufzulisten

Das folgende list-tags-for-resource Beispiel listet die Tags für die Data_Analyst_Group Arbeitsgruppe auf.

aws athena list-tags-for-resource \ --resource-arn arn:aws:athena:us-west-2:111122223333:workgroup/Data_Analyst_Group

Ausgabe:

{ "Tags": [ { "Key": "Division", "Value": "West" }, { "Key": "Team", "Value": "Big Data" }, { "Key": "Location", "Value": "Seattle" } ] }

Beispiel 2: Um die Tags für einen Datenkatalog aufzulisten

Das folgende list-tags-for-resource Beispiel listet die Tags für den dynamo_db_catalog Datenkatalog auf.

aws athena list-tags-for-resource \ --resource-arn arn:aws:athena:us-west-2:111122223333:datacatalog/dynamo_db_catalog

Ausgabe:

{ "Tags": [ { "Key": "Division", "Value": "Mountain" }, { "Key": "Organization", "Value": "Retail" }, { "Key": "Product_Line", "Value": "Shoes" }, { "Key": "Location", "Value": "Denver" } ] }

Weitere Informationen finden Sie unter Auflisten der Tags für eine Ressource: list-tags-for-resource im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunglist-work-groups.

AWS CLI

Um Arbeitsgruppen aufzulisten

Das folgende list-work-groups Beispiel listet die Arbeitsgruppen im aktuellen Konto auf.

aws athena list-work-groups

Ausgabe:

{ "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 } ] }

Weitere Informationen finden Sie unter Managing Workgroups im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie ListWorkGroupsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungstart-query-execution.

AWS CLI

Beispiel 1: Um in einer Arbeitsgruppe eine Abfrage für die angegebene Tabelle in der angegebenen Datenbank und dem angegebenen Datenkatalog auszuführen

Im folgenden start-query-execution Beispiel wird die AthenaAdmin Arbeitsgruppe verwendet, um eine Abfrage für die cloudfront_logs Tabelle cflogsdatabase im AwsDataCatalog Datenkatalog auszuführen.

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-context Database=cflogsdatabase,Catalog=AwsDataCatalog

Ausgabe:

{ "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Beispiel 2: Um eine Abfrage auszuführen, die eine angegebene Arbeitsgruppe verwendet, um eine Datenbank im angegebenen Datenkatalog zu erstellen

Im folgenden start-query-execution Beispiel wird die AthenaAdmin Arbeitsgruppe verwendet, um die Datenbank newdb im Standarddatenkatalog zu erstellen. AwsDataCatalog

aws athena start-query-execution \ --query-string "create database if not exists newdb" \ --work-group "AthenaAdmin"

Ausgabe:

{ "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11112" }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Beispiel 3: Um eine Abfrage auszuführen, die eine Ansicht für eine Tabelle in der angegebenen Datenbank und dem angegebenen Datenkatalog erstellt

Im folgenden start-query-execution Beispiel wird eine SELECT Anweisung für die cloudfront_logs Tabelle in der verwendetcflogsdatabase, um die Ansicht zu erstellencf10.

aws athena start-query-execution \ --query-string "CREATE OR REPLACE VIEW cf10 AS SELECT * FROM cloudfront_logs limit 10" \ --query-execution-context Database=cflogsdatabase

Ausgabe:

{ "QueryExecutionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11113" }

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungstop-query-execution.

AWS CLI

Um eine laufende Abfrage zu beenden

Im folgenden stop-query-execution Beispiel wird die Abfrage mit der angegebenen Abfrage-ID beendet.

aws athena stop-query-execution \ --query-execution-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter SQLAbfragen mit Amazon Athena ausführen im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungtag-resource.

AWS CLI

So fügen Sie einer Ressource einen Tag hinzu

Im folgenden tag-resource Beispiel werden dem dynamo_db_catalog Datenkatalog drei Tags hinzugefügt.

aws athena tag-resource \ --resource-arn arn:aws:athena:us-west-2:111122223333:datacatalog/dynamo_db_catalog \ --tags Key=Organization,Value=Retail Key=Division,Value=Mountain Key=Product_Line,Value=Shoes Key=Location,Value=Denver

Mit diesem Befehl wird keine Ausgabe zurückgegeben. Um das Ergebnis zu sehen, verwenden Sieaws athena list-tags-for-resource --resource-arn arn:aws:athena:us-west-2:111122223333:datacatalog/dynamo_db_catalog.

Weitere Informationen finden Sie unter Hinzufügen von Tags zu einer Ressource: Tag-Ressource im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie TagResourcein AWS CLI der Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunguntag-resource.

AWS CLI

Um ein Tag aus einer Ressource zu entfernen

Im folgenden untag-resource Beispiel werden die Focus Schlüssel Specialization und und die zugehörigen Werte aus der dynamo_db_catalog Datenkatalogressource entfernt.

aws athena untag-resource \ --resource-arn arn:aws:athena:us-west-2:111122223333:datacatalog/dynamo_db_catalog \ --tag-keys Specialization Focus

Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den list-tags-for-resource Befehl, um die Ergebnisse anzuzeigen.

Weitere Informationen finden Sie unter Entfernen von Tags aus einer Ressource: untag-resource im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie in der Befehlsreferenz UntagResource.AWS CLI

Das folgende Codebeispiel zeigt die Verwendungupdate-data-catalog.

AWS CLI

Um einen Datenkatalog zu aktualisieren

Das folgende update-data-catalog Beispiel aktualisiert die Lambda-Funktion und die Beschreibung des cw_logs_catalog Datenkatalogs.

aws athena update-data-catalog \ --name cw_logs_catalog \ --type LAMBDA \ --description "New CloudWatch Logs Catalog" \ --function=arn:aws:lambda:us-west-2:111122223333:function:new_cw_logs_lambda

Mit diesem Befehl wird keine Ausgabe zurückgegeben. Um das Ergebnis zu sehen, verwenden Sieaws athena get-data-catalog --name cw_logs_catalog.

Weitere Informationen finden Sie unter Aktualisieren eines Katalogs: update-data-catalog im Amazon Athena Athena-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungupdate-work-group.

AWS CLI

Um eine Arbeitsgruppe zu aktualisieren

Im folgenden update-work-group Beispiel wird die Data_Analyst_Group Arbeitsgruppe deaktiviert. Benutzer können in der deaktivierten Arbeitsgruppe keine Abfragen ausführen oder erstellen, können aber trotzdem Metriken, Kontrollen von Datenverwendungsbeschränkungen, Arbeitsgruppeneinstellungen, den Abfrageverlauf und gespeicherte Abfragen einsehen.

aws athena update-work-group \ --work-group Data_Analyst_Group \ --state DISABLED

Mit diesem Befehl wird keine Ausgabe zurückgegeben. Um die Statusänderung zu überprüfen, verwenden aws athena get-work-group --work-group Data_Analyst_Group und überprüfen Sie die State Eigenschaft in der Ausgabe.

Weitere Informationen finden Sie unter Managing Workgroups im Amazon Athena Athena-Benutzerhandbuch.

  • APIEinzelheiten finden Sie UpdateWorkGroupin der AWS CLI Befehlsreferenz.