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.
Amazon Ion Hive SerDe
Sie können Amazon Ion Hive verwenden, SerDe um Daten abzufragen, die im Amazon Ion-Format
Amazon Ion verfügt über Binär- und Textformate, die austauschbar sind. Dieses Feature kombiniert die Benutzerfreundlichkeit von Text mit der Effizienz der Binärcodierung.
Um Amazon Ion-Daten von Athena abzufragen, können Sie Amazon Ion Hive verwenden SerDe, das Amazon Ion-DatenCREATE TABLE AS
SELECT
(CTAS) oder INSERT INTO
Abfragen verwenden, um Daten aus vorhandenen Tabellen zu kopieren.
Anmerkung
Da Amazon Ion ein Superset von istJSON, können Sie Amazon Ion Hive verwenden, um Datensätze abzufragen, die nicht SerDe zu Amazon Ion gehören. JSON Im Gegensatz zu anderen JSON SerDeBibliotheken erwartet Amazon Ion SerDe nicht, dass sich jede Datenzeile in einer einzigen Zeile befindet. Diese Funktion ist nützlich, wenn Sie JSON Datensätze im Format „Pretty Print“ abfragen oder die Felder in einer Reihe auf andere Weise mit Zeilenumbruchzeichen aufteilen möchten.
Weitere Informationen und Beispiele für die Abfrage von Amazon Ion mit Athena finden Sie unter Analysieren von Amazon-Ion-Datensätzen mit Amazon Athena
Name der Serialisierungsbibliothek
Der Name der Serialisierungsbibliothek für Amazon Ion SerDe lautetcom.amazon.ionhiveserde.IonHiveSerDe
. Informationen zum Quellcode finden Sie unter Amazon Ion Hive SerDe
Überlegungen und Einschränkungen
-
Doppelte Felder – Amazon-Ion-Strukturen sind geordnet und unterstützen duplizierte Felder, während
STRUCT<>
undMAP<>
von Hive dies nicht tun. Wenn Sie also ein dupliziertes Feld aus einer Amazon-Ion-Struktur deserialisieren, wird ein einzelner Wert nicht deterministisch gewählt und die anderen werden ignoriert. -
Externe Symboltabellen werden nicht unterstützt — Derzeit unterstützt Athena keine externen Symboltabellen oder die folgenden Amazon Ion SerDe Hive-Eigenschaften:
-
ion.catalog.class
-
ion.catalog.file
-
ion.catalog.url
-
ion.symbol_table_imports
-
-
Dateierweiterungen – Amazon Ion verwendet Dateierweiterungen, um zu ermitteln, welcher Komprimierungs-Codec für die Deserialisierung von Amazon-Ion-Dateien verwendet werden soll. Als solche müssen komprimierte Dateien die Dateierweiterung haben, die dem verwendeten Komprimierungs-Algorithmus entspricht. Wenn beispielsweise verwendet ZSTD wird, sollten die entsprechenden Dateien die Erweiterung haben.
.zst
-
Homogene Daten – Amazon Ion hat keine Beschränkungen für die Datentypen, die für Werte in bestimmten Feldern verwendet werden können. Beispielsweise können zwei verschiedene Amazon Ion-Dokumente ein Feld mit demselben Namen haben, das verschiedene Datentypen hat. Da Hive jedoch ein Schema verwendet, müssen alle Werte, die Sie in eine einzelne Hive-Spalte extrahieren, denselben Datentyp haben.
-
Beschränkungen für Schlüsseltypen zuweisen – Wenn Sie Daten aus einem anderen Format in Amazon Ion serialisieren, stellen Sie sicher, dass der Map-Schlüsseltyp einer von
STRING
,VARCHAR
, oderCHAR
ist. Obwohl Sie mit Hive jeden primitiven Datentyp als Zuordnungsschlüssel verwenden können, müssen Amazon-Ion-Symbolevom Typ Zeichenfolge sein. -
Union-Art – Athena unterstützt die Hive-Union-Art
derzeit nicht. -
Doppelter Datentyp — Amazon Ion unterstützt den Datentyp
double
derzeit nicht.