Как написать структурированный поток в S3?
Я искал, как записать результаты структурированного потока в s3, но не смог найти способ сделать это. Я попробовал несколько вариантов, но каждый из них привел к различной ошибке. Вот что я хочу сделать:
- Читать поток CSV
Уменьшите его до 2-3 строк результатов, содержащих средние значения в группе. Как это:
groupA, 15000 groupB, 10000
Затем запишите эти результаты в корзину s3 в одном файле, возможно, перезаписав по мере поступления новых входных потоков. Поэтому я попытался сделать это следующим образом:
query.writeStream .format("text") .option("path", s3n://...") .outputMode("complete") ...
Но это не сработало, Спарк пожаловался, что текстовый формат не может быть в режиме полного вывода. Но разве полный режим не единственный вариант, который может дать мне результаты, которые я хочу? Я также пытался с режимом добавления, но затем spark пожаловался, что у меня есть агрегаты и что у меня должен быть водяной знак. Но разве водяной знак не имеет отношения к моей проблеме, потому что у меня нет меток времени в моем CSV?