Скользящее среднее за 7 дней с использованием секунд Unix в Hive - PullRequest
0 голосов
/ 09 декабря 2018

Мне нужно найти скользящее среднее значение температуры за 7 дней.

Используя строки даты, предоставленные в моем наборе данных, я создал метку времени Unix.Я заменил первую метку времени каждого дня соответствующей меткой времени Unix в полночь этого дня.

The data looks like this

В одной неделе 604800 секунд unix, поэтому я попытался использовать следующуюкод для расчета, но это не сработало.Как я могу исправить этот код, чтобы он правильно выполнял вычисления в окне?

DROP VIEW IF EXISTS every_7_days;
CREATE VIEW every_7_days AS
SELECT weather_dt,
       time,
       fixed_unix_time,
       temperature,
       avg(temperature) OVER(ORDER BY fixed_unix_time RANGE BETWEEN 604800 PRECEDING AND CURRENT ROW) AS roll7day_avg
  FROM clean_first_row
  ORDER BY fixed_unix_time;
...