DESCRIBE - Amazon Athena

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.

DESCRIBE

Zeigt eine oder mehrere Spalten, einschließlich Partitionsspalten, für die angegebene Tabelle an. Dieser Befehl ist nützlich, um die Attribute komplexer Spalten zu untersuchen.

Syntax

DESCRIBE [EXTENDED | FORMATTED] [db_name.]table_name [PARTITION partition_spec] [col_name ( [.field_name] | [.'$elem$'] | [.'$key$'] | [.'$value$'] )]
Wichtig

Die Syntax für diese Anweisung lautet DESCRIBE table_name, nicht DESCRIBE TABLE table_name. Die Verwendung der letztgenannten Syntax führt zu der Fehlermeldung SemanticException FAILED: [Fehler 10001]: Tabelle nicht gefunden.

Parameter

[EXTENDED | FORMATTED]

Bestimmt das Format der Ausgabe. Wenn Sie diese Parameter weglassen, werden Spaltennamen und ihre entsprechenden Datentypen, einschließlich Partitionsspalten, im Tabellenformat angezeigt. Die Angabe von FORMATTED zeigt nicht nur Spaltennamen und Datentypen in tabellarischer Form, sondern auch detaillierte Tabellen- und Speicherinformationen. EXTENDED zeigt Spalten- und Datentypinformationen im Tabellenformat und detaillierte Metadaten für die Tabelle in serialisierter Thrift-Form. Dieses Format ist weniger lesbar und eignet sich in erster Linie für das Debugging.

[PARTITION partition_spec]

Wenn diese Option enthalten ist, werden die von partition_spec angegebenen Metadaten für die Partition aufgeführt, wobei partition_spec das Format (partition_column = partition_col_value, partition_column = partition_col_value, ...) aufweist.

[col_name ( [.field_name] | [.'$elem$'] | [.'$key$'] | [.'$value$'] )* ]

Gibt die zu untersuchende Spalte und die zu untersuchenden Attribute an. Sie können .field_name für ein Element einer Struktur, '$elem$' für ein Array-Element, '$key$' für einen Zuordnungsschlüssel und '$value$' für einen Zuordnungswert angeben. Sie können dies rekursiv angeben, um die komplexe Spalte eingehender zu prüfen.

Beispiele

DESCRIBE orders
DESCRIBE FORMATTED mydatabase.mytable PARTITION (part_col = 100) columnA;

Die folgende Abfrage und Ausgabe zeigt Spalten- und Datentyp-Informationen aus einer impressions-Tabelle basierend auf Amazon-EMR-Beispieldaten.

DESCRIBE impressions
requestbegintime string from deserializer adid string from deserializer impressionid string from deserializer referrer string from deserializer useragent string from deserializer usercookie string from deserializer ip string from deserializer number string from deserializer processid string from deserializer browsercokie string from deserializer requestendtime string from deserializer timers struct<modellookup:string,requesttime:string> from deserializer threadid string from deserializer hostname string from deserializer sessionid string from deserializer dt string # Partition Information # col_name data_type comment dt string

Die folgende Beispielabfrage und -ausgabe zeigen das Ergebnis für dieselbe Tabelle, wenn die Option FORMATTED verwendet wird.

DESCRIBE FORMATTED impressions
requestbegintime string from deserializer adid string from deserializer impressionid string from deserializer referrer string from deserializer useragent string from deserializer usercookie string from deserializer ip string from deserializer number string from deserializer processid string from deserializer browsercokie string from deserializer requestendtime string from deserializer timers struct<modellookup:string,requesttime:string> from deserializer threadid string from deserializer hostname string from deserializer sessionid string from deserializer dt string # Partition Information # col_name data_type comment dt string # Detailed Table Information Database: sampledb Owner: hadoop CreateTime: Thu Apr 23 02:55:21 UTC 2020 LastAccessTime: UNKNOWN Protect Mode: None Retention: 0 Location: s3://us-east-1.elasticmapreduce/samples/hive-ads/tables/impressions Table Type: EXTERNAL_TABLE Table Parameters: EXTERNAL TRUE transient_lastDdlTime 1587610521 # Storage Information SerDe Library: org.openx.data.jsonserde.JsonSerDe InputFormat: org.apache.hadoop.mapred.TextInputFormat OutputFormat: org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat Compressed: No Num Buckets: -1 Bucket Columns: [] Sort Columns: [] Storage Desc Params: paths requestbegintime, adid, impressionid, referrer, useragent, usercookie, ip serialization.format 1

Die folgende Beispielabfrage und -ausgabe zeigen das Ergebnis für dieselbe Tabelle, wenn die Option EXTENDED verwendet wird. Die detaillierten Tabelleninformationen werden in einer einzigen Zeile ausgegeben, aber hier zur Lesbarkeit formatiert.

DESCRIBE EXTENDED impressions
requestbegintime string from deserializer adid string from deserializer impressionid string from deserializer referrer string from deserializer useragent string from deserializer usercookie string from deserializer ip string from deserializer number string from deserializer processid string from deserializer browsercokie string from deserializer requestendtime string from deserializer timers struct<modellookup:string,requesttime:string> from deserializer threadid string from deserializer hostname string from deserializer sessionid string from deserializer dt string # Partition Information # col_name data_type comment dt string Detailed Table Information Table(tableName:impressions, dbName:sampledb, owner:hadoop, createTime:1587610521, lastAccessTime:0, retention:0, sd:StorageDescriptor(cols:[FieldSchema(name:requestbegintime, type:string, comment:null), FieldSchema(name:adid, type:string, comment:null), FieldSchema(name:impressionid, type:string, comment:null), FieldSchema(name:referrer, type:string, comment:null), FieldSchema(name:useragent, type:string, comment:null), FieldSchema(name:usercookie, type:string, comment:null), FieldSchema(name:ip, type:string, comment:null), FieldSchema(name:number, type:string, comment:null), FieldSchema(name:processid, type:string, comment:null), FieldSchema(name:browsercokie, type:string, comment:null), FieldSchema(name:requestendtime, type:string, comment:null), FieldSchema(name:timers, type:struct<modellookup:string,requesttime:string>, comment:null), FieldSchema(name:threadid, type:string, comment:null), FieldSchema(name:hostname, type:string, comment:null), FieldSchema(name:sessionid, type:string, comment:null)], location:s3://us-east-1.elasticmapreduce/samples/hive-ads/tables/impressions, inputFormat:org.apache.hadoop.mapred.TextInputFormat, outputFormat:org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat, compressed:false, numBuckets:-1, serdeInfo:SerDeInfo(name:null, serializationLib:org.openx.data.jsonserde.JsonSerDe, parameters:{serialization.format=1, paths=requestbegintime, adid, impressionid, referrer, useragent, usercookie, ip}), bucketCols:[], sortCols:[], parameters:{}, skewedInfo:SkewedInfo(skewedColNames:[], skewedColValues:[], skewedColValueLocationMaps:{}), storedAsSubDirectories:false), partitionKeys:[FieldSchema(name:dt, type:string, comment:null)], parameters:{EXTERNAL=TRUE, transient_lastDdlTime=1587610521}, viewOriginalText:null, viewExpandedText:null, tableType:EXTERNAL_TABLE)