Apache Pig - ToDate ()
Esta função é usada para gerar um DateTime objeto de acordo com os parâmetros fornecidos.
Sintaxe
A sintaxe de ToDate() função pode ser qualquer uma das seguintes -
grunt> ToDate(milliseconds)
grunt> ToDate(iosstring)
grunt> ToDate(userstring, format)
grunt> ToDate(userstring, format, timezone)
Exemplo
Suponha que haja um arquivo chamado date.txt no HDFS diretório /pig_data/. Este arquivo contém os detalhes da data de nascimento de uma determinada pessoa, id, data e hora.
date.txt
001,1989/09/26 09:00:00
002,1980/06/20 10:22:00
003,1990/12/19 03:11:44
E, carregamos este arquivo no Pig com uma relação chamada date_data como mostrado abaixo.
grunt> date_data = LOAD 'hdfs://localhost:9000/pig_data/date.txt' USING PigStorage(',')
as (id:int,date:chararray);
A seguir está um exemplo do ToDate()função. Aqui, estamos convertendo o objeto DateTime correspondente à data de nascimento de cada funcionário.
grunt> todate_data = foreach date_data generate ToDate(date,'yyyy/MM/dd HH:mm:ss')
as (date_time:DateTime >);
O resultado (DateTime objeto de cada funcionário) do extrato será armazenado na relação nomeada todate_data. Verifique o conteúdo desta relação usando o operador Dump conforme mostrado abaixo.
grunt> Dump todate_data;
(1989-09-26T09:00:00.000+05:30)
(1980-06-20T10:22:00.000+05:30)
(1990-12-19T03:11:44.000+05:30)