次のようにデータがロードされたテーブルがあります。
create table xyzlogTable (dateC string , hours string, minutes string, seconds string, TimeTaken string, Method string, UriQuery string, ProtocolStatus string) row format serde 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe' with serdeproperties( "input.regex" = "(\\S+)\\t(\\d+):(\\d+):(\\d+)\\t(\\S+)\\t(\\S+)\\t(\\S+)\\t(\\S+)", "output.format.string" = "%1$s %2$s %3$s %4$s %5$s %6$s %7$s %8$s") stored as textfile;
load data local inpath '/home/hadoop/hive/xyxlogData/' into table xyxlogTable;
行数の合計は 300 万を超えています。正常に動作するクエリもあれば、無限ループに陥るクエリもあります。
select , group byクエリに時間がかかり、結果が返されないこともあるため、パーティショニングを行うことにしました。
ただし、次のステートメントは両方とも失敗しています。
create table xyzlogTable (datenonQuery string , hours string, minutes string, seconds string, TimeTaken string, Method string, UriQuery string, ProtocolStatus string) partitioned by (dateC string);
FAILED: メタデータのエラー: AlreadyExistsException(message:Table xyzlogTable already exists) FAILED: 実行エラー、org.apache.hadoop.hive.ql.exec.DDLTask からの戻りコード 1
Alter table xyzlogTable (datenonQuery string , hours string, minutes string, seconds string, TimeTaken string, Method string, UriQuery string, ProtocolStatus string) partitioned by (dateC string);
失敗: 解析エラー: 行 1:12 は、alter table ステートメントの入力 'xyzlogTable' を認識できません
問題は何ですか?