У меня есть одна таблица с большим количеством типов данных, и у некоторых данных есть одна информация, которая действительно важна для анализа остальных данных.
Это таблица, которая у меня есть
name |player_id|data_ms|coins|progress |
progress | 1223 | 10 | | 128 |
complete | 1223 | 11 | 154| |
win | 1223 | 9 | 111| |
progress | 1223 | 11 | | 129 |
played | 1111 | 19 | 141| |
progress | 1111 | 25 | | 225 |
Это таблица, которую я хочу
name |player_id|data_ms|coins|progress |
progress | 1223 | 10 | | 128 |
complete | 1223 | 11 | 154| 128 |
win | 1223 | 9 | 111| 129 |
progress | 1223 | 11 | | 129 |
played | 1111 | 19 | 141| 225 |
progress | 1111 | 25 | | 225 |
Мне нужно найти прогресс игрока, используя условие, что это должен быть первый прогресс, выпущенный после data_ms (epoch unixtimstamp) этого события.
В моей таблице 4 миллиарда строк данных, она разбита на данные.
Я пытался создать функцию UDF, которая должна считывать таблицу, фильтрующую ее, но это не вариант, поскольку вы не можете сериализовать искру в UDF.
Есть идеи, как мне это сделать?