как конвертировать все метки времени в EST в таблице Hive - PullRequest
0 голосов
/ 14 января 2020

У меня есть таблица Hive, которая содержит поле метки времени и может иметь любой часовой пояс .. (UTC / PST / CST ....) Я хочу преобразовать все из них в одну метку времени, EST. это можно сделать либо в Улей, либо в Pyspark. По сути, я использую его в своем приложении pyspark, в котором есть поле логики c в этом поле даты и времени, и перед этим мы хотим преобразовать все времена в таблице Hive в время EST.

Sid

Ответы [ 2 ]

1 голос
/ 15 января 2020

Упоминание о том, что часовой пояс ВИЧ имеет ограничение по максимальному времени, связанному с ошибками Y2K38 и проблемой совместимости JDB C,

тип TIMESTAMP для serde2, который поддерживает отметку времени unix (1970-01 -01 00:00:01 UT C до 2038-01-19 03:14:07 UT C) с дополнительной наносекундной точностью с использованием LazyBinary и LazySimple SerDes. Для LazySimpleSerDe данные хранятся в совместимых с jdb c java. sql .Timestamp разборных строках. HIV-2272

Здесь - это моделирование, связанное с поддержкой временных отметок ранее 1970 и позднее 2038 года.

Hive JDB C не поддерживает столбец TIMESTAMP

Поэтому, я думаю, будет лучше, если вы используете ВИЧ DataType типа Date или String Type. Затем вы можете использовать любое смещение часового пояса в качестве значения по умолчанию для постоянного.

* utc_timestamp is the column name */


/* bellow will convert a timestamp in UTC to EST timezone  */

select from_utc_timestamp(utc_timestamp, 'EST') from table1;

Надеюсь, это поможет.

Типы данных ВИЧ

0 голосов
/ 15 января 2020

Sidd, обычно Hive использует местный часовой пояс хоста, где были записаны данные. Функции from_utc_timestamp () и to_utc_timestamp могут быть нам очень полезны. Вместо того, чтобы указывать часовой пояс как UTC / EST, вы должны использовать местоположение / регион в этом случае, так как это будет учитывать дневную экономию.

Вот полезная ссылка для большего количества примеров: Местное время, преобразованное в UT C Время в улье

Если у вас есть дополнительные вопросы, пожалуйста, поделитесь тем, что у вас уже есть попытался поделиться примером ваших данных для дальнейшего изучения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...