Как изменить формат даты в улье

#timestamp #hive

#временная метка #улей

Вопрос:

У меня есть одна таблица в улье со столбцом «даты» (строка) и значением «29.05.2014 11:58:02 AM». Мне нужно изменить тип данных со строки на временную метку для обработки данных, я создал временную таблицу и пытаюсь вставить данные из исходной таблицы:

 create table temp as select 
 level,
 from_unixtime(unix_timestamp(dates,'YYYY-MM-DD HH:MM:SS')) as newTime,
 source,
 eventid,
 task,
 description,
 category 
from logs;
 

Это не сработало .Как это решить?
пожалуйста, помогите.

Ответ №1:

Можете ли вы попробовать unix_timestamp, как показано ниже, и посмотреть, работает ли это.

 unix_timestamp(dates, 'MM/dd/yyyy h:mm:ss a')
 

Чтобы узнать больше о форматировании даты, проверьте эту ссылку: http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

PS: Я не пробовал это, так как у меня сейчас нет настройки улья.

Ответ №2:

Я надеюсь, что понимание приведенного ниже примера может решить проблему

создайте таблицу ex (строка идентификатора, строка времени, строка состояния)
формат строки
поля с разделителями, заканчивающиеся на ‘ t’
строки, заканчивающиеся на ‘ n’
, сохраненные в виде текстового файла;

загрузить локальный входной путь данных ‘/home/jayanthsn/Jay.txt ‘ в таблицу ex;

o/p:

Пользователь01 03-09-2015 10:00 время входа в систему

Пользователь02 04-09-2015 10:00 время входа в систему

Пользователь03 05-09-2015 10:00 время входа в систему

(Приведите формат даты в том виде, в котором он есть, со строковым типом данных.)

Позже создайте еще одну таблицу, сделав этот столбец временной меткой.

создайте таблицу ex1 (строка идентификатора, временная метка времени, строка состояния) формат строки
поля с разделителями, заканчивающиеся на ‘ t’
строки, заканчивающиеся на ‘ n’
, сохраненные в виде текстового файла;

вставить в таблицу ex1 идентификатор выбора, из_unixtime(unix_timestamp(timing,’MM-dd-yyyy HH:mm’)), статус из ex;

o/p:

Пользователь01 2015-03-09 10:00:00 время входа в систему

Пользователь02 2015-04-09 10:00:00 время входа в систему

Пользователь03 2015-05-09 10:00:00 время входа в систему

теперь вы можете получить стандартный формат временной метки.