<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Insight IT</title><link>https://www.insight-it.ru/</link><description></description><atom:link href="https://www.insight-it.ru/tag/apache-hadoop/feed/index.xml" rel="self"></atom:link><lastBuildDate>Wed, 15 Aug 2012 22:26:00 +0400</lastBuildDate><item><title>Архитектура Pinterest</title><link>https://www.insight-it.ru//highload/2012/arkhitektura-pinterest/</link><description>&lt;p&gt;&lt;a href="https://www.insight-it.ru/goto/975fdd8/" rel="nofollow" target="_blank" title="https://www.pinterest.com/"&gt;Pinterest&lt;/a&gt; - по непонятным для меня причинам
популярная в определенных кругах социальная сеть, построенная вокруг
произвольных картинок чаще всего не собственного производства. Как и
&lt;a href="https://www.insight-it.ru/highload/2012/arkhitektura-instagram/"&gt;Instagram&lt;/a&gt;
проект довольно молодой, с очень похожей историей и стеком технологий.
Тем не менее, Pinterest определенно заслуживает внимания как один из
самых быстрорастущих по посещаемости вебсайтов за всю историю.&lt;/p&gt;
&lt;!--more--&gt;
&lt;h2 id="platforma"&gt;Платформа&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="/tag/amazon/"&gt;Amazon&lt;/a&gt; &lt;a href="/tag/aws/"&gt;AWS&lt;/a&gt;&amp;nbsp;- хостинг и вспомогательные
    сервисы&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/nginx/"&gt;nginx&lt;/a&gt;&amp;nbsp;- вторичная балансировка нагрузки, отдача
    статики&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/python/"&gt;Python&lt;/a&gt;&amp;nbsp;- язык программирования&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/django/"&gt;Django&lt;/a&gt;&amp;nbsp;- фреймворк&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/mysql/"&gt;MySQL&lt;/a&gt;&amp;nbsp;- основная СУБД&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/memcached/"&gt;memcached&lt;/a&gt;&amp;nbsp;- кэширование объектов&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/redis/"&gt;Redis&lt;/a&gt;&amp;nbsp;- кэширование коллекций объектов&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/solr/"&gt;Solr&lt;/a&gt;&amp;nbsp;- поиск&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/hadoop/"&gt;Hadoop&lt;/a&gt;&amp;nbsp;- анализ данных&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="statistika"&gt;Статистика&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;3 миллиона уникальных посетителей в день&lt;/li&gt;
&lt;li&gt;18 миллионов уникальных посетителей в месяц&lt;/li&gt;
&lt;li&gt;4-я по популярности социальная сеть в США после
    &lt;a href="/tag/facebook/"&gt;Facebook&lt;/a&gt;,&amp;nbsp;&lt;a href="/tag/twitter/"&gt;Twitter&lt;/a&gt;&amp;nbsp;и
    &lt;a href="/tag/linkedin/"&gt;LinkedIn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Порядка 500 виртуальных машин в EC2&lt;/li&gt;
&lt;li&gt;80 миллионов объектов в S3&lt;/li&gt;
&lt;li&gt;410Тб пользовательских данных&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="razvitie"&gt;Развитие&lt;/h2&gt;
&lt;h4&gt;Март 2010&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;1 маленький виртуальный веб-сервер&lt;/li&gt;
&lt;li&gt;1 маленький виртуальный сервер MySQL&lt;/li&gt;
&lt;li&gt;Все это в Rackspace, 1 разработчик&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Январь 2011&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;1 сервер nginx для балансировки нагрузки, 4 веб-сервера&lt;/li&gt;
&lt;li&gt;2 сервера MySQL с master/slave репликацией&lt;/li&gt;
&lt;li&gt;3 сервера для отложенного выполнения задач&lt;/li&gt;
&lt;li&gt;1 сервер MongoDB&lt;/li&gt;
&lt;li&gt;Переехали на Amazon &lt;a href="/tag/ec2/"&gt;EC2&lt;/a&gt; + &lt;a href="/tag/s3/"&gt;S3&lt;/a&gt; +
    &lt;a href="/tag/cloudfront/"&gt;CloudFront&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Осень 2011&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;2 сервера nginx, 16 веб-серверов, 2 сервера для API&lt;/li&gt;
&lt;li&gt;5 функционально разделенных серверов MySQL с 9 read slave&lt;/li&gt;
&lt;li&gt;Кластер из 4 узлов Cassandra&lt;/li&gt;
&lt;li&gt;15 серверов Membase в 3 отдельных кластерах&lt;/li&gt;
&lt;li&gt;8 серверов memcached&lt;/li&gt;
&lt;li&gt;10 серверов Redis&lt;/li&gt;
&lt;li&gt;7 серверов для отложенной обработки задач&lt;/li&gt;
&lt;li&gt;4 сервера Elastic Search&lt;/li&gt;
&lt;li&gt;3 кластера MongoDB&lt;/li&gt;
&lt;li&gt;3 разработчика&lt;/li&gt;
&lt;li&gt;Если кто-то может объяснить зачем им сдался такой зоопарк, кроме как
    потестировать разные варианты, можете взять с полки пирожок.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Зима 2011-2012&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Заменили CloudFront на &lt;a href="/tag/akamai/"&gt;Akamai&lt;/a&gt; - вполне объяснимо,
    так как у Akamai намного лучше покрытие по миру, а
    качественный&amp;nbsp;&lt;a href="/tag/cdn/"&gt;CDN&lt;/a&gt; для сайта с большим количеством
    изображений - чуть ли не залог успеха.&lt;/li&gt;
&lt;li&gt;90 веб серверов и 50 серверов для API&lt;/li&gt;
&lt;li&gt;66 + 66 MySQL серверов на m1.xlarge инстансах EC2&lt;/li&gt;
&lt;li&gt;59 серверов Redis&lt;/li&gt;
&lt;li&gt;51 серверов memcached&lt;/li&gt;
&lt;li&gt;25+1 сервер для отложенной обработки задач на основе Redis&lt;/li&gt;
&lt;li&gt;Кластеризованный Solr&lt;/li&gt;
&lt;li&gt;6 разработчиков&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Весна-лето 2012&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Снова сменили CDN, на этот раз в пользу ранее неизвестного мне &lt;a href="/tag/edge-cast/"&gt;Edge
    Cast&lt;/a&gt;. Покрытие по всему миру довольно скромное,
    так что единственное логичное объяснение, которое мне приходит в
    голову - не потянули Akamai по деньгам.&lt;/li&gt;
&lt;li&gt;135 веб серверов и 75 серверов для API&lt;/li&gt;
&lt;li&gt;80 + 80 серверов MySQL&lt;/li&gt;
&lt;li&gt;110 серверов Redis&lt;/li&gt;
&lt;li&gt;60 серверов memcached&lt;/li&gt;
&lt;li&gt;60 + 2&amp;nbsp;сервера&amp;nbsp;для отложенной обработки задач на основе Redis&lt;/li&gt;
&lt;li&gt;25 разработчиков&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="vybor"&gt;Выбор&lt;/h2&gt;
&lt;h4&gt;Почему Amazon Ec2/S3?&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Очень хорошая надежность, отчетность и поддержка&lt;/li&gt;
&lt;li&gt;Хорошие дополнительные сервисы: кэш, базы данных, балансировка
    нагрузки, &lt;a href="/tag/mapreduce/"&gt;MapReduce&lt;/a&gt; и т.п.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Новые виртуальные машины готовы за считанные секунды&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Почему MySQL?&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Очень "зрелая", хорошо известная и любимая многими&lt;/li&gt;
&lt;li&gt;Редки катастрофичные потери данных&lt;/li&gt;
&lt;li&gt;Линейная зависимость времени отклика от частоты запросов&lt;/li&gt;
&lt;li&gt;Хорошая поддержка сторонним ПО (XtraBackup, Innotop, Maatkit)&lt;/li&gt;
&lt;li&gt;Надежное активное сообщество&lt;/li&gt;
&lt;li&gt;Отличная поддержка от Percona&lt;/li&gt;
&lt;li&gt;Бесплатна&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Почему memcached?&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Очень "зрелый", отличная производительность, хорошо известный и
    любимый многими&lt;/li&gt;
&lt;li&gt;Никогда не ломается&lt;/li&gt;
&lt;li&gt;Бесплатен&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Почему Redis?&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Много удобных &lt;strong&gt;структур данных&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Поддержка персистентности и репликации&lt;/li&gt;
&lt;li&gt;Также многим известен и нравится&lt;/li&gt;
&lt;li&gt;Стабильно хорошая производительность и надежность&lt;/li&gt;
&lt;li&gt;Также бесплатен&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="arkhitektura"&gt;Архитектура&lt;/h2&gt;
&lt;h4&gt;Сlustering vs Sharding&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Большую часть презентации, на основе которой написана данная статья
    (&lt;a href="https://www.insight-it.ru/goto/10005efe/" rel="nofollow" target="_blank" title="http://www.slideshare.net/eonarts/mysql-meetup-july2012scalingpinterest"&gt;ссылка&lt;/a&gt;,
    если не охота листать до секции источников информации), занимает
    раздел под названием "Clustering vs Sharding". В связи с путаницей в
    терминологии пришлось несколько раз перечитывать, чтобы понять к
    чему они клонят, сейчас попробую объяснить.&lt;/li&gt;
&lt;li&gt;Вообще есть два фундаментальных способа распределить данные между
    несколькими серверами:&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Вертикально:&lt;/strong&gt;&amp;nbsp;разные таблицы (или просто логически разные
    типы данных) разносятся на разные сервера.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Горизонтально:&lt;/strong&gt; каждая таблица разбивается на некоторое
    количество частей и эти части разносятся на разные сервера по
    определенному алгоритму.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;С первого взгляда казалось, что они пытаются вертикальное разбиение
    назвать &lt;em&gt;sharding&lt;/em&gt;, а горизонтальное - &lt;em&gt;clustering&lt;/em&gt;. Хотя вообще они
    почти синонимы и на русский я их обычно примерно одинаково перевожу.&lt;/li&gt;
&lt;li&gt;По факту же оказалось, что под словом clustering они понимают все
    программные продукты для хранения данных, которые имеют встроенную
    поддержку работы в кластере. В частности они имеют ввиду
    &lt;a href="/tag/cassandra/"&gt;Cassandra&lt;/a&gt;, &lt;a href="/tag/membase/"&gt;Membase&lt;/a&gt;,
    &lt;a href="/tag/hbase/"&gt;HBase&lt;/a&gt; и &lt;a href="/tag/riak/"&gt;Riak&lt;/a&gt;, которые прозрачно для
    пользователя горизонтально распределяют данные по кластеру.&lt;/li&gt;
&lt;li&gt;За словом &lt;em&gt;sharding&lt;/em&gt; в их терминологии стоит аналогичная схема
    собственной разработки, использующая огромное количество логических
    БД в MySQL, распределенных между меньшим количеством &lt;del&gt;физических серверов&lt;/del&gt; виртуальных машин. Именно по этому пути и пошли в
    Pinterest, плюс очень похожий подход используется в
    &lt;a href="https://www.insight-it.ru/highload/2010/arkhitektura-facebook/"&gt;Facebook&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;От себя добавлю, что хоть при наличии должных ресурсов разработка
    собственной системы распределения данных и может быть
    целесообразной, в большинстве случаев на начальном этапе проще
    основываться на готовых решениях вроде перечисленных выше. К слову в
    opensource доступны и основанные на MySQL подобные решения:&lt;ul&gt;
&lt;li&gt;&lt;a href="/tag/vitess/"&gt;Vitess&lt;/a&gt; от &lt;a href="/tag/google/"&gt;Google&lt;/a&gt; /
    &lt;a href="/tag/youtube/"&gt;YouTube&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="/tag/flockdb/"&gt;FlockDB&lt;/a&gt; от &lt;a href="/tag/twitter/"&gt;Twitter&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;В их проекте данная подсистема развивалась следующим образом:&lt;ul&gt;
&lt;li&gt;1 БД + внешние ключи + join'ы&amp;nbsp;&amp;rarr;&lt;/li&gt;
&lt;li&gt;1 БД + денормализация + кэш&amp;nbsp;&amp;rarr;&lt;/li&gt;
&lt;li&gt;1 БД + master/slave + кэш&amp;nbsp;&amp;rarr;&lt;/li&gt;
&lt;li&gt;несколько функциональных разделенных БД + master/slave + кэш&amp;nbsp;&amp;rarr;&lt;/li&gt;
&lt;li&gt;вертикально и горизонтально разделенные БД (по
    идентификаторам) + по резервные БД (пассивный slave) + кэш&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;При использовании аналогичного решения остерегайтесь:&lt;ul&gt;
&lt;li&gt;Невозможности выполнять большинство запросов с join&lt;/li&gt;
&lt;li&gt;Отсутствия транзакций&lt;/li&gt;
&lt;li&gt;Дополнительных манипуляций для поддержания ограничений
    уникальности&lt;/li&gt;
&lt;li&gt;Необходимости тщательного планирования для изменений схемы&lt;/li&gt;
&lt;li&gt;Необходимости выполнения одного и того же запроса с последующей
    агрегацией для построения отчетов&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Остальные моменты&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Кэширование многоуровневое:&lt;ul&gt;
&lt;li&gt;Коллекции объектов хранятся в списках Redis&lt;/li&gt;
&lt;li&gt;Сами объекты - в memcached&lt;/li&gt;
&lt;li&gt;На уровне SQL запросы в основном примитивны и написаны вручную,
    так что часты попадания в кэш MySQL&lt;/li&gt;
&lt;li&gt;Кэш файловой системы - само собой&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Еще пара фактов про кэширование в Pinterest:&lt;ul&gt;
&lt;li&gt;Кэш разбит также на несколько частей (шардов), для упрощения
    обслуживания и масштабирования&lt;/li&gt;
&lt;li&gt;В коде для кэширования используются Python'овские декораторы, на
    вид собственной разработки, хотя точно не уверен&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Балансировка нагрузки осуществляется в первую очередь за счет Amazon
    ELB, что позволяет легко подключать/отключать новые сервера
    посредством API.&lt;/li&gt;
&lt;li&gt;Так как большинство пользователей живут в США по ночам нагрузка
    сильно падает, что позволяет им по ночам отключать до 40%
    виртуальных машин. В пиковые часы EC2 обходится порядка 52$ в час,
    а по ночам - всего 15$.&lt;/li&gt;
&lt;li&gt;Elastic Map Reduce, основанный на Hadoop, используется для анализа
    данных и стоит всего несколько сотен долларов в месяц&lt;/li&gt;
&lt;li&gt;Текущие проблемы:&lt;ul&gt;
&lt;li&gt;Масштабирование команды&lt;/li&gt;
&lt;li&gt;Основанная на сервисах архитектура:&lt;ul&gt;
&lt;li&gt;Ограничения соединений&lt;/li&gt;
&lt;li&gt;Изоляция функционала&lt;/li&gt;
&lt;li&gt;Изоляция доступа (безопасность)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="uroki-ot-komandy-pinterest"&gt;Уроки от команды Pinterest&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;em&gt;"Оно сломается. Все должно быть просто."&lt;/em&gt; - столько раз уже слышу
    это наставление, но ни разу не видел разработчиков, которые реально
    к нему прислушивались.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"Кластеризация - страшная штука."&lt;/em&gt; - конечно страшная, большая и
    сложная. Но кому сейчас легко?&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"Продолжайте получать удовольствие."&lt;/em&gt; - с этим не могу не
    согласиться, без удовольствия работать совершенно невозможно в любой
    сфере.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="istochniki-informatsii"&gt;Источники информации&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.insight-it.ru/goto/10005efe/" rel="nofollow" target="_blank" title="http://www.slideshare.net/eonarts/mysql-meetup-july2012scalingpinterest"&gt;Scaling Pinterest @ MySQL Meetup&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;В презентации можно посмотреть примеры кода и SQL-запросов&lt;/li&gt;
&lt;li&gt;Если кто-то знает где можно посмотреть/послушать запись этого
    мероприятия - поделитесь ссылкой, пожалуйста&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.insight-it.ru/goto/ac4a03d6/" rel="nofollow" target="_blank" title="http://highscalability.com/blog/2012/5/21/pinterest-architecture-update-18-million-visitors-10x-growth.html"&gt;Pinterest Architecture Update&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Вакансии в Pinterest&lt;/li&gt;
&lt;/ul&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Иван Блинков</dc:creator><pubDate>Wed, 15 Aug 2012 22:26:00 +0400</pubDate><guid>tag:www.insight-it.ru,2012-08-15:highload/2012/arkhitektura-pinterest/</guid><category>Akamai</category><category>Amazon</category><category>Apache Hadoop</category><category>AWS</category><category>CDN</category><category>CloudFront</category><category>django</category><category>EC2</category><category>Edge Cast</category><category>Hadoop</category><category>Memcached</category><category>MySQL</category><category>nginx</category><category>Pinterest</category><category>Python</category><category>Redis</category><category>S3</category><category>Solr</category><category>Архитектура Pinterest</category><category>архиткутера</category><category>Масштабируемость</category></item><item><title>Новое поколение MapReduce в Apache Hadoop</title><link>https://www.insight-it.ru//storage/2011/novoe-pokolenie-mapreduce-v-apache-hadoop/</link><description>&lt;p&gt;В большом бизнесе использование нескольких больших кластеров с
финансовой точки зрения более&amp;nbsp;эффективно, чем много маленьких. Чем
больше машин в кластере, тем большими наборами данных он может
оперировать, больше задач могут выполняться одновременно. Реализация
&lt;a href="/tag/mapreduce/"&gt;MapReduce&lt;/a&gt; в &lt;a href="/tag/apache/"&gt;Apache&lt;/a&gt;
&lt;a href="/tag/hadoop/"&gt;Hadoop&lt;/a&gt; столкнулась с потолком масштабируемости на уровне
около 4000 машин в кластере. Разрабатывается следующее поколение Apaсhe
Hadoop MapReduce, &amp;nbsp;в котором появится общий планировщик ресурсов и
отдельный мастер для каждой отдельной задач, управляющий выполнением
программного кода. Так как простой оборудования по техническим причинам
обходится дорого на таком масштабе, высокий уровень доступности
проектируется с самого начала, ровно как и безопасность и
многозадачность, необходимые для поддержки одновременного использования
большого кластера многими пользователями. Новая архитектура также будет
более инновационной, гибкой и эффективной с точки зрения использования
вычислительных ресурсов.&lt;/p&gt;
&lt;!--more--&gt;
&lt;h2 id="predistoriia"&gt;Предистория&lt;/h2&gt;
&lt;p&gt;Текущая реализация Hadoop MapReduce устаревает на глазах. Основываясь на
текущих тенденциях в размерах кластеров и нагрузок на них, JobTracker
требует кардинальных доработок, чтобы исправить его дефекты в области
масштабируемости, потребления памяти, многопоточности, надежности и
производительности. С точки зрения работы с Hadoop при каждом обновлении
кластера (даже если это просто багфикс), абсолютно все компоненты
кластера, так и приложений, которые на нем работают, должны быть
обновлены одновременно. Это так же очень неудобно, так как каждый раз
необходимо тестировать все приложения на совместимость с новой версией.&lt;/p&gt;
&lt;h2 id="trebovaniia"&gt;Требования&lt;/h2&gt;
&lt;p&gt;Прежде чем кардинально что-то менять в Hadoop mapreduce, необходимо
понять какие же основные требования предъявляются к вычислительным
кластерам на практике. Наиболее значительными требованиями к Hadoop
следующего поколения являются:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Надежность&lt;/li&gt;
&lt;li&gt;Доступность&lt;/li&gt;
&lt;li&gt;Масштабируемость - кластеры из как минимум 10 тысяч машин, 200 тысяч
    вычислительных ядер и даже больше&lt;/li&gt;
&lt;li&gt;Обратная и прямая совместимость - возможность быть уверенным, что
    приложение будет работать на новой версии так же, как оно работало
    на старой&lt;/li&gt;
&lt;li&gt;Контроль над обновлениями&lt;/li&gt;
&lt;li&gt;Предсказуемые задержки&lt;/li&gt;
&lt;li&gt;Эффективное использование ресурсов&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Среди менее значительных требований:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Поддержка альтернативных парадигм разработки (помимо MapReduce)&lt;/li&gt;
&lt;li&gt;Поддержка сервисов с коротким жизненным циклом&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Если учесть перечисленные выше требования, то становится очевидно, что
инфраструктура обработки данных в Hadoop должна быть кардинальным
образом изменена. В сообществе Hadoop люди в целом приходят к общему
мнению, что текущая архитектура MapReduce не способна решить текущие
задачи, которые перед ней ставится, и что требуется кардинальный
рефакторинг кодовой базы.&lt;/p&gt;
&lt;h2 id="mapreduce-sleduiushchego-pokoleniia"&gt;MapReduce следующего поколения&lt;/h2&gt;
&lt;p&gt;Фундаментальной идеей смены архитектуры является разделение двух
основных функций JobTracker'а на два отдельных части:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;управление ресурсами;&lt;/li&gt;
&lt;li&gt;планирования и мониторинга задач.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;В итоге появляется несколько новых ролей:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ResourceManager&lt;/strong&gt; управляет глобальным распределением
    вычислительных ресурсов между приложениями;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ApplicationMaster&lt;/strong&gt; управляет планированием и координацией внутри
    приложения;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NodeManager&lt;/strong&gt; управляет процессами в рамках одной машины.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ApplicationMaster представляет собой библиотеку, с помощью которой можно
