The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"Доступна система распределённых вычислений Apache Storm 2.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от opennews (??), 03-Июн-19, 10:47 
Увидел свет (http://storm.apache.org/2019/05/30/storm200-released.html) значительный выпуск системы распределённой обработки событий Apache Storm 2.0 (http://storm.apache.org/), примечательный переходом на новую архитектуру, реализованную на языке Java, вместо ранее применяемого языка Clojure.


Проект позволяет организовать гарантированную обработку различных событий в режиме реального времени. Например, Storm можно применять для анализа потоков данных в режиме реального времени, выполнения задач для машинного обучения, организации непрерывных вычислений, реализации RPC, ETL и т.п. Система поддерживает кластеризацию, создание отказоустойчивых конфигураций, режим гарантированной обработки данных и обладает высокой производительностью, достаточной для обработки более миллиона запросов в секунду на одном узле кластера.


Поддерживается интеграция с различными системами обработки очередей и технологиями баз данных. Архитектура Storm подразумевает приём и обработку неструктурированных постоянно обновляемых потоков данных с использование произвольных сложных обработчиков с возможностью секционирования между различными стадиями вычислений. Проект был передан сообществу Apache после поглощения Twitter компании BackType, изначально разработавшей фреймворк.  На практике Storm применялся в BackType для анализа отражения событий в микроблогах, путём сопоставления на лету новых твитов и используемых в них ссылок (например, производилась оценка, как внешние ссылки или публикуемые в Twitter анонсы, ретранслируются другими участниками).


Функциональность Storm сравнивается с платформой Hadoop, при этом ключевым отличием является то, что данные не размещены в хранилище, а поступают извне и обрабатываются в режиме реального времени. В Storm нет встроенной прослойки для организации хранилища и аналитический запрос начинает применяться к поступающим данным до тех пор, пока не будет отменен (если в Hadoop используются занимающие конечное время MapReduce-работы, то в Storm применяется идея непрерывно выполняемых "топологий"). Выполнение обработчиков может быть распределено на несколько серверов - Storm автоматически распараллеливает работу с потоками на разные узлы кластера.

Изначально система была написана на языке Clojure и выполняется внутри виртуальной машины JVM. В фонде Apache была запущена инициативы по переводу Storm на новое ядро, написанное на Java, результаты которой предложены в выпуске Apache Storm 2.0. Все базовые компоненты платформы переписаны на Java. Поддержка написания обработчиков на Clojure  сохранена, но теперь предлагается в виде биндингов. Для работы  Storm 2.0.0 требуется наличие Java 8. Полностью переработана модель многопоточной обработки, что позволило добиться (https://yahoodevelopers.tumblr.com/post/185258393008/apache-...) заметного прироста производительности (для некоторых топологий задержки сократились на 50-80%).


В новой версии также предложен новый типизированный API Streams, позволяющий задавать обработчики, используя операции в стиле функционального программирования. Новый API реализован поверх штатного базового API и поддерживает автоматическое объединение операций для оптимизации их обработки. В API Windowing для оконных операций добавлена поддержка сохранения и восстановления состояния в бэкенде.


В планировщик запуска обработчиков добавлена поддержка учёта дополнительных ресурсов при принятии решений,  не ограничивающихся
CPU и памятью, таких как параметры сети и GPU. Внесено большое число улучшений, связанных с обеспечением интеграции с платформой Kafka (http://kafka.apache.org/). Расширена система контроля доступа, в которой появилась возможность создания групп администраторов и делегирования токенов. Добавлены улучшения, связанные с поддержкой SQL и метрик. В интерфейсе администратора  появились новые команды  для отладки состояния кластера.


Области применения Storm:


-  Обработка потоков новых данных или обновлений БД в реальном времени;

-  Непрерывные вычисления: Storm может выполнять непрерывные запросы и обрабатывать непрерывные потоки, передавая  результаты обработки клиенту в режиме реального времени.


-  Распределенный удаленный вызов процедур (RPC): Storm может быть использован для обеспечения параллелизма выполнения ресурсоёмких запросов. Задание ("топология") в Storm представляет собой распределенную по узлам функцию, которая ожидает поступления сообщений, которые нужно обработать. После приёма сообщения, функция обрабатывает его в локальном контексте и возвращает результат. Примером использования распределенного RPC может быть параллельная обработка поисковых запросов или выполнение операций над большим набором множеств.


Особенности Storm:


-  Простая модель программирования, значительно упрощающая обработку данных в режиме реального времени;


-  Поддержка любых языков программирования. Имеются модули для языков Java, Ruby и Python, адаптация для других языков не вызывает сложности благодаря очень простому коммуникационному протоколу, для реализации поддержки которого требуется около 100 строк кода;


-  Отказоустойчивость: для запуска задания по обработке данных требуется сформировать jar-файл с кодом. Storm самостоятельно распространит данный jar-файл по узлам кластера, подключит связанные с ним обработчики и организует мониторинг. При завершении задания код будет автоматически отключен на всех узлах;


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


-  Надежность. Storm гарантирует, что каждое поступающее сообщение будет полностью обработано как минимум один раз. Один раз сообщение будет обработано только в случае отсутствия ошибок при прохождении всех обработчиков, если возникли проблемы, то неудачные попытки обработки будут повторены.


-  Скорость. Код Storm написан с оглядкой на высокую производительность и использует для быстрого асинхронного обмена сообщениями систему ZeroMQ (https://www.opennet.ru/opennews/art.shtml?num=27137).

URL: http://storm.apache.org/2019/05/30/storm200-released.html
Новость: https://www.opennet.ru/opennews/art.shtml?num=50796

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Доступна система распределённых вычислений Apache Storm 2.0"  –2 +/
Сообщение от Вася (??), 03-Июн-19, 10:47 
Наконец-то на норм язык переписали, Java годный язык.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. "Доступна система распределённых вычислений Apache Storm 2.0"  –3 +/
Сообщение от Аноним (8), 03-Июн-19, 11:17 
$2,50 за рабочее место в месяц. Спасибо, не нужно.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

9. "Доступна система распределённых вычислений Apache Storm 2.0"  +3 +/
Сообщение от Аноним (9), 03-Июн-19, 11:24 
Если рабочее место не приносит даже 2.5$ дохода в месяц, то скорее всего рабочие процессы организованы неправильно.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

18. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Michael (??), 03-Июн-19, 13:40 
а как же швободно, открыто и для всех?
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

20. "Доступна система распределённых вычислений Apache Storm 2.0"  +1 +/
Сообщение от Аноним (20), 03-Июн-19, 14:02 
> не приносит даже 2.5$ дохода в месяц

Под 2.5$ вы, конечно, подразумеваете 2.5$+работа бухгалтера по оформлению этих оплат, возможные консультации юристов по оформлению договора, постоянный мониторинг, сколько сотрудников появилось а сколько уволилось, постоянная головная боль на тему того, когда заканчивается месяц и пора оплачивать, работу админов по взаимодействию с ними по поводу предоставления новых лицензий/отключения ненужных старых и по поводу ввода этих ключей сотрудникам.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

21. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от jOKer (ok), 03-Июн-19, 14:46 
Вообще-то в IT, при сравнении различных реализаций одной и той же системы, принято оперировать общей стоимостью владения, а вовсе даже не стоимостью одного рабочего места.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

28. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Аноним (28), 04-Июн-19, 10:19 
Это если вам сертификат нужен, и бумажка что-бы снять с себя ответственность на случай "если что-то пойдёт не так", но в таком варианте 2.5$ это очень не дорого...
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

33. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от MVK (??), 05-Июн-19, 16:14 
OpenJDK бесплатно
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

2. "Доступна система распределённых вычислений Apache Storm 2.0"  –1 +/
Сообщение от Анонимус2 (?), 03-Июн-19, 10:54 
>ZeroMQ

Оно ещё шевелится? Вроде никому оказалось не нужным и загнулось.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

11. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от загибатор (?), 03-Июн-19, 11:32 
Ну судя по википедии, последний релиз был ажно в январе сиего года. Пациент скорее жив, чем мёртв.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

3. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Anonymoustus (ok), 03-Июн-19, 10:56 
> реализованную на языке Java, вместо ранее применяемого языка Clojure

А что ж так? Не зашла хипсторам модная, стильная, молодёжная Clojure?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Доступна система распределённых вычислений Apache Storm 2.0"  –2 +/
Сообщение от Ordu (ok), 03-Июн-19, 11:06 
clojure -- это лисп-машина в jvm, на фоне него java выглядит детским хипстерством.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

15. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от freehckemail (ok), 03-Июн-19, 13:03 
Скорее всего, просто пользователи не осилили кложу -- и шторм переориентировали на массового пользователя. Оно так часто с лиспами бывает. )
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

22. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Anonymoustus (ok), 03-Июн-19, 14:51 
> Скорее всего, просто пользователи не осилили кложу -- и шторм переориентировали на
> массового пользователя. Оно так часто с лиспами бывает. )

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


Ага, вот и ссылочку ниже в комментах пишут и статью цитируют. Всё так и есть.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

29. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Аноним (29), 04-Июн-19, 11:57 
На нём пишет 2 с половиной задр..та.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

32. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Anonymoustus (ok), 04-Июн-19, 15:03 
> На нём пишет 2 с половиной задр..та.

«…язык Clojure требует изменить взгляды на разработку и в итоге это окупится» — так они говорят.

Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

4. "Доступна система распределённых вычислений Apache Storm 2.0"  –3 +/
Сообщение от Аноним (4), 03-Июн-19, 11:00 
> гарантированную обработку различных событий в режиме реального времени

Если на тачку поставить, хруста или кеглю распознать успеет?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

16. "Доступна система распределённых вычислений Apache Storm 2.0"  +1 +/
Сообщение от пох. (?), 03-Июн-19, 13:14 
угу, и выведет тебе на экран ачивку.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

7. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от proninyaroslavemail (ok), 03-Июн-19, 11:16 
Интересна причина перехода с clojure.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. "Доступна система распределённых вычислений Apache Storm 2.0"  +1 +/
Сообщение от Аноним (10), 03-Июн-19, 11:29 
В статье написано, что Clojure долгие годы работал исправно и реальная причина смены языка разработки - привлечь больше контрибьюторов.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

23. "Доступна система распределённых вычислений Apache Storm 2.0"  –2 +/
Сообщение от Wilem (?), 03-Июн-19, 14:52 
Надо обладать специфическим устройством головы, что бы писать на чём-либо лиспоподобном. Другими словами, никому это не нужно.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

25. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Junior frontend developer (?), 03-Июн-19, 15:54 
Логика понятна, но на практике как-то сомнительно, что переход на джаву заинтересует кого-то.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

27. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от proninyaroslavemail (ok), 03-Июн-19, 20:06 
Ну позиции явы в корпоративной разработке всё ещё сильны, на то и расчитано.
Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

12. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Аноним (10), 03-Июн-19, 11:39 
Взято отсюда: https://yahoodevelopers.tumblr.com/post/185258393008/apache-...

Один из главных разработчиков Storm пишет, что кложа лучше  java по множественным параметрам.

Clojure is a wonderful language with many advantages over pure Java, but its prevalence in Storm became a hindrance for many developers who weren’t very familiar with it and didn’t have the time to learn it. Due to this, the community decided to port all of the daemon processes over to pure Java.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "Доступна система распределённых вычислений Apache Storm 2.0"  +6 +/
Сообщение от Аноним (13), 03-Июн-19, 11:55 
> didn’t have the time to learn it

Теперь я знаю, как по-английски будет "уяк-уяк и в продакшон"

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

17. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Смузийная (?), 03-Июн-19, 13:18 
Надо было на JS переписать.
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

19. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от anonymous (??), 03-Июн-19, 13:44 
похоже головастым ребятам, которые поднимали проект используя продвинутый инструмент, стало неинтересно, или может даже их попросили
а теперь передают обычным энтерпрайз-обезьянкам на зарплате, которым никакая clojure очевидно неинтересна
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

24. "Доступна система распределённых вычислений Apache Storm 2.0"  –2 +/
Сообщение от Wilem (?), 03-Июн-19, 14:56 
Нормальные разработчики пишут не на жаве конечно, а на котлине. Лисп это из разряда brainfuck, никому кроме энтузиастов не нужный.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

30. "Доступна система распределённых вычислений Apache Storm 2.0"  +/
Сообщение от Аноним (28), 04-Июн-19, 12:10 
т.е. только на андроиде есть нормальные разработчики, я вас правильно понял?
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

14. "Доступна система распределённых вычислений Apache Storm 2.0"  +2 +/
Сообщение от Аноним (14), 03-Июн-19, 12:49 
>реализованную на языке Java, вместо ранее применяемого языка Clojure

Что-то подсказывает, что от перестановки слагаемых...

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

26. "Доступна система распределённых вычислений Apache Storm 2.0"  –1 +/
Сообщение от Антонио (??), 03-Июн-19, 15:59 
"Сумма" меняется от перестановки слагаемых - Теорема Римана. Это общее правило, напр. действует в химии и т.д... От перестановки слагаемых "сумма" не меняется в частных случаях, напр. в школьной математике.
Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

31. "Доступна система распределённых вычислений Apache Storm 2.0"  –1 +/
Сообщение от InuYasha (?), 04-Июн-19, 12:31 
> реализованную на языке Java
> организовать гарантированную обработку различных событий в режиме реального времени
> реализованную на языке Java
> в режиме реального времени
> Java
> реального времени

nnnnnnnoooooooooooooo........wav

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Слёрм
Inferno Solutions
Hosting by Ihor
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2019 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру