Статьи

Spark Community by Numbers: несколько сюрпризов

Без сомнения, Apache Spark берет штурмом мир данных. Spark с открытым исходным кодом, механизм обработки распределенных данных в памяти, который может работать поверх Hadoop, Cassandra и других, стал долгожданным дополнением к набору инструментов для исследователей данных.

Растущая популярность Spark не обходится без скептиков. Некоторые говорят, что он нестабилен и не готов к широкому использованию. Другие говорят, что это в первую очередь «Силиконовая долина», и остальной мир не обязательно последует их примеру.

Один из способов определить тенденции — сломать сообщество Spark. Для этого подхода данные генерировались с использованием GitHub в качестве основного источника данных, дополненного превосходными API Clearbit . Для получения дополнительной информации о том, как данные были собраны, перейдите к разделу Методология.

А пока давайте покопаемся в выводах. Базовые данные на графиках ниже по состоянию на 10 октября 2015 года.

Китайская искра опережает США

По общему признанию, эти данные основаны на подмножестве звездных наблюдателей GitHub. Даже тогда, спарк тяги в Китае удивляет. Как писал Мэтт Асей в 2014 году, создание бизнеса с открытым исходным кодом в Китае остается сложной задачей.

Калифорния ведет США

Отрадно видеть, что «другой» большой рынок программного обеспечения следит за Spark: Калифорния лидирует в США. Сюрпризом является отставание Нью-Йорка, если учесть, что IBM делает большую ставку на Spark. Это, наряду с растущим кластером компаний, разбирающихся в данных, в Нью-Йорке, предполагает, что Нью-Йорк должен расти гораздо быстрее.

Ниже приведен график, который сравнивает Силиконовую долину с остальной частью Калифорнии. Очевидно, что Силиконовая долина остается полигоном для тестирования нового программного обеспечения:

Spark для стартапов и школ

Для части пользователей извлечение данных включало компании, на которых они работают. Как показано ниже, большинство пользователей Spark работают в частных компаниях и / или образовательных организациях:

Учитывая происхождение Spark (AMPLab в Калифорнийском университете в Беркли) и зрелость (версия 1.0 выпущена в марте 2014 года), это неудивительно. Тем не менее, число публичных компаний может быть недопредставлено здесь из-за корпоративных правил участия в проектах с открытым исходным кодом или раскрытия информации о филиалах.

Гендерный дисбаланс: еще одна точка данных

В соответствии с оценкой Clearbit API-адресов электронной почты, в разбивке по полу 2134 звездных наблюдателей Spark 1233 мужчины, 34 женщины, 860 неопознанных и 7 других. Это равняется 2,66% идентифицированного сообщества как женщины.

Как это число складывается с другими женщинами в технологической статистике? По словам Трейси Чоу из Pinterest, 18,89% программистов и 12% выпускников факультетов компьютерных наук — женщины . По сравнению с этими цифрами, сообщество Spark кажется более доминирующим, чем норма.

Тем не менее, исследования Алиссы Фрази показывают, что женщины значительно недопредставлены или недооценены на GitHub по сравнению со средним показателем по отрасли. В разбивке по языку программирования, всего 5,5%, у R был самый высокий процент владения репозиторием среди женщин. Хотя это не внушает оптимизма для будущего программного обеспечения — и особенно с открытым исходным кодом с GitHub в качестве представителя участия женщин — сообщество Spark ближе к среднему по GitHub, чем особенно с гендерным дисбалансом.

Ну и что?

  1. Spark все еще находится на ранней стадии освоения, и наибольший интерес вызывают стартапы и компании из Силиконовой долины.
  2. Одним из менее интуитивных открытий стало сильное усыновление Спарк в Китае. В Китае нет недостатка в новых разработчиках программного обеспечения (более 100 000 в год), но исторически участие открытого источника было относительно небольшим.

Вот несколько вопросов для последующего исследования:

  1. Как изменятся данные сообщества Spark, если мы использовали Forks вместо Stars в качестве индикатора интереса?
  2. Как внедрение Spark в Китае сравнивается с другими проектами с открытым исходным кодом, связанными с данными?
  3. Какие другие источники данных можно использовать для измерения тенденций сообщества Spark (список рассылки Spark, StackOverflow и т. Д.)? Будет ли какая-то разница?

методология

Искры звездных обозревателей использовались в качестве доверенного лица интересов. Octokit.rb использовался для получения метаданных для каждого звездного обозревателя , в частности, даты, когда они помечали репозиторий ( скрипт ). Затем перечисленные электронные письма использовались для дополнения демографической информации с использованием привязки Python Clearbit . Код выглядит как:

import clearbit
for email in spark_users_with_email:
   try:
     combined = clearbit.Enrichment.find(email=email, stream=True)
     if combined[‘response’].ok:
       del combined[‘response’]        of.write(json.dumps(combined)+”\n”)
     else:
       print >> sys.stderr, “FAILED: %s”%(email)
     except:
       print >> sys.stderr, “FAILED: %s”%(email)

Данные из Clearbit использовались для дополнения данных GitHub, таких как пол, принадлежность компании, санитарные географические данные и так далее. После того как данные были переведены в формат JSON для каждой строки, вся пост-обработка была выполнена с помощью Pandas + Seaborn .