получить у ResourceManager квоту на вычислительные ресурсы и работать с
NodeManager(ами) для выполнения и мониторинга задач.&lt;/p&gt;
&lt;p&gt;ResourceManager поддерживает иерархическим очереди приложений, которым
может гарантированно выделяться некоторый процент ресурсов кластера. Его
функционал ограничивается планированием, никакого мониторинга и
отслеживания задач не происходит, а также нет никаких гарантий
перезапуска задач, провалившихся из-за проблем с оборудованием или
кодом. Планирование основывается на требованиях, которые выставляет
приложение с помощью ряда запросов ресурсов (среди них: запросы на
вычислительные ресурсы, память, дисковое пространство, сетевой доступ и
т.п.). Обратите внимание, что это значительное изменение по сравнению с
текущей моделью слотов фиксированного размера, которая является одной из
основных причин неэффективного использования ресурсов кластера на данный
момент.&lt;/p&gt;
&lt;p&gt;NodeManager - это агент, который работает на каждой машине и несет
ответственность за запуск контейнеров приложений, мониторинг
используемых ими ресурсов (плюс отчет планировщику).&lt;/p&gt;
&lt;p&gt;По одному ApplicationMaster запускается для каждого приложения, они
ответственны за запрос необходимых ресурсов у планировщика, запуск
задач, отслеживание статусов, мониторинг прогресса и обработку сбоев.&lt;/p&gt;
&lt;h2 id="arkhitektura"&gt;Архитектура&lt;/h2&gt;
&lt;p&gt;&lt;img alt="Следующее поколение MapReduce" class="responsive-img" src="https://www.insight-it.ru/images/mapreduce-nextgen.jpg" title="Следующее поколение MapReduce"/&gt;&lt;/p&gt;
&lt;h2 id="uluchsheniia-po-sravneniiu-s-tekushchei-realizatsiei-mapreduce"&gt;Улучшения по сравнению с текущей реализацией MapReduce&lt;/h2&gt;
&lt;h3 id="masshtabiruemost"&gt;Масштабируемость&lt;/h3&gt;
&lt;p&gt;Разделение управления ресурсами и прикладными задачами позволяет
горизонтально расширять кластер более просто и эффективно. JobTracker
проводит значительную часть времени пытаясь управлять жизненным циклом
каждого приложения, что часто может приводить к различным
происшествиям - переход к отдельному менеджеру для каждого приложения
является значительным шагом вперед.&lt;/p&gt;
&lt;p&gt;Масштабируемость особенно важна в свете текущих трендов в оборудовании -
на данный момент Hadoop может быть развернут на кластере из 4000 машин.
Но 4000 средних машин 2009го года (т.е. по 8 ядер, 16Гб памяти, 4Тб
дискового пространства) только вдвое менее &amp;nbsp;ресурсоемки, чем 4000 машин
2011го года (16 ядер, 48гб памяти, 24Тб дискового пространства). Помимо
этого с точки зрения операционных издержек было выгоднее работать в еще
больших кластере от 6000 машин и выше.&lt;/p&gt;
&lt;h3 id="dostupnost"&gt;Доступность&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;ResourceManager использует&amp;nbsp;&lt;a href="https://www.insight-it.ru/goto/e7095d3/" rel="nofollow" target="_blank" title="http://hadoop.apache.org/zookeeper/"&gt;Apache ZooKeeper&lt;/a&gt; для обработки сбоев.
    Когда ResourceManager перестает работать, аналогичный процесс может
    быстро запуститься на другой машине благодаря тому, что состояние
    кластера было сохранено в ZooKeeper. При таком сценарии все
    запланированные и выполняющиеся приложения максимум лишь
    перезапустятся.&lt;/li&gt;
&lt;li&gt;ApplicationMaster - поддерживается создание точек восстановления на
    уровне приложений. ApplicationMaster может восстановить работу из
    состояния, сохраненного в HDFS, в случае сбоя.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="sovmestimost-protokola"&gt;Совместимость протокола&lt;/h3&gt;
