Přejít k navigační liště

Zdroják » Zprávičky » Libo programátorský data mining? Data z GitHubu jsou na Google BigQuery

Libo programátorský data mining? Data z GitHubu jsou na Google BigQuery

Zprávičky ‐ ‐ Různé ‐

Nálepky:

GitHub, populární služba na hostování GIT repozitářů, zpřístupnila svá data pomocí služby Google BigQuery. Můžete tak provádět data mining nad všemi veřejnými repozitáři s odezvou několik vteřin.

Služba je postavená na projektu Githubarchive­.org, který má vlastní API k získávání archivních dat pro statistické účely, a který archivuje všech 18 typů událostí, jež můžou na GitHubu u projektu nastat (push, fork, komentář commitu, stažení atd.)

Ta pravá legrace ovšem nastává při použití Google BigQuery, který umožňuje se pomocí SQL tohoto archivu dotazovat. Kupříkladu pomocí tohoto dotazu zjistíte, jak na tom bylo přispívání do jednotlivých projektů v tomto březnu napříč programovacími jazyky:

SELECT count(repository_name) as pushes, repository_language
FROM [publicdata:samples.github_timeline]
WHERE type="PushEvent"
    AND PARSE_UTC_USEC(created_at) >= PARSE_UTC_USEC('2012-03-01 00:00:00') AND PARSE_UTC_USEC(created_at) < PARSE_UTC_USEC('2012-04-01 00:00:00')
GROUP BY repository_language
ORDER BY pushes DESC
LIMIT 100

A tady je výsledek:

Záměnou PushEvent v SQL dotazu za další události můžete podobně získat žebříček počtu stažení ( DownloadEvent) nebo třeba sledování ( WatchEvent).

Výsledná data můžou být rozhodně zajímavá a pokud je nám známo, GitHub je první službou v historii, která podobná data veřejně zpřístupnila, navíc snadno zpracovatelným způsobem. Jistě, GitHub obsahuje jen vzorek všech programátorských projektů a účty na něm má jen zlomek programátorů, jedná se ovšem o službu dost populární na to, aby získaná data dávala nějaký smysl.

Příklady dalších šikovných dotazů najdete v dokumentaci projektu, níže pak najdete jednoduchou infografiku z dubnových dat, která byla publikována na GitHub blogu.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Nejvíce hlasů

Začal jako projekt studentů Matfyzu. Český BIRD dnes pomáhá řídit provoz na největších internetových uzlech

Internet drží pohromadě i díky místům, kde se propojují sítě poskytovatelů připojení, cloudů nebo videoslužeb. S předáváním informací o tom, kudy jsou jednotlivé sítě dostupné, jim ve Frankfurtu, Londýně i Amsterdamu pomáhá český BIRD. Začal jako studentský projekt, po první verzi z roku 2000 léta spíš dřímal a soustavný vývoj obnovil až CZ.NIC. Ve své úloze uspěl tak výrazně, že největší uzly nakonec začaly platit vývoj konkurenčního softwaru, aby nebyly závislé jen na něm.

WebSocket: Jak dostat webovou aplikaci do reálného času

Chat, živé notifikace, společná úprava dokumentu nebo průběžně aktualizované kurzy. Uživatelé dnes čekají, že se webová aplikace změní ve chvíli, kdy se změní data, a ne až po stisknutí klávesy F5. Protokol WebSocket je nejrozšířenější způsob, jak mezi prohlížečem a serverem vytvořit trvalý obousměrný kanál. V článku se podíváme, jak funguje pod kapotou, jak ho použít v prohlížeči i na serveru a na co si dát pozor při nasazení do produkce.