Beispiele für Pfadextraktoren
Die folgenden Beispiele für Pfadextraktoren zeigen, wie Sie Felder abflachen und umbenennen oder Daten als Amazon Ion-Text extrahieren.
Felder abflachen und umbenennen
Das folgende Beispiel zeigt eine Reihe von Suchpfaden, die Felder abflachen und umbenennen. Im Beispiel werden Suchpfade verwendet, um Folgendes durchzuführen:
-
Ordnen Sie die
nickname-Spalte demalias-Feld zu -
Ordnen Sie die
name-Spalte demname-Unterfeld zu, das sich in deridentification-Struktur befindet.
Es folgt das Beispiel für Amazon-Ion-Dokument.
-- Example Amazon Ion Document { identification: { name: "John Smith", driver_license: "XXXX" }, alias: "Johnny" }
Das Folgende ist die beispielhafte CREATE TABLE-Anweisung, die die Pfad-Extraktoren definiert.
-- Example DDL Query CREATE EXTERNAL TABLE example_schema2 ( name STRING, nickname STRING ) ROW FORMAT SERDE 'com.amazon.ionhiveserde.IonHiveSerDe' WITH SERDEPROPERTIES ( 'ion.nickname.path_extractor' = '(alias)', 'ion.name.path_extractor' = '(identification name)' ) STORED AS ION LOCATION 's3://amzn-s3-demo-bucket/path_extraction2/'
Das folgende Beispiel zeigt die extrahierten Dateien.
-- Extracted Table | name | nickname | |--------------|--------------| | "John Smith" | "Johnny" |
Weitere Informationen zu Suchpfaden und weitere Beispiele für Suchpfade finden Sie auf der Seite Ion-Java-Pfad-Extraktion
Flugdaten in Textformat extrahieren
Die folgende CREATE TABLE-Beispielabfrage verwendet WITH
SERDEPROPERTIES, um Pfad-Extraktoren zum Extrahieren von Flugdaten hinzuzufügen und die Ausgabecodierung als Amazon-Ion-Text anzugeben. Im Beispiel wird die STORED AS
ION-Syntax verwendet.
CREATE EXTERNAL TABLE flights_ion ( yr INT, quarter INT, month INT, dayofmonth INT, dayofweek INT, flightdate STRING, uniquecarrier STRING, airlineid INT, ) ROW FORMAT SERDE 'com.amazon.ionhiveserde.IonHiveSerDe' WITH SERDEPROPERTIES ( 'ion.encoding' = 'TEXT', 'ion.yr.path_extractor'='(year)', 'ion.quarter.path_extractor'='(results quarter)', 'ion.month.path_extractor'='(date month)') STORED AS ION LOCATION 's3://amzn-s3-demo-bucket/'