Считаем звёзды в облаках: эксперимент создателей ClickHouse c датасетом GitHub
Разработчики ClickHouse проанализировали датасет архива GitHub и получили любопытную статистику о пользователях, компаниях, репозиториях и пулреквестах.
За основу этой статьи мы взяли публикацию «Milovidov A., 2020. Everything You Ever Wanted To Know About GitHub (But Were Afraid To Ask)
Разработчики ClickHouse проанализировали датасет архива GitHub из 3 млрд записей и 74 млн форков, сделанных за десять лет миллионами программистов. И получили любопытную статистику о пользователях, компаниях, репозиториях и пулреквестах.
Аналитика данных в облаке: почему это удобно
Аналитика GitHub предоставляет широкие возможности для изучения тенденций настоящего и будущего развития индустрии IT.
Даже отдельно взятому программисту любопытно знать, в какой день недели выше шанс поймать звезду, выложив свой проект на GitHub. Что уж говорить о компаниях, данные о которых можно проанализировать исходя из открытых фактов — количества репозиториев у компании, звезд и форков, issue и коммитов, которые оставляют сами разработчики. Достаточно уметь пользоваться инструментом для сбора и аналитики данных.
Один из популярных инструментов аналитики big data — СУБД ClickHouse. Сегодня при его помощи сотни корпораций работают с данными и анализируют в режиме реального времени петабайты информации.
Датасет, созданный в ClickHouse на основе архива GitHub
К счастью, сегодня облачные технологии уже позволяют обходиться без мощного железа и максимально быстро получать аналитику информационных массивов. Поэтому вы сами можете подготовить свой датасет GitHub и легко воспроизвести данные статистики с помощью управляемого ClickHouse в Yandex.Cloud.
Managed Service for ClickHouse как облачный сервис закрывает потребность в обслуживании баз данных — резервировании, мониторинге, обеспечении отказоустойчивости и обновлении ПО. Благодаря этому инструменту компании могут не беспокоиться о том, как работает СУБД, а концентрироваться на основных проектах. И, анализируя рынок, двигаться быстрее конкурентов.
Для этой статьи мы перевели и адаптировали занятные, на наш взгляд, данные о кухне разработчиков на самой большой в мире площадке для совместной работы программистов. Кроме того, для получения запросов мы использовали управляемый ClickHouse, из консоли которого сделали скриншоты.
12 фактов о мировой разработке на основе данных из GitHub
Звездный рейтинг репозиториев
Репозиториев, у которых есть хотя бы одна звезда, — 16 млн. Репозиториев с 10 или более звездами — 1,4 млн. Всего лишь 240 тыс. репозиториев получили свыше 100 звезд, 29 тыс. — больше 1 тыс. звезд, 1800 — более 10 тыс. звезд, и только 20 репозиториев получили свыше 100 тыс. звезд.
В какой день недели выше шансы поймать звезду
Как видите, это — вторник. И никак не выходной! Среда или четверг — еще может быть, но никак не понедельник и не пятница.
Общее число пользователей GitHub
34 миллиона. На самом деле это не просто зарегистрированные пользователи, а те, кто хоть что-то когда-то сделал на платформе.
Репозитории с наибольшим числом форков
На GitHub насчитывается 74 млн форков. Это примерно половина всех репозиториев. Если отфильтровать репозитории, основная цель которых — создание форков, то явным победителем станет TensorFlow, далее идут Bootstrap, React, OpenCV и Linux.
Самые громкие ревью кода
Первая ссылка в списке — сущее безумие. Но есть и немало интересных вещей, например предложение добавить встроенный ассемблерный код в Rust.
Рейтинг компаний по числу звезд
Можно заметить, что Google слегка опережает Microsoft. На самом деле все зависит от того, как вы будете считать. Пожалуй, можно приплюсовать TensorFlow, Kubernetes, Flutter, Golang и Chrome — к Google, GitHub и .Net — к Microsoft, Facebook Research и React — к Facebook.
Рейтинг компаний по числу репозиториев
Чтобы не показывать пользователей, имеющих огромное число разветвленных репозиториев, или тех, кто использует GitHub не по назначению, разработчики добавили порог в десять звезд. Microsoft побеждает с огромным отрывом. Издательство Packt Publishing также заслуживает внимания — у них есть репозитории для статей и книг. Sindre Sorhus тоже весьма известен в проектах с открытым исходным кодом, в основном как один из авторов списка Awesome Awesomeness
Рейтинг компаний по размеру сообществ пользователей
Microsoft побеждает в четырех из шести категорий. Apache выигрывает по числу рецензентов кода. Оказывается, они не всегда используют JIRA. Проект learn-co-students выигрывает по числу авторов пулреквестов. Кстати говоря, у них есть еще 250 тыс. репозиториев!
Наиболее часто используемые ярлыки
Какие самые популярные ярлыки у issue и pull request? Багов больше, чем улучшений. К счастью, совсем ненамного. JavaScript — это единственный ярлык, связанный с языком программирования, в верхней части списка.
Самые длинные имена репозиториев
Самое любимое название среди разработчиков — это название из 132 латинских букв «e» подряд. Как, вы до сих пор не слышали об этом репозитории?
Самые короткие имена репозиториев
Рулетка GitHub — истинное лицо Octoverse
Выполните несколько запросов и почувствуйте истинный пульс Octoverse
Можете сами поиграть с данными GitHub и создать свои запросы к «лунной призме» разработчиков. Как это делается, пошагово описано в статье Алексея Миловидова
Конечно, архивный датасет GitHub очень мал для ClickHouse. Многие компании используют распределенные многопетабайтные установки ClickHouse для различных высоконагруженных задач — например, для анализа существенной доли мирового интернет-трафика в режиме реального времени.
А вся аналитика десятилетнего архива GitHub легко умещается на ноутбуке. И даже если ваш ноутбук недостаточно мощный, вы можете развернуть собственный экземпляр Managed Service for ClickHouse в облаке