&lt;p&gt;Это позволит различным версиям клиентов и серверов Hadoop общаться между
собой. Помимо решения многих существующих проблем с обновлением, в
будующих релизах появится возможность последовательного обновления кода
без простоя системы в целом - очень большое достижения с точки зрения
системного администрирования.&lt;/p&gt;
&lt;h3 id="innovatsionnost-i-gibkost"&gt;Инновационность и гибкость&lt;/h3&gt;
&lt;p&gt;Основным плюсом предложенной архитектуры является тот факт, что
MapReduce по сути становится просто пользовательской библиотекой.
Вычислительная же система (ResourceManager и NodeManager) становятся
полностью независимыми от специфики MapReduce.&lt;/p&gt;
&lt;p&gt;Клиенты получат возможность одновременного использования разных версий
MapReduce в одном и том же кластере. Это становится тривиальным, так как
отдельная копия ApplicationMaster'а запускается для каждого приложения.
Это дает гибкость в исправлении багов, улучшений и новых возможностей,
так как полное обновление кластер перестает быть обязательной
процедурой. Это позволяет клиентам обновлять их приложения до новых
версий MapReduce вне зависимости от обновлений кластера.&lt;/p&gt;
&lt;h3 id="effektivnost-ispolzovaniia-vychislitelnykh-resursov"&gt;Эффективность использования вычислительных ресурсов&lt;/h3&gt;
&lt;p&gt;ResourceManager использует общую концепцию для управления ресурсами и
планирования по отношению к каждому конкретному приложению. Каждая
машина в кластере на концептуальном уровне рассматривается просто как
набор ресурсов: память, процессор, ввод-вывод и др. Все машины
взаимозаменяемы и приложение может быть назначено на любую из них,
основываясь на доступных и запрашиваемых ресурсах. При этом приложения
работают в контейнерах, изолированно от других приложений, что дает
сильную поддержку многозадачности.&lt;/p&gt;
&lt;p&gt;Таким образом эта схема избавляет от текущего механизма map и reduce
слотов в Hadoop, который негативно влияет на эффективную утилизацию
вычислительных ресурсов.&lt;/p&gt;
&lt;h3 id="podderzhka-drugikh-paradigm-programmirovaniia-pomimo-mapreduce"&gt;Поддержка других парадигм программирования помимо MapReduce&lt;/h3&gt;
&lt;p&gt;В предложенной архитектуре используется общий механизм вычислений, не
привязанный конкретно к MapReduce, что позволит использовать и другие
парадигмы. Имеется возможность реализовать собственный
ApplicationMaster, способный запрашивать ресурсы у ResourceManager и
использовать их в соответствии с задачей, при этом сохраняются общие
принципы изоляции и гарантированного наличия полученных ресурсов. Среди
потенциально поддерживаемых парадигм можно назвать MapReduce, MPI,
Мaster-Worker, итеративные модели. Все они могут одновременно работать
на одном и том же кластере. Это особенно актуально для приложений
(например К-средний или Page Rank), где &lt;a href="https://www.insight-it.ru/python/2011/piccolo-postroenie-raspredelennykh-sistem-v-11-raz-bystree-hadoop/"&gt;другие подходы более чем на порядок эффективнее&lt;/a&gt; MapReduce.&lt;/p&gt;
&lt;h2 id="vyvody_1"&gt;Выводы&lt;/h2&gt;
&lt;p&gt;Apache Hadoop, и в частности Hadoop MapReduce - очень успешный
opensource проект по обработке больших объемов данных. Предложенный
Yahoo путь его переработки направлен на исправление недостатков
архитектуры текущей реализации, при этом повышая доступность,
эффективность использования ресурсов и предоставляя поддержку других
парадигм распределенных вычислений.&lt;/p&gt;
&lt;p&gt;Осталось дело за малым - собственно реализовать задуманное! :)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.insight-it.ru/goto/336fc03c/" rel="nofollow" target="_blank" title="http://developer.yahoo.com/blogs/hadoop/posts/2011/02/mapreduce-nextgen/"&gt;Источник информации&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;a href="/feed/"&gt;Подписаться на RSS можно здесь.&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Иван Блинков</dc:creator><pubDate>Sat, 19 Feb 2011 21:23:00 +0300</pubDate><guid>tag:www.insight-it.ru,2011-02-19:storage/2011/novoe-pokolenie-mapreduce-v-apache-hadoop/</guid><category>Apache</category><category>Apache Hadoop</category><category>Hadoop</category><category>архитектура</category><category>кластер</category><category>кластеризация</category><category>кластерные вычисления</category><category>Масштабируемость</category><category>разработка</category><category>технологии</category></item><item><title>Мероприятия всякие разные</title><link>https://www.insight-it.ru//event/2010/meropriyatiya-vsyakie-raznye/</link><description>&lt;p&gt;Не знаю как во всем в мире, но в Москве пора айтишных и не очень
конференций и мероприятий - это осень. Посещать их я еще не совсем
обленился, а вот с написанием отчетов все как-то не складывалось. К
сожалению, бюджет не позволил сходить на платные мероприятия, особенно
Highload++. В общем в итоге я решил написать этот краткий обзорный пост
по мероприятиям, на которые меня занесло этой осенью. Обо многом пишу
спустя большое количество времени - возможны неточности и провалы в
памяти.&lt;/p&gt;
&lt;!--more--&gt;
&lt;h3 id="mailru-technology-forum"&gt;&lt;a href="https://www.insight-it.ru/goto/24f5cd74/" rel="nofollow" target="_blank" title="http://techforum.mail.ru/"&gt;Mail.ru Technology Forum&lt;/a&gt;&lt;/h3&gt;
&lt;div class="right"&gt;
&lt;div class="card light-blue"&gt;
&lt;div class="card-content white-text"&gt;
14 сентября
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Честно говоря я подъехал на мероприятие лишь к обеду и не досидел до
конца, так что могу лишь прокомментировать середину, то есть самый
разгар.&lt;/p&gt;
&lt;p&gt;В первую очередь я пошел в технологическую секцию, где Tom
Preston-Werner, сооснователь и тех. директор проекта
&lt;a href="https://www.insight-it.ru/goto/ecdadcf9/" rel="nofollow" target="_blank" title="http://www.github.com"&gt;GitHub&lt;/a&gt;, рассказывал о том, как устроен их
проект, какие технологии и костыли они используют. Если в двух словах,
то у них используются три протокола: http, git и ssh, для каждого
используется свой маршрут обработки запроса внутри системы. Основными
продуктами, которые они используют являются &lt;a href="/tag/ruby-on-rails/"&gt;Ruby on Rails&lt;/a&gt;, &lt;a href="/tag/unicorn/"&gt;Unicorn&lt;/a&gt;, &lt;a href="/tag/haproxy/"&gt;HAProxy&lt;/a&gt;, и собственно git и sshd. Вообще возможно стоило бы под эту историю написать отдельный пост - детали явно выходят за рамки данного повествования, а доклад и правда был интересным.
Постараюсь вернуться к этой истории как только появится возможность.&lt;/p&gt;
&lt;p&gt;Следующими в этом зале выступали представители самого mail.ru - честно
говоря у меня хватило терпения слушать их очередное расхваливание
Imagine Framework,&amp;nbsp; который можно посмотреть только устроившись к ним на
работу, только первые минут 15 наверное и я благополучно перекочевал во
второй зал, где основной тематикой были социальные игры. Вообще за
последний год мне довелось немного поработать в данной области и секция
могла бы оказаться интересной, но качество докладов тоже было не на
высоте - ничего нового ни про монетизацию, ни про привлечение аудитории
услышать не удалось. В основном доклады представляли собой либо кейсы,
основанные на конкретных не очень успешных приложениях, либо на каких-то
общих рекомендациях и так лежащих на поверхности.&lt;/p&gt;
&lt;p&gt;Кстати еще на одном из докладов представители мэйла заикались о некой
NoSQL базе данных их разработки, которую они опубликовали под opensource
лицензией - впоследствии попытался найти, но на
http://opensource.mail.ru какая-то другая муть расположена, а гуглится
что-то совсем не то. Если кто в курсе - поделитесь ссылкой, пожалуйста.&lt;/p&gt;
&lt;h3 id="mit-way-by-richard-kivel"&gt;&lt;a href="https://www.insight-it.ru/goto/13d0a982/" rel="nofollow" target="_blank" title="http://www.mitef.ru/index.php?option=com_content&amp;amp;view=article&amp;amp;id=238:spb-forum-09-2010&amp;amp;catid=3:upcoming-events-&amp;amp;Itemid=71"&gt;"MIT Way" by Richard Kivel&lt;/a&gt;&lt;/h3&gt;
&lt;div class="right"&gt;
&lt;div class="card light-blue"&gt;
&lt;div class="card-content white-text"&gt;
20 сентября
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Ричард в целом продемонстрировал себя как успешного бизнесмена в сфере
информационных и био технологий, но при этом практическая ценность его
выступления была невелика. Он является презедентом MIT Enterprise Forum,
а также председателем правления Rhapsody Biologics. Выступление
проходило в здание ГУ-ВШЭ при поддержке HSE Inc.&lt;/p&gt;
&lt;p&gt;Основными моментами его выступления были следующие тезисы:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Один из основных ресурсов бизнесмена - сеть его знакомств и деловых
    контактов, особенно если речь идет о международном бизнесе.&lt;/li&gt;
