Я разделил данные на фиксированный размер windows и записал их в Google Storage с помощью оконных прав, но я не вижу никаких данных до конца работы. Это многодневные задания, и я ожидал увидеть выходные файлы по всему заданию.
Вот код:
val pipe = sc.customInput("JdbcBoundedSource", src)
.timestampBy(e => Instant.ofEpochMilli(e._1))
.map(e => e._2)
.applyTransform(ParDo.of(new UidGenerator()))
.withFixedWindows(Duration.millis(5000000))
val out = TextIO
.write()
.to(new WindowFilenamePolicy(basename, ".txt"))
.withTempDirectory(FileSystems.matchNewResource(tempDir, true))
.withNumShards(1)
.withWindowedWrites() // gets us one file per window & pane
pipe.collect { case (row, _) if row(0).nonEmpty => row.mkString("|") } saveAsCustomOutput("writer", out)
pipe.flatMap { case (_, errors) => errors.map(_.getMessage) } saveAsTextFile(errorlog)
Я даже не вижу файлов в указанном tempDir
во время выполнения задания.