Мне не повезло с решениями, предлагаемыми на этой странице раньше, но потом, наконец, этот небольшой трюк сработал. Я включу его в другое возможное решение.
footer {
position: fixed;
right: 0;
bottom: 0;
left: 0;
padding: 1rem;
background-color: #efefef;
text-align: center;
}
Мы столкнулись с той же проблемой. Мы также удивлены тем, что DataSet
не поддерживает addSink()
.
Я рекомендую не переключаться в режим потоковой передачи. Вы можете отказаться от некоторых оптимизаций (т. Е. Пулов памяти), доступных в пакетном режиме.
Возможно, вам придется реализовать свой собственный OutputFormat , чтобы выполнить группирование.
Вместо этого вы можете расширить OutputFormat[YOUR_RECORD]
(или RichOutputFormat[]
), где вы все еще можете использовать BucketAssigner[YOUR_RECORD, String]
для открытия / записи / закрытия выходных потоков.
Это то, что мы сделали, и это прекрасно работает.
Я надеюсь, что Flink скоро поддержит это в пакетном режиме.