Как получить агрегированные данные за определенный день в потоковой передаче с искрой

Я бы переписал основную функцию как нечто:

def GetStudentInput():
  score = 0
  for i in range (4):
      print("Mrs Pearson's Class Test Score Data")
      name = CheckStringInput("What's Your Name: ")
      score += CheckNumericInput("What's Your Score: ")
  print(score)

Это устраняет необходимость в дополнительной функции и позволяет избежать использования списка, поскольку вам не нужны отдельные значения в другом месте - - всего сумма.

0
задан BigD 19 January 2019 в 13:05
поделиться

1 ответ

Я не уверен, что точно понимаю ситуацию, но позвольте мне попытаться ответить.

Я бы рекомендовал выполнить двухэтапный процесс:

  1. Потоковая передача Spark сохраняет мини-пакеты во временную папку формата:

/yyy-mm-dd/<offset from the day start>.parquet

2019-02-06/100000.parquet, 2019-02-06/200000.parquet

  1. Другая искровая работа читает из соответствующего местоположения и выполняет агрегацию и фильтрацию времени.

Вы можете использовать библиотеку, подобную luigi , чтобы управлять ими.

0
ответ дан Vlad Vlaskin 19 January 2019 в 13:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: