Недавно обновленные разделы в улье

ramu спросил: 28 апреля 2018 в 08:45 в: hive

Есть ли способ в Hive SQL для получить все разделы, обновленные через определенное время?

У меня есть часовые разделы на основе времени транзакции. Очень вероятно, что запись транзакции поступит через несколько часов и достигнет более старого раздела.

Table1 : Hourly partitions
00
01
..
23Table 2 : Daily partitions
After midnight above 24 partitions are aggregated into daily partition in Table2.

После того, как этот ежедневный раздел был создан, поступит набор транзакций поздно, и они добавляются в часовое парирование Table1. Скажите, что они добавлены в раздел часа = 20.

Мне нужно определить, что все разделы получили поздние обновления таким образом. Поэтому, если есть необходимость, я буду пересчитывать данные ежедневного раздела в таблице 2.

1 ответ

Rumoku ответил: 28 апреля 2018 в 08:53

Я бы представил промежуточную таблицу с двумя столбцами: днем ​​и последним измененным временем. Каждый раз, когда появляются поздние записи, обновляйте эту таблицу новыми строками последнего времени обновления.

Таблица2 может использовать эту таблицу, чтобы проверить, действительно ли последнее измененное время > работа последнее время выполнения. Если да, выполните расчет за этот день.

Jaishree Rout ответил: 28 апреля 2018 в 08:59
можете ли вы предоставить примерную таблицу, как то, что у вас есть и что вы хотите.
ramu ответил: 28 апреля 2018 в 10:26
Привет, Jayashree, это больше касается разделов, чем данных. В двух словах я хочу "обновить все разделы после определенного времени"? как описано в начале вопроса.
ramu ответил: 28 апреля 2018 в 10:32
Привет, Rumoku, Спасибо за обновления. Да, мое текущее решение - это родительский раздел last_update_time, который помогает получать данные дельта. то есть. Приложение обрабатывает это. Но ищите родное решение Hive, если оно есть.
Rumoku ответил: 28 апреля 2018 в 10:40
Используя describe formatted для раздела таблицы, вы можете определенно извлечь время и время последнего доступа, но не уверены, есть ли возможность извлечь последнее время модификации (возможно, один из них представляет его). Вы можете изучить этот подход!
ramu ответил: 28 апреля 2018 в 01:40
Rumoku describe formatted не помог мне определить последнее обновленное время разделов.