Hive テーブルの構文とプロパティ¶
Denodo 組み込み MPP から Parquet データセットにアクセスするには、AWS S3、Azure Data Lake などのファイルをメタストアの Hive テーブルにマッピングする必要があります。このマッピングには、 CREATE TABLE
文を使用し、データスキーマ、ファイル形式、およびデータの場所を指定する必要があります。
CREATE TABLE orders (
orderkey bigint,
custkey bigint,
orderstatus varchar,
totalprice double,
orderpriority varchar,
clerk varchar,
shippriority integer,
comment varchar
) WITH (
external_location = 's3a://my_bucket/path/to/folder/',
format = 'PARQUET'
);
external_location
: データの場所は、特定のファイルではなく、バケット名またはバケット名と 1 つまたは複数のフォルダを指定する必要があります。最後にスラッシュを使用することを忘れないでください。スラッシュがない場合、**``Can not create a Path from an empty string``**というエラーが発生します。format
: サポートされるファイル形式は、ORC、PARQUET、AVRO、RCBINARY、RCTEXT、SEQUENCEFILE、JSON、TEXTFILE、CSV です。
CREATE TABLE
の WITH
句を使用して、他のプロパティをテーブルに設定することもできます。使用可能なテーブルプロパティを以下に示します。
avro_schema_url
(varchar): テーブルの Avro スキーマを参照する URI。bucket_count
(integer): バケットの数。bucketed_by
(array(varchar)): バケット化する列。csv_escape
(varchar): CSV のエスケープ文字。csv_quote
(varchar): CSV の引用符文字。csv_separator
(varchar): CSV の区切り文字。dwrf_encryption_algorithm
(varchar): DWRF の暗号化データに使用するアルゴリズム。dwrf_encryption_provider
(varchar): プロバイダーの暗号化キーのプロバイダー。encrypt_columns
(array(varchar)): キー参照と暗号化する列のリスト。例:ARRAY['key1:col1,col2', 'key2:col3,col4']
encrypt_table
(varchar): テーブル全体を暗号化する場合のキー参照。external_location
(varchar): 外部テーブルのファイルシステム上の場所を示す URI。format
(varchar): テーブルの Hive ストレージ形式。指定できる値は、ORC、PARQUET、AVRO、RCBINARY、RCTEXT、SEQUENCEFILE、JSON、TEXTFILE、CSV です。orc_bloom_filter_columns
(array(varchar)): ORC の Bloom フィルタのインデックス列。orc_bloom_filter_fpp
(double): ORC の Bloom フィルタの誤検出確率。partitioned_by
(array(varchar)): パーティション分割列。preferred_ordering_columns
(array(varchar)): バケット化されていないテーブルの優先並べ替え列。sorted_by
(array(varchar)): バケット並べ替え列。