Creare tabelle Amazon Ion
Per creare una tabella in Athena dai dati archiviati in formato Amazon Ion, è possibile utilizzare una delle seguenti tecniche in un'istruzione CREATE TABLE:
-
Specifica
STORED AS ION. In questo utilizzo non è necessario specificare in modo esplicito Amazon Ion Hive SerDE. Questa è l'opzione più semplice. -
Specifica i percorsi della classe Amazon Ion nei campi
ROW FORMAT SERDE,INPUTFORMATeOUTPUTFORMAT.
È possibile utilizzare anche l'istruzione CREATE TABLE AS SELECT (CTAS) per creare tabelle Amazon Ion in Athena. Per informazioni, consulta Utilizzare CTAS e INSERT INTO per creare tabelle Amazon Ion.
Specificare STORED AS ION
La seguente istruzione di esempio CREATE TABLE utilizza STORED AS
ION prima della clausola LOCATION per creare una tabella basata sui dati di volo in formato Amazon Ion. La clausola LOCATION specifica il bucket o la cartella in cui si trovano i file di input in formato Ion. Tutti i file nella posizione specificata vengono scansionati.
CREATE EXTERNAL TABLE flights_ion ( yr INT, quarter INT, month INT, dayofmonth INT, dayofweek INT, flightdate STRING, uniquecarrier STRING, airlineid INT, ) STORED AS ION LOCATION 's3://amzn-s3-demo-bucket/'
Specificare i percorsi della classe Amazon Ion
Invece di usare la sintassi STORED AS ION, è possibile specificare esplicitamente i valori del percorso della classe Ion per le clausole ROW FORMAT SERDE, INPUTFORMAT e OUTPUTFORMAT come segue.
| Parametro | Percorso della classe Ion |
|---|---|
ROW FORMAT SERDE |
'com.amazon.ionhiveserde.IonHiveSerDe' |
STORED AS INPUTFORMAT |
'com.amazon.ionhiveserde.formats.IonInputFormat' |
OUTPUTFORMAT |
'com.amazon.ionhiveserde.formats.IonOutputFormat' |
La seguente query DDL utilizza questa tecnica per creare la stessa tabella esterna dell'esempio precedente.
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' STORED AS INPUTFORMAT 'com.amazon.ionhiveserde.formats.IonInputFormat' OUTPUTFORMAT 'com.amazon.ionhiveserde.formats.IonOutputFormat' LOCATION 's3://amzn-s3-demo-bucket/'
Per informazioni sulle proprietà SerDE per le istruzioni CREATE TABLE in Athena, consulta Informazioni sulla proprietà SerDE di Amazon Ion .