Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
配置单元失败,出现异常java.io.IOException:java.lang.ClassCastException:java.sql.Timestamp无法转换为java.sql.Date_Date_Hadoop_Hive_Apache Pig_Cloudera - Fatal编程技术网

配置单元失败,出现异常java.io.IOException:java.lang.ClassCastException:java.sql.Timestamp无法转换为java.sql.Date

配置单元失败,出现异常java.io.IOException:java.lang.ClassCastException:java.sql.Timestamp无法转换为java.sql.Date,date,hadoop,hive,apache-pig,cloudera,Date,Hadoop,Hive,Apache Pig,Cloudera,我使用的是pig 0.15,将文件存储为ORC格式,如下所示 loading_data= Load '/user/location/emp.csv' using PigStorage('\u241C') AS ( empno:long ,ename:chararray ,job:chararray ,mgr:float ,hiredate:chararray ,sal:bigdecimal ,comm:bigdecimal ,deptno:int ,flag:chararray ); proc

我使用的是pig 0.15,将文件存储为ORC格式,如下所示

loading_data= Load '/user/location/emp.csv' using PigStorage('\u241C') AS (
empno:long
,ename:chararray
,job:chararray
,mgr:float
,hiredate:chararray
,sal:bigdecimal
,comm:bigdecimal
,deptno:int
,flag:chararray
);

processed_data = FOREACH loading_data GENERATE
empno
,ename
,job
,mgr
,ToDate(hiredate,'MM/dd/yyyy HH:mm') as (hiredate:datetime)
,sal
,comm
,deptno
,flag;



store processed_data into '/user/myfolder/newLocation' using OrcStorage();
现在我正在创建蜂巢表,如下所示

CREATE EXTERNAL Table emp123(
  empno    BIGINT,
  ename    STRING,
  job      String,
  mgr      FLOAT,
  hiredate DATE,
  sal      DECIMAL(15,2),
  comm     DECIMAL(10,2),
  deptno   int,
  flag     String
)
comment 'EMP test table'
stored as ORC
location '/user/myfolder/newLocation/'
现在我想运行下面的查询将得到一个错误。 蜂巢>从emp123中选择*; 嗯

异常失败 IOException:java.lang.ClassCastException:java.sql.Timestamp 无法转换为java.sql.Date所用时间:1.478秒


请提供任何建议。

对配置单元表定义使用时间戳而不是日期。您的PigScript具有hireddate列的时间部分。配置单元日期类型没有时间组件

CREATE EXTERNAL Table emp123(
              empno    BIGINT,
              ename    STRING,
              job      String,
              mgr      FLOAT,
              hiredate timestamp,
              sal      DECIMAL(15,2),
              comm     DECIMAL(10,2),
              deptno   int,
              flag     String
)
comment 'EMP test table'
stored as ORC
location '/user/myfolder/newLocation/'