Criar tabelas do Amazon Ion
Para criar uma tabela no Athena com dados armazenados no formato Amazon Ion, você pode usar uma das seguintes técnicas em uma instrução CREATE TABLE:
-
Especifique
STORED AS ION
. Neste uso, você não precisa especificar explicitamente o Amazon Ion Hive SerDe. Essa escolha é a opção mais direta. -
Especifique os caminhos de classe do Amazon Ion nos campos
ROW FORMAT SERDE
,INPUTFORMAT
eOUTPUTFORMAT
.
Você também pode usar instruções CREATE TABLE AS SELECT
(CTAS) para criar tabelas do Amazon Ion no Athena. Para ter mais informações, consulte Usar CTAS e INSERT INTO para criar tabelas do Amazon Ion.
Especificar STORED AS ION
O exemplo a seguir de instrução CREATE TABLE
usa STORED AS
ION
antes da cláusula LOCATION
para criar uma tabela com base em dados de voo no formato Amazon Ion. A cláusula LOCATION
especifica o bucket ou a pasta em que estão localizados os arquivos de entrada no formato Ion. Todos os arquivos no local especificado estão verificados.
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/'
Especificar caminhos de classe do Amazon Ion
Em vez de usar a sintaxe STORED AS ION
, você pode especificar explicitamente os valores de caminho de classe do Ion para as cláusulas ROW FORMAT SERDE
, INPUTFORMAT
e OUTPUTFORMAT
, como mostrado a seguir.
Parâmetro | Caminho de classe do Ion |
---|---|
ROW FORMAT SERDE |
'com.amazon.ionhiveserde.IonHiveSerDe' |
STORED AS INPUTFORMAT |
'com.amazon.ionhiveserde.formats.IonInputFormat' |
OUTPUTFORMAT |
'com.amazon.ionhiveserde.formats.IonOutputFormat' |
A consulta DDL a seguir usa essa técnica para criar a mesma tabela externa do exemplo anterior.
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/'
Para obter informações sobre as propriedades SerDe para instruções CREATE TABLE
no Athena, consulte Referência de propriedade SerDe do Amazon Ion.