■ はじめに
https://dk521123.hatenablog.com/entry/2020/05/27/175610
などで、でてきたトラブルを纏める
目次
【1】エラー「Column repeated in partitioning columns」が発生する 【2】エラー「Need to specify partition columns」が表示 ※ その他のHiveに関するトラブルシュートは、以下の関連記事を参照のこと。
Hive に関するトラブルシューティング
https://dk521123.hatenablog.com/entry/2020/11/20/174039
【1】エラー「Column repeated in partitioning columns」が発生する
エラー内容
FAILED:SemanticException [Error 10035]: Column repeated in partitioning columns
原因
英語のメッセージ Column repeated in partitioning columns ⇒ パーティション項目内に、項目重複された
発生例
CREATE EXTERNAL TABLE person ( id BIGINT, name STRING, created_date TIMESTAMP -- ★ ) PARTITIONED BY (created_date TIMESTAMP) -- ★ ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' LOCATION 's3://your-s3-buket/demo';
解決案
パーティションで使っている項目をテーブル項目から除外する
修正例
CREATE EXTERNAL TABLE person ( id BIGINT, name STRING ) PARTITIONED BY (created_date TIMESTAMP) -- ★ ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' LOCATION 's3://your-s3-buket/demo';
【2】エラー「Need to specify partition columns」が表示
エラー内容
SemanticException [Error 10062]: Need to specify partition columns because the destination table is partitioned
発生したHQL
CREATE EXTERNAL TABLE IF NOT EXISTS person( id string, name string) PARTITIONED BY ( created_at string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION 's3://your-bucket/hello/world/'; INSERT INTO TABLE person SELECT id, name, created_at FROM temp_person;
原因
INSERT INTO TABLE した際に、partitionを明示的に指定していなかったため。
発生したHQL
-- PARTITION(created_at) を追加 INSERT INTO TABLE person PARTITION(created_at) SELECT id, name, created_at FROM temp_person;
参考文献
https://kaoru2012.blogspot.com/2018/07/hivesemanticexception-error-10062-need.html
関連記事
Amazon EMR ~ 基本編 ~
https://dk521123.hatenablog.com/entry/2020/05/27/175610
Amazon EMR ~ EMRFS ~
https://dk521123.hatenablog.com/entry/2020/11/13/145545
Amazon EMR に関するトラブルシューティング
https://dk521123.hatenablog.com/entry/2020/08/05/144724
Hive / HiveQL ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2019/11/25/235219
Hive / HiveQL ~ あれこれ編 ~
https://dk521123.hatenablog.com/entry/2020/03/04/225943
Hive / HiveQL ~ パーティション / Partition 機能 ~
https://dk521123.hatenablog.com/entry/2020/07/16/224332
Hive に関するトラブルシューティング
https://dk521123.hatenablog.com/entry/2020/11/20/174039
エラー「SemanticException Cartesian products are disabled for safety reasons」が発生する
https://dk521123.hatenablog.com/entry/2021/06/12/093046
EMR / DBアクセス に関するトラブルシューティング
https://dk521123.hatenablog.com/entry/2021/06/17/114611
テーブルアクセス時に例外「Vertex failed, ... InvalidInputException」が発生する
https://dk521123.hatenablog.com/entry/2021/07/06/120134