Athena では、CREATE TABLE AS SELECT
(CTAS) と INSERT INTO
ステートメントを使用して、テーブルのデータを Amazon Ion 形式で新しいテーブルにコピーまたは挿入できます。
CTAS クエリでは、次の例のように、WITH
句に format='ION'
を指定します。
CREATE TABLE new_table
WITH (format='ION')
AS SELECT * from existing_table
デフォルトでは、Athena は Amazon Ion の結果を Ion バイナリ形式WITH
句に ion_encoding = 'TEXT'
を指定します。
CREATE TABLE new_table
WITH (format='ION', ion_encoding = 'TEXT')
AS SELECT * from existing_table
CTAS WITH
句の Amazon Ion 固有のプロパティの詳細については、「CTAS WITH 句の Amazon Ion プロパティ」を参照してください。
CTAS WITH 句の Amazon Ion プロパティ
CTAS クエリで WITH
句を使用すると、Amazon Ion 形式を指定できるほか、必要に応じて Amazon Ion エンコードを指定したり、使用する圧縮アルゴリズムを記述したりできます。
- format
-
CTAS クエリの
WITH
句では、形式オプションとしてION
キーワードを指定できます。このようにしてテーブルを作成すると、IonInputFormat
に指定した形式でデータが読み取られ、IonOutputFormat
に指定した形式でデータがシリアル化されます。次の例では、CTAS クエリで Amazon Ion 形式を使用するように指定しています。
WITH (format='ION')
- ion_encoding
-
オプションです。
デフォルト:
BINARY
値:
BINARY
、TEXT
Amazon Ion バイナリ形式と Amazon Ion テキスト形式のどちらでデータをシリアル化するかを指定します。次の例では、Amazon Ion テキスト形式を指定しています。
WITH (format='ION', ion_encoding='TEXT')
- write_compression
-
オプションです。
デフォルト:
GZIP
値:
GZIP
、ZSTD
、BZIP2
、SNAPPY
、NONE
出力ファイルの圧縮に使用する圧縮アルゴリズムを指定します。
次の例では、Zstandard
圧縮アルゴリズムを使用して CTAS クエリの出力を Amazon Ion 形式で生成するように指定しています。 WITH (format='ION', write_compression = 'ZSTD')
Athena での圧縮の使用の詳細については、「Athena で圧縮を使用する」を参照してください。
Athena のその他の CTAS プロパティについては、「CTAS テーブルのプロパティ」を参照してください。