Задавшись целью найти источники объективной статистики об использовании ClickHouse, аналитики BI Consult оценили активность участников комьюнити проекта на GitHub — крупнейшем веб-сервисе для совместной разработки ИТ-проектов. Метрикой оценки стало количество одобренных сообществом Pull Requests (PR) — запросов на принятие изменений в основной ветке исходного репозитория. Фильтры GitHub позволяют отсортировать по времени авторов принятых PR.
Выделив участников, чьи запросы на изменения одобрялись, аналитики попытались определить их работодателя по данным с личных страниц на GitHub. Однако такая информация указывается не всегда. В случаях, когда данных не было, делали запрос в LinkediIn и Google по фамилии и инициалам разработчика. По LinkediIn также отслеживали карьерные перемещения участников комьюнити, чтобы определить, в чьих интересах делалась работа в выбранный период времени. Поиск осуществлялся исключительно по открытым данным — приватность не была нарушена.
В рамках исследования аналитики изучили аккаунты авторов PR в ClickHouse в 2023 году на GitHub. Всего их нашлось 325, с их стороны в ядро ClickHouse было внесено 7399 PR. 72 аккаунта относятся к основному разработчику проекта ClickHouse — ClickHouse, Inc. 253 аккаунта относятся к международному сообществу. При этом доля аккаунтов с известным работодателем от всего международного сообщества составила 60%, а количество принятых PR — 83%.
В топ-5 лидеров по вкладу в развитие ClickHouse вошли:
- Semrush (296 PR, доля в комьюнити 22%);
- Altinity, Inc (123 PR, доля в комьюнити 9%);
- IBM (105 PR, доля в комьюнити 8%);
- Tencent (63 PR, доля в комьюнити 5%);
- Arenadata (61 PR, доля в комьюнити 5%).
«Быть причастным к развитию Open Source проектов — важная цель для большинства разработчиков. Arenadata активно вносит свой вклад в ряд технологий, включая ClickHouse. И то, что мы вошли в пятёрку ведущих контрибьютеров среди мирового сообщества, подтверждает тот факт, что для нас важно, чтобы экспертиза компании была полезна всему рынку по работе с данными».
Arenadata на основе ClickHouse разрабатывает собственную кластерную колоночную СУБД Arenadata QuickMarts (ADQM). Она позволяет выполнять аналитические запросы в режиме реального времени на структурированных больших данных.
Среди PR, внесённых разработчиками Arenadata в ClickHouse, можно выделить следующие:
- Kerberos-авторизация для Kafka в ClickHouse. Kerberos-авторизация для Kafka позволяет настроить авторизацию в ClickHouse (и ADQM, соответственно): конфигурационный файл ClickHouse управляет библиотекой librdkafka, обеспечивающей взаимодействие с Kafka. Основная сложность этой разработки была связана с тем, что в ClickHouse изначально заложено минимальное количество внешних зависимостей. Стандартный для продукта способ использования библиотек — полная интеграция. Ещё одна значимость этого релиза в том, что были решены некоторые технические проблемы, которые дали возможность комьюнити проекта использовать Kerberos в ClickHouse. От Arenadata потребовалось много усилий для создания окружения из docker-контейнеров с Kafka, ZooKeeper и Kerberos KDC для тестирования новых функций.
- Kerberos-авторизация доступа к HDFS в ClickHouse. В релизе ClickHouse 21.1 (январь 2021 года) вышла реализация kerberos-авторизации доступа к HDFS, сделанная нашей командой. Эта доработка важна для большого числа пользователей и позволяет ClickHouse работать с керберизированной HDFS.
- Поддержка зашифрованных элементов в конфигурационном файле. До этого момента пароли в ClickHouse хранились в виде текста в открытом виде, что не является нормой с точки зрения безопасности и создаёт огромные риски возникновения инцидентов. Данное внедрение позволяет хранить пароли в зашифрованном виде, так чтобы пользователь не мог их просмотреть, просто открыв файл.
- Параметр для управления числом активных подключений в рамках одного пользователя. Ранее в ClickHouse администратор мог управлять только общим числом подключений, что не является контролируемым и безопасным сценарием: когда один пользователь занял все доступные подключения, другие фактически теряли возможность работать. Благодаря данной доработке управление и администрирование ClickHouse стало более гранулярным, а работа пользователей — стабильнее.
- OR Operator in ON Section for JOIN в ClickHouse. В релизе ClickHouse 21.11 Arenadata добавила OR-оператор в ON-секции для операции JOIN. Это важный шаг в направлении полной поддержки стандарта SQL проектом ClickHouse.