Инкрементная обработка данных в Spark - PullRequest
0 голосов
/ 05 ноября 2018

Я пытаюсь обрабатывать добавочные данные в Pyspark. Ниже приведена текущая система.

История имеет 100 (будет в миллионах, пусть пока для простоты предположим) 100 записей. В рамках последней загрузки мы получили 20 записей, из которых 10 вставок, 5 обновлений существующих записей и остальные 5 удалений.

У нас есть первичный ключ, столбец отметки времени в таблице. Теперь я хочу объединить эти инкрементные данные с историей так, чтобы существующие 5 записей обновлялись, 5 записей в существующих данных должны быть удалены, а 10 новых записей должны быть добавлены, чтобы к новому набору данных было 105 (100 + 10 -5) записей. .

На данный момент я собираюсь объединить историю и инкрементные фреймы данных и на основе метки времени получит самую последнюю запись. Так как есть флаг, чтобы указать, вставлять или обновлять или удалять, используя который я хочу удалить существующие записи.

Есть ли эффективный способ справиться с этим?

...