Size: a a a

Scala User Group

2020 February 12

NR

Nikita Ryanov in Scala User Group
Python
А в чём смысл этих танцев? Какой added value у Флинка? Может есть какие-нибудь крутые примеры срывающие башку скептикам.
Наверное, каких-то ультра крышесносных фич нет, скорее выбор будет зависеть от задачи, которую необходимо решать. Если это задачи с большими данными, что бы не подразумевалось под этим понятием, то я слабо представляю себе в этом случае кафка стримы просто из-за оверхеда, которые они пораждают. В целом, если отбросить решаемую задачу, то инструменты очень похожи.

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

Чего у кстримов нет, но, опять-таки можно реализовать, так это механизма чтения данных откуда-либо еще, кроме как кафки. У флинка все это есть из коробки и есть возможность добавлять новые источники/таргеты.
источник

P

Python in Scala User Group
Nikita Ryanov
Наверное, каких-то ультра крышесносных фич нет, скорее выбор будет зависеть от задачи, которую необходимо решать. Если это задачи с большими данными, что бы не подразумевалось под этим понятием, то я слабо представляю себе в этом случае кафка стримы просто из-за оверхеда, которые они пораждают. В целом, если отбросить решаемую задачу, то инструменты очень похожи.

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

Чего у кстримов нет, но, опять-таки можно реализовать, так это механизма чтения данных откуда-либо еще, кроме как кафки. У флинка все это есть из коробки и есть возможность добавлять новые источники/таргеты.
Меня скорее интересует сравнение с написанием вручную, а не с Kafka-Streams. Я зря их упомянул, запутал всех.
источник

🔝P

🔝Ivan Popovich 🔝 in Scala User Group
Python
А в чём смысл этих танцев? Какой added value у Флинка? Может есть какие-нибудь крутые примеры срывающие башку скептикам.
Flink достаточно зрелый по сравнению с Kafka Streams. По моему ощущению это в принципе разные весовые категории. Если смотреть Flink, то стоит обратить внимание на Spark Streaming (возможно structured streaming).

По сравнению со спарком api у Flink приятнее (заявленная поддержка Scala - это чистый java-style все-равно). Как уже написали выше - у Flink есть  коннекторы к source и sink (https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/connectors/). Соответственно можно написать джоб, который будет одновременно читать из Kafka и  Nifi.

Api для навешивания мониторинга на свои операторы внутри джоба - тоже ок из коробки. Есть работа со временем события (https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/event_time.html).

В последнее время во Flink затаскивают функционал из Blink (flink, модифицированный Alibaba). Отдельными модулям к Flink есть поддержка CEP (на мой взгляд весьма ограниченная) и анализ графов. Если не хочется использовать  Flink (Spark, Apex, Samza и т.п.) и есть желание абстрагироваться - то стоит посмотреть на Apache Beam.
источник

🔝P

🔝Ivan Popovich 🔝 in Scala User Group
Python
Меня скорее интересует сравнение с написанием вручную, а не с Kafka-Streams. Я зря их упомянул, запутал всех.
что ты имеешь в виду под написанием вручную? У них есть examples на сайте: https://ci.apache.org/projects/flink/flink-docs-release-1.9/getting-started/tutorials/datastream_api.html
источник

AV

Abyr Valg in Scala User Group
Mikhail Belikov
Или Вы имеете в виду, что ничего сравнимого со спрингом для скалы нет? Ну это мы уже тоже поняли
Есть, конечно.
источник

P

Python in Scala User Group
🔝Ivan Popovich 🔝
Flink достаточно зрелый по сравнению с Kafka Streams. По моему ощущению это в принципе разные весовые категории. Если смотреть Flink, то стоит обратить внимание на Spark Streaming (возможно structured streaming).

По сравнению со спарком api у Flink приятнее (заявленная поддержка Scala - это чистый java-style все-равно). Как уже написали выше - у Flink есть  коннекторы к source и sink (https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/connectors/). Соответственно можно написать джоб, который будет одновременно читать из Kafka и  Nifi.

Api для навешивания мониторинга на свои операторы внутри джоба - тоже ок из коробки. Есть работа со временем события (https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/event_time.html).

В последнее время во Flink затаскивают функционал из Blink (flink, модифицированный Alibaba). Отдельными модулям к Flink есть поддержка CEP (на мой взгляд весьма ограниченная) и анализ графов. Если не хочется использовать  Flink (Spark, Apex, Samza и т.п.) и есть желание абстрагироваться - то стоит посмотреть на Apache Beam.
Спасибо!
источник

λ

λλ in Scala User Group
Python
Меня скорее интересует сравнение с написанием вручную, а не с Kafka-Streams. Я зря их упомянул, запутал всех.
берешь фс2 кафка либу и поехать месить в чем проблема то, оверхед время на написание не больше
источник

P

Python in Scala User Group
λλ
берешь фс2 кафка либу и поехать месить в чем проблема то, оверхед время на написание не больше
Вот и мне так кажется
источник

λ

λλ in Scala User Group
Python
Вот и мне так кажется
+ разные проблемы типо делдупликации , шардирования стримов , запоминание офсетов, ресайлент ошибок
источник

λ

λλ in Scala User Group
и тд
источник

λ

λλ in Scala User Group
все ручками
источник

λ

λλ in Scala User Group
больше контроль больше времени на написание
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Поздравляю, похоже в первый раз нормально зашёл
источник

MB

Mikhail Belikov in Scala User Group
ага, кнопку нашел 🙂
источник

IZ

Ilya Zhavoronkov in Scala User Group
всем привет. может кто по sbt плз подсказать? таска выполняет вот такую команду и возвращает всегда exit code 1. в консоли эта же команда возвращает 0. если в sbt выполнить только docker info, то все пашет, но он в лог фигачит весь output. задача убрать этот output из лога таски
источник

VC

Vadim ChelyshOv in Scala User Group
Ilya Zhavoronkov
всем привет. может кто по sbt плз подсказать? таска выполняет вот такую команду и возвращает всегда exit code 1. в консоли эта же команда возвращает 0. если в sbt выполнить только docker info, то все пашет, но он в лог фигачит весь output. задача убрать этот output из лога таски
прикол в перенаправлении - нельзя его юзать в  process api юзать вот так из строки
источник

IZ

Ilya Zhavoronkov in Scala User Group
Vadim ChelyshOv
прикол в перенаправлении - нельзя его юзать в  process api юзать вот так из строки
именно перенаправление?
источник

IZ

Ilya Zhavoronkov in Scala User Group
в seq обернуть что ли?
источник

IZ

Ilya Zhavoronkov in Scala User Group
Vadim ChelyshOv
прикол в перенаправлении - нельзя его юзать в  process api юзать вот так из строки
так тоже не пашет
источник

VD

Vladislav Dolbilov in Scala User Group
попробуй
"bash -c 'docker info ...'"
источник