17.10 - 例: Parquetデータにアクセスする外部テーブルの作成 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-171K-JPN
Language
日本語 (日本)

この例では、Parquetデータにアクセスするための外部テーブルの作成方法を示します。テーブル定義には、河川流量のParquetファイルを含むリモート リポジトリにアクセスするための許可オブジェクトが含まれます。

CREATE AUTHORIZATION文

CREATE AUTHORIZATION MyAuthObj
USER 'YOUR-ACCESS-KEY-ID' 
PASSWORD 'YOUR-SECRET-ACCESS-KEY';

Parquetデータ スキーマ

message schema {
optional double GageHeight2;
optional double Flow;
optional int64 site_no;
optional binary datetime (UTF8);
optional double Precipitation;
optional double GageHeight;
}

CREATE FOREIGN TABLE文

次の文では、外部テーブルを作成し、許可MyAuthObjを指定します。このテーブル定義では、河川流量データにおける各Parquet論理データ型の対応するTeradataデータ型を使用して列を定義します。列の定義は、Parquetファイル内のデータ形式と位置に一致する必要があります。Parquet外部テーブルは、列でパーティション化されます。

CREATE FOREIGN TABLE riverflow_parquet
, EXTERNAL SECURITY MyAuthObj
(
Location VARCHAR(2048) CHARACTER SET UNICODE CASESPECIFIC
, GageHeight2 DOUBLE PRECISION
, Flow DOUBLE PRECISION
, site_no BIGINT
, datetime VARCHAR(16) CHARACTER SET UNICODE CASESPECIFIC
, Precipitation DOUBLE PRECISION
, GageHeight DOUBLE PRECISION
)
USING (
LOCATION ('/S3/YOUR-BUCKET.s3.amazonaws.com/PARQUETDATA')
STOREDAS ('PARQUET')
) NO PRIMARY INDEX
PARTITION BY COLUMN ;

外部テーブルからデータを選択

次の文では、行数、最大値、最小値をriverflow_parquetから取得します。

SELECT COUNT(Flow) AS count_col
, MAX(Flow) ( FORMAT '-ZZZZ9.99') AS max_col
, MIN(Flow) ( FORMAT '-ZZZZ9.99') AS min_col
FROM riverflow_parquet;
   count_col    max_col    min_col
-----------  ---------  ---------
      15406    1570.00       0.00