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.
Lassen Sie den Katalognamen in externen Hive-Metastore-Abfragen weg
Wenn Sie externe Hive-Metastores ausführen DML und DDL Abfragen auf diesen ausführen, können Sie Ihre Abfragesyntax vereinfachen, indem Sie den Katalognamen weglassen, wenn dieser Name im Abfrage-Editor ausgewählt ist. Für diese Funktionalität gelten bestimmte Einschränkungen.
DMLAnweisungen
So führen Sie Abfragen mit registrierten Katalogen aus:
-
Sie können den Datenquellennamen mithilfe der Syntax
[[
vor die Datenbank einfügen, wie im folgenden Beispiel gezeigt.data_source_name
].database_name
].table_name
select * from "hms-catalog-1".hms_tpch.customer limit 10;
-
Wenn die Datenquelle, die Sie verwenden möchten, in dem Abfrage-Editor bereits ausgewählt ist, können Sie den Namen wie im folgenden Beispiel aus der Abfrage weglassen.
select * from hms_tpch.customer limit 10:
-
Wenn Sie mehrere Datenquellen in einer Abfrage verwenden, können Sie nur den Standarddatenquellennamen weglassen und müssen den vollständigen Namen für alle nicht standardmäßigen Datenquellen angeben.
Angenommen,
AwsDataCatalog
ist im Abfrage-Editor als Standarddatenquelle ausgewählt. DieFROM
Anweisung im folgenden Abfrageauszug qualifiziert die ersten beiden Datenquellennamen vollständig, lässt jedoch den Namen für die dritte Datenquelle weg, da sie sich im AWS Glue Datenkatalog befindet.... FROM ehms01.hms_tpch.customer, "hms-catalog-1".hms_tpch.orders, hms_tpch.lineitem ...
DDLAussagen
Die folgenden DDL Athena-Anweisungen unterstützen Präfixe für Katalognamen. Präfixe von Katalognamen in anderen DDL Anweisungen verursachen Syntaxfehler.
SHOW TABLES [IN [catalog_name.]database_name] ['regular_expression'] SHOW TBLPROPERTIES [[catalog_name.]database_name.]table_name [('property_name')] SHOW COLUMNS IN [[catalog_name.]database_name.]table_name SHOW PARTITIONS [[catalog_name.]database_name.]table_name SHOW CREATE TABLE [[catalog_name.][database_name.]table_name DESCRIBE [EXTENDED | FORMATTED] [[catalog_name.][database_name.]table_name [PARTITION partition_spec] [col_name ( [.field_name] | [.'$elem$'] | [.'$key$'] | [.'$value$'] )]
Wie bei DML Anweisungen können Sie die Datenquellen- und Datenbankpräfixe in der Abfrage weglassen, wenn die Datenquelle und die Datenbank im Abfrage-Editor ausgewählt werden.
Im folgenden Bild werden die hms-catalog-1
-Datenquelle und die hms_tpch
-Datenbank im Abfrage-Editor ausgewählt. Die show
create table customer
-Anweisung ist erfolgreich, obwohl das hms-catalog-1
-Präfix und der hms_tpch
-Datenbankname von der Abfrage selbst weggelassen werden.
Angeben einer Standarddatenquelle in einer JDBC Verbindungszeichenfolge
Anmerkung
Informationen zum Herunterladen der neuesten JDBC Athena-Treiber finden Sie unter Verwenden von Athena mit dem JDBC Treiber.
Die folgende Verbindungszeichenfolge gibt die Standarddatenquelle an hms-catalog-name
.
jdbc:awsathena://AwsRegion=us-east-1;S3OutputLocation=s3://amzn-s3-demo-bucket/lambda/results/;Workgroup=AmazonAthenaPreviewFunctionality;Catalog=
hms-catalog-name
;
Die folgende Abbildung zeigt eine JDBC Beispielverbindung, URL wie sie in SQL Workbench konfiguriert ist.