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)