&lt;li&gt;Нельзя бояться ошибиться, когда пытаешься создать успешный бизнес -
    у большинства людей это получается далеко не с первой и не со второй
    попытки.&lt;/li&gt;
&lt;li&gt;Очень важно уметь нанимать людей, которые умнее тебя - если ты
    будешь самым интеллектуалом в офисе, то врядли твой бизнес сможет
    работать самостоятельно.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Все просто и понятно, но все же еще раз обратить внимание на данные
вопросы не помешало, да и дополнительная возможность послушать вживую
выступление на качественном английском никогда не бывает лишней.&lt;/p&gt;
&lt;p&gt;В итоге правда оказалось, что основная цель данной лекции была вовсе не
научить делать технологический бизнес, а привлечь дополнительных
участников в сообщество MIT EF, представительство которого недавно
открылось и в России. Мотивацией для присоединения к сообществу было как
раз расширение сети бизнес-знакомств и контактов, особенно зарубежом.
Членские взносы составляют довольно приличную сумму по меркам московских
студентов (которых было большинство в зале) - что-то в районе 150\$/год.&lt;/p&gt;
&lt;h3 id="startup-weekend-brainstorm"&gt;&lt;a href="https://www.insight-it.ru/goto/dbd42edb/" rel="nofollow" target="_blank" title="http://moscow.startupweekend.org/archives/655"&gt;Startup Weekend Brainstorm&lt;/a&gt;&lt;/h3&gt;
&lt;div class="right"&gt;
&lt;div class="card light-blue"&gt;
&lt;div class="card-content white-text"&gt;
25 сентября
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Мероприятие являлось по сути подготовкой к самому Startup Weekend, о
котором я напишу чуть ниже. Организатором обоих мероприятий является
компания &lt;a href="https://www.insight-it.ru/goto/ef462f5b/" rel="nofollow" target="_blank" title="http://www.glavstart.ru"&gt;Главстарт&lt;/a&gt;, целью которой является
расширение рынка технологических стартапов, для чего они проводят эти
самые мероприятия, занимаются подбором экспертов и менторов, а также
помогают проектам получить посевные инвестиции.&lt;/p&gt;
&lt;p&gt;Как не трудно догадаться, подготовительная часть под названием
Брейншторм направлена на генерацию идей для интернет-проектов.
Участников мероприятия разбили на группы по интересам, около 20 человек
на группу, где под руководством массовика-затейника и эксперта они
придумывали различные идеи проектов, сервисов, целевых аудиторий и их
потребностей и проблем. За почти целый день у каждой группы получилось
около 10 более-менее продуманных идей, из которых гипотетически могли бы
вырости проекты на следующем этапе - самом Startup Weekend.&lt;/p&gt;
&lt;p&gt;Сами идеи проектов позвольте не озвучивать - многое не помню, да и
большинство из не прошедшх отбор были на грани бреда.&lt;/p&gt;
&lt;h3 id="yet-another-conference"&gt;&lt;a href="https://www.insight-it.ru/goto/50b6b9aa/" rel="nofollow" target="_blank" title="http://company.yandex.ru/public/yac/"&gt;Yet Another Conference&lt;/a&gt;&lt;/h3&gt;
&lt;div class="right"&gt;
&lt;div class="card light-blue"&gt;
&lt;div class="card-content white-text"&gt;
1 октября
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Наверное самое серьезное из мероприятий, попавших в данный обзор.
Организатором конференции являлся Яндекс, попал я опять не к самому
открытию ибо пробки и проблемы с парковкой. С организационной точки
зрения все замечательно, особенно для бесплатной конференции, разве что
еду в перерывах сметали слишком быстро :).&lt;/p&gt;
&lt;p&gt;Первый доклад, на который я пришел где-то к середине, вел инженер из
Google и рассказывал про data races и инструмент для их поиска
ThreadSanitizer - вроде все понятно и на самом деле слабо пересекается с
областью моих интересов. Вторым докладом в этой секции шел Intel и уже
через 15 секунд после начала стало понятно, что будет сплошная реклама
их линейки проектов для разработки многопоточных приложений - сразу же
встал и сбежал в соседнюю секцию.&lt;/p&gt;
&lt;p&gt;В другом зале была самореклама уже продукта Яндекса, но уже несколько
более завуалированная. Речь шла об их собственном веб-сервере Phantom,
который они используют в баннерокрутилке. Основной его фишкой является
приоритезация хэндлеров запросов в рамках одного сервера. Написан с нуля
на плюсах, с использованием корутин и чуть ли не вообще без
использования каких-либо библиотек. Основной плюс: в отличии от других
докладчиков, рекламирующих свое детище, они хотябы обещали открыть
исходные коды продукта как только допилят поддержку протокола FastCGI.&lt;/p&gt;
&lt;p&gt;После перерыва я вернулся в первый зал, где началась длинная секция про
системы хранения и обработки большого объема данных, я прослушал три
доклада:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="/tag/apache-hadoop/"&gt;Apache Hadoop&lt;/a&gt; и прочие проекты вокруг него,
    выступал Константин Швачко из Yahoo.&lt;/strong&gt; Жалко, что в этом проекте так
    мало всего изменилось за тот год, что я с ним не работал, даже
    решение проблемных ситуаций с NameNode толком не решили видимо.
    Слушал и думал "сколько же я уже раз это все слышал и сам
    рассказывал другим".&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Собственная реализация Map Reduce от Яндекса, Александр
    Дмитриев.&lt;/strong&gt; Визуально красиво сделанная презентация, судя по
    твиттеру очень многим понравилось, правда за этим всем терялась суть
    доклада - слушал честно говоря краем уха, так как судя по всему
    публиковать в opensource данный проект они пока не планируют.
    Специфичная реализация публично-известного подхода, реально
    приспособленная только под конкретные задачи Яндекса - впечатление
    осталось именно такое.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Евгений Поляков из Яндекса рассказывал о распределенной
    хэш-таблице &lt;a href="https://www.insight-it.ru/goto/8c78fdc4/" rel="nofollow" target="_blank" title="http://www.ioremap.net/projects/elliptics"&gt;Elliptics Network&lt;/a&gt;.&lt;/strong&gt; Об Эллиптикс я ни разу ранее не слышал, а докладчик рассказывал очень вкусно о
    данном проекте. Основным плюсом данной системы хранения данных
    является модульность: особенно интересна возможность использовать
    различные технологии записи данных на диск, а также различные
    интерфейсы и протоколы, с помощью которых можно получать доступ к
    данным. Постараюсь на досуге подробнее изучить вопрос и если
    обнаружится что-то интересное - опубликовать свое более детальное
    впечатление о данном проекте.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Поводом сбежать с данной секции стал некий разработчик системы
статистики для ЖЖ из SUP Fabrik - молодой человек еле ворочал языком,
что делало практически невозможным понимание сути доклада. В другом зале
как раз началась медийная секция, опять полная саморекламы. Докладчик из
проекта &lt;a href="https://www.insight-it.ru/goto/b986924b/" rel="nofollow" target="_blank" title="http://www.videomost.com"&gt;videomost.com&lt;/a&gt; (видео-конференции) в
целом сосредоточил свое внимание на том, что видео-конференции - это
очень сложно, что популярные технологии, часто используемые в
видео-трансляциях, там работают плохо - и вообще будущее за
проприетарными специализированными протоколами, кодеками и системами. В
повестке доклада значились способы обхода firewall'ов и NAT'а - но в
докладе все ограничилось лишь большой красивой диаграммкой и фразой
что-то в духе "в нашем проекте аж 14 способов решать эти проблемы", без
каких-либо деталей.&lt;/p&gt;
&lt;p&gt;Второй доклад медийной секции вел Richard Cole, продукт менеджер из
Skype, показывал много красивых фотографий с людьми, пользующимися Skype
в разных ситуациях. По делу у него был только одно сообщение: скоро для
широкой публики будет доступен их &lt;a href="https://www.insight-it.ru/goto/51f3342e/" rel="nofollow" target="_blank" title="http://developer.skype.com/"&gt;SDK&lt;/a&gt;,
который сейчас находится в стадии бета-тестирования.&lt;/p&gt;
&lt;h3 id="startup-weekend"&gt;&lt;a href="https://www.insight-it.ru/goto/f568665e/" rel="nofollow" target="_blank" title="http://moscow.startupweekend.org/"&gt;Startup Weekend&lt;/a&gt;&lt;/h3&gt;
&lt;div class="right"&gt;
&lt;div class="card light-blue"&gt;
&lt;div class="card-content white-text"&gt;
1-3 октября
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Это мероприятие еще не закончилось, я написал этот пост как раз во
второй день - по идее в самый разгар. Как уже возможно стало понятно:
основная суть мероприятия заключается в превращении идей
интернет-проектов в готовые команды и прототипы. По идее здесь можно
найти недостающих членов команды, получить советы экспертов, заключить
менторское соглашение и найти посевного инвестора. Вчера были
выступления представителей идей/проектов, сегодня - приехали "эксперты":
сначала выступали в elevator pitch, потом общение с представителями
проектов в формате speeddating, потом консультации по расписанию.
Выглядит это все хаотично, организаторы пытаются каким-то образом
способствовать созданию проектов, но все равно мотивации явно не
хватает, чтобы по сути с незнакомыми людьми сделать хоть сколько-нибудь
стоящий проект. Что из всего этого выйдет станет ясно завтра, возможно
обновлю пост, если будет что сказать.&lt;/p&gt;
&lt;h2 id="zakliuchenie_1"&gt;Заключение&lt;/h2&gt;
&lt;p&gt;В целом это очень здорово, что количество и качество подобных
мероприятий в России лишь растет с каждым годом. Полезность конечно не
всегда высока, но часто выносишь что-то новое и интересное для себя.
Расстраивает разве что тот факт, что количество откровенно рекламных
докладов очень велико, но для бесплатных мероприятий это вполне
объяснимо и терпимо.&lt;/p&gt;
&lt;p&gt;В планах посещения мероприятий в этом году остался разве что Google
Developer Day, подтверждение участия еще не пришло, но надеюсь все же
попасть и не забыть написать отчет.&lt;/p&gt;
&lt;p&gt;Если Вы дочитали до конца, но не подписаны на RSS - &lt;a href="/feed/"&gt;сейчас самое подходящее время, чтобы это сделать&lt;/a&gt; :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Иван Блинков</dc:creator><pubDate>Sat, 02 Oct 2010 17:44:00 +0400</pubDate><guid>tag:www.insight-it.ru,2010-10-02:event/2010/meropriyatiya-vsyakie-raznye/</guid><category>Apache Hadoop</category><category>Brainstorm</category><category>Git</category><category>GitHub</category><category>HAProxy</category><category>Imagine Framework</category><category>Mail.ru</category><category>Mail.ru Technology Forum</category><category>Map Reduce</category><category>MIT</category><category>Phantom</category><category>Richard Kivel</category><category>Ruby on Rails</category><category>sshd</category><category>Startup Weekend</category><category>ThreadSanitizer</category><category>YAC</category><category>Yet Another Conference</category><category>конференция</category><category>мероприятия</category><category>разработка</category><category>хранилища данных</category></item></channel></rss>