Twitter опубликовала исходные тексты Storm

Разработчики микроблоггиногового сервиса Twitter опубликовали под лицензией Eclipse исходники специализированной отказоустойчивой, распределённой системы обработки потоков данных в режиме реального времени под названием Storm.

Текущая версия исходных текстов Storm, находящаяся на сервисе GitHub, обозначена номером 0.5.2.

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

  • Простая модель разработки под него.
  • Работа с любым языком программирования. По умолчанию поддерживаются Clojure, Java, Ruby и Python, но добавить поддержку любього другого языка проблем не составит, поскольку для этого предусмотрен специальный коммуникационный протокол.
  • Горизонтальная масштабируемость. Все вычисления могут параллельно выполняться на множестве компьютеров, процессов и потоках.
  • Гарантированная обработка поступающих сообщений. В случае неудачи, необработанные запросы буду посылаться снова до тех пор, пока они не будут выполнены.
  • Высокая скорость работы.
  • Наличие "одиночного" режима работы, когда требуется оттестировать какоую-либо функцию без необходимости развёртывания целого кластера. Storm позволяет эмулировать кластеризацию внутри себя для отладочных целей.

Что касается аналогов, то он соперничает с такими разработками как Esper, Streambase, HStreaming и Yahoo S4. Ближе всех к Storm пожалуй, разве что Yahoo S4, с тем отличием, что Storm гарантирует доставку сообщений от приложений. Минус  Storm - для хранения данных необходимо использовать внешнее хранилище, для чего в этом проекте задействуется Cassandra.

Для запуска Storm в режиме кластера необходимо наличие Apache Zookeeper, ØMQ, JZMQ, Java 6, Python 2.6.6.

Проект имеет собственную wiki, документацию, а таже собственный канал в IRC-сети FreeNode.

0
www.infoq.com r0g3r 28.09.2011 в 16:55 Скачать