08:20 Twitter открыл код системы анализа потоков данных Storm | |||
Cервис Twitter открыл код проекта Storm, предназначенного для анализа больших непрерывно поступающих потоков данных, таких как миллионы лент в Twitter. Продукт был создан компанией BackType, которая была куплена Twitter в июле этого кода. Код открыт под лицензией Eclipse Public Licence 1.0. Система написана на языке Clojure и выполняется внутри виртуальной машины JVM, некоторые скрипты написаны на языке Python. Система Storm использовалась для обеспечения работы сервиса BackTweets, предназначенного для анализа отражения определенных событий в микроблогах, путем сопоставления на лету новых твитов и используемых в них ссылок. Например, производилась оценка, как внешние ссылки или публикуемые в твиттере анонсы, ретранслируются другими участниками. Несмотря на кажущуюся простоту, для непрерывно поступающих потоков сообщений задача является достаточно сложной: чтобы определить число уникальных просмотров URL через Twitter нужно посчитать число сообщений с данным URL, сформировать общую выборку из всех читателей (followers) микроблогов в которых упомянут URL и отсеять среди них дубликаты. Storm представляет собой распределенную и отказоустойчивую систему обработки неструктурированных постоянно обновляемых потоков данных (обработка сложных событий - Complex Event Processing). Функциональность Storm сравнивается с платформой Hadoop, при этом ключевым отличием является то, что данные обрабатываются в режиме реального времени. В отличие от традиционных аналитических систем реального времени от компаний Oracle, StreamBase и SAP, которые предварительно накапливают данные во внутреннем хранилище, в Storm нет встроенной прослойки для организации хранилища, как в Hadoop. В случае Storm пользователь определяет аналитический запрос, который начинает применяться к поступающим данным до тех пор, пока данный запрос не будет отменен (если в Hadoop используются занимающие конечное время MapReduce-работы, то в Storm применяется идея непрерывно выполняемых "топологий"). При этом выполнение анализа может быть распределено на несколько серверов - Storm автоматически распараллеливает работу с потоками на разные узлы кластера. Области применения Storm:
Основные особенности Storm:
Подробнее(EN) | |||
|
Всего комментариев: 2 | |
| |
Open Source [403] |
Компьютерные новости [93] |
Гаджеты [104] |
Soft [326] |
GNU/Linux [55] |
Политика [78] |
Образование [18] |
Интервью [36] |
Безопасность [28] |
Разное [196] |