0

.csvファイルをORCファイルとしてHiveテーブルにロードしたい。 以下のクエリを実行した問題の回避策を提案する1 つの投稿に出くわしました。

1) データをテキスト ファイルとして作成し、一時テーブルにロードします。

CREATE TABLE IF NOT EXISTS CrimesData( ID int, Case_Number int, CrimeDate string, Block string , IUCR string,Primary_Type string, Description string, Location_Description string, Arrest string, Domestic string, Beat int, District int, Ward int, Community_Area int, FBI_Code string, X_Coordinate int, Y_Coordinate int, Year int, Updated_On string, Latitude decimal(10,10), Longitude decimal(10,10), CrimeLocation string) 
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' ESCAPED BY '"' LINES TERMINATED BY '\n'
tblproperties("skip.header.line.count"="1")
LOAD DATA LOCAL INPATH '/home/cloudera/Documents/CrimesData.csv' INTO TABLE CrimesData

2) 新しいテーブルを作成し、ソースとして ORC データを指定します。

CREATE TABLE IF NOT EXISTS CrimesDataORC( ID int, Case_Number int, CrimeDate string, Block string , IUCR string,Primary_Type string, Description string, Location_Description string, Arrest string, Domestic string, Beat int, District int, Ward int, Community_Area int, FBI_Code string, X_Coordinate int, Y_Coordinate int, Year int, Updated_On string, Latitude decimal(10,10), Longitude decimal(10,10), CrimeLocation string) 
STORED AS ORC;

3) 一時テーブルから新しいテーブルにデータを挿入します。

INSERT INTO TABLE CrimesDataORC SELECT * FROM CrimesData;

最初の 2 つのステップはエラーなしで実行されますが、ステップ 3 で次のエラーがスローされます。

ステートメントの処理中にエラーが発生しました: FAILED: 実行エラー、org.apache.hadoop.hive.ql.exec.mr.MapRedTask からのコード 2 を返します

Cloudera Manager Quickstart VM 5.8 で上記のクエリを実行しています。

同じデータベース内の別のテーブルに対する同様の手順が期待どおりに機能するため、どこが間違っているのかわかりません。

4

1 に答える 1