※このブログは2022年05月04日に公開された英語ブログ「Explore Deep in 4.6 Billion GitHub Events」の拙訳です。
46億というのは、文字通り天文学的な数字です。宇宙観測所ガイアがもたらした銀河系の最も豊富な星図には、20億弱の星が含まれています。46億のGitHubのイベントは、実際にはどのように見えるのでしょうか?このような膨大なデータから、どのような秘密や価値を見出すことができるのでしょうか?
さあ、いよいよです。その答えを見つけるために、OSSInsight.ioが役に立ちます。それは、最新のオープンソースインテリジェンスを提供し、リアルタイムで46億のGitHubイベントを深く掘り下げることによって、ひとつのGitHubプロジェクトを深く理解したり、2つのプロジェクトを迅速に比較するのに役立つインサイトツールです。ここでは、いくつかの使い方を紹介します。
GitHubの2つのプロジェクトを比較
異なるプロジェクトが時間とともにどのような成果を上げ、どのように発展してきたのか気になりませんか?どのプロジェクトがもっと注目される価値があるのでしょうか?OSSInsight.ioは、Compare Projectsのページであなたの質問に答えることができます。
ここでは、Kubernetesのリポジトリ(K8s)とDockerのMobyリポジトリを例にとって、人気度とコーディングの活力という観点から比較してみましょう。
人気度
2つのリポジトリの人気度を比較するために、スターの数、時間経過によるスターの増加傾向、stargazer(スターゲイザー)の地理的・雇用主の分布などの複数の指標を使用しています。
スターの数
下の折れ線グラフは、K8sとMobyの各年の累積スター数を示したものである。このグラフによると、2019年後半まではMobyがK8sを上回っていました。2017年以降はMobyのスターの伸びが鈍化し、K8sは安定した伸び率を保っています。
K8s と Moby のスターの歴史
スターゲイザーの地理的分布
下の地図は、MobyとK8sのスターゲイザーの地理的な分布を示しています。ご覧の通り、それらのスターゲイザーは世界中に散らばっており、アメリカ、ヨーロッパ、中国からのユーザーが大半を占めています。
K8s と Moby のスターゲイザーの地理的分布
スターゲイザーの雇用分布
下図は、K8s(赤)とMoby(紺)のスターゲイザーの雇用主を示したものです。両者のスターゲイザーは幅広い業種で働いており、Google、Tencent、Microsoftといった大手ドットコム企業が多いのが特徴です。違いは、K8sのスターゲイザーの上位2社が米国のGoogleとMicrosoftであるのに対し、Mobyの上位2社は中国のTencentとAlibabaである点です。
K8s と Moby のスターゲイザーの雇用分布
コーディング活性度
2つのGitHubプロジェクトのコーディング活力を比較するために、プルリクエスト(PR)の増加傾向、PR、コミット、プッシュの月間件数、開発者の貢献時間のヒートマップなど多くのメトリクスを使用します。
コミット数およびプッシュ数
下の棒グラフは、K8s (上) と Moby (下) の開始後の各月のコミット数とプッシュ数の推移を表しています。一般に、K8s は Moby よりもプッシュとコミットの数が多く、その数は2020 年まで安定的に増加し、その後減速しています。Mobyの月別プッシュ数とコミット数は、2015年から2017年にかけて微増し、2018年以降はほとんど増えていません。
K8s(上)と Moby(下)の月別プッシュとコミット
PR数
下の図は、2つのリポジトリの月間PR数および累積PR数の推移を示したものです。ご覧の通り、K8sは開設以来、安定した数のPRがあり、累積PR数も順調に伸びています。Mobyは、2017年後半までは多くのPRがありましたが、その後減少に転じました。その累積PR数は2017年に大きな変化が見られなくなり、その後もその状態が続いています。
K8s(上)と Moby(下)の月別および累積PR数
開発者の貢献時間
以下のヒートマップは、K8s(左)とMoby(右)の開発者の貢献時間を表しています。各四角は一日のうち一時間を表しています。色が濃いほど、その時間帯に多くの貢献があったことを意味します。K8sはMobyよりも濃い色の部分が多く、K8sのコントリビューションはほぼ1日24時間、週7日発生しています。K8sはMobyよりも間違いなくダイナミックなコーディング活動をしています。
K8s(左)と Moby(右)の開発者の貢献時間のヒートマップ
これらの指標を総合すると、K8sとMobyの両方が世界で人気がある一方で、K8sはMobyよりも活気のあるコーディング活動を展開していることがわかります。K8sは継続的に人気とコーディングの活力を高めているのに対し、Mobyは時間の経過とともにその両方が低下しています。
人気度とコーディングの活力は、リポジトリを比較するための2つの次元に過ぎません。もっといろいろなことを知りたい、あるいは他のプロジェクトと比較したいという場合は、比較のページにアクセスして自分で調べてみてください。
もちろん、このページでGitHubプロジェクトを詳しく調べ、その最新の情報を得ることもできます。主要なメトリクスとそれに対応する変更点が、パノラマビューで表示されます。PRサイズごとのグループやPRラインごとのコード変更など、より詳細な分析も可能です。自分で調べてみると、きっと驚くことでしょう。楽しんでください。
主要なGitHubメトリクスのパノラマビュー(K8sを例として)
毎月の総PR数/PRグループ(K8sを例として)
毎月のコード変更行数(K8sを例として)
オープンソースの主要な洞察
OSSInsight.ioは、リポジトリの探索や比較だけではありません。オープンソースの過去のリアルタイム、そしてカスタムな洞察を提供します。このセクションでは、オープンソースのデータベースとプログラミング言語に関する主要な洞察をいくつか紹介します。他の分野での洞察を得たい場合は、Insightsページをご自身で調べてみてください。
注:これらの分析結果を自分で得たい場合は、この10分間のチュートリアルに従って、TiDB Cloud上で各チャートの上にあるSQLコマンドを簡単に実行することができます。
Rust:最もアクティブなプログラミング言語
Rustは2012年に初めてリリースされ、10年もの間、主要なプログラミング言語の一つとして君臨しています。執筆時点で合計103,047件のPRがあり、最も活発なリポジトリです。
主要なプログラミング言語のPR数
Go: 新たな人気者となり、最も急速に成長しているプログラミング言語
OSSInsight.ioによると、10のプログラミング言語がオープンソースコミュニティを支配しています。Goは108,317のスターで最も人気があり、NodeとTypeScriptがそれに続いています。また、Goは最も人気のある急成長中の言語でもあります。
主要なプログラミング言語のスター数の成長傾向
MicrosoftとGoogle:プログラミング言語の貢献者数トップ2
世界的に有名なハイテク企業であるMicrosoftとGoogleは、本稿執筆時点でそれぞれ1,443人と947人のコントリビューターを抱え、オープンソース言語コントリビューターの首位に立っています。
プログラミング言語に最も貢献している企業
最も注目を集めるElasticsearch
Elasticsearchは、最初のオープンソースデータベースの1つです。64,554のスターを持つ最も好かれたデータベースで、RedisとPrometheusがそれに続いています。2011年から2016年までは、ElasticseasrchとRedisがトップを分け合っていましたが、2017年にElasticsearchが抜け出しました。
主要なデータベースのスター数の成長傾向
中国:オープンソースデータベースのファン数No.1
データベースリポジトリのスターゲイザーが11,171人と最もオープンソースデータベースのファンが多いのは中国、次いでアメリカ、ヨーロッパとなっています。
オープンソースデータベースのスターゲイザーの地理的分布
OSSInsight.ioでは、2011年以降に作成されたGitHubリポジトリに対して、独自のカスタムインサイトを作成することも可能です。ぜひ、Insightsのページで詳細をご覧ください。
TiDB Cloudで独自の分析を実行
OSSInsight.ioのすべての分析は、サービスとしてのフルマネージドデータベースであるTiDB Cloudによって提供されています。独自の分析を実行し、独自の洞察を得たい場合は、TiDB Cloudアカウントにサインアップし、この10分間のチュートリアルでご自身で試してみてください。
TiDB Cloud Dedicated
TiDB Cloudのエンタープライズ版。
専用VPC上に構築された専有DBaaSでAWSとGoogle Cloudで利用可能。
TiDB Cloud Serverless
TiDB Cloudのライト版。
TiDBの機能をフルマネージド環境で使用でき無料かつお客様の裁量で利用開始。