GitHub verilerini sorgulamak için BigQuery'yi kullanma

1. Giriş

BigQuery, Google'ın tümüyle yönetilen, düşük maliyetli analiz veritabanıdır. BigQuery ile terabaytlarca veriyi veritabanı yöneticisine veya herhangi bir altyapıyı yönetme ihtiyacı olmadan sorgulayabilirsiniz. BigQuery, aşina olduğunuz SQL ve yalnızca kullandığınız kadar ödeyin. BigQuery, anlamlı bulgulara ulaşabilmeniz için veri analizine odaklanmanıza olanak tanır.

Bu codelab'de BigQuery'de kullanılabilen herkese açık veri kümelerinden biri olan GitHub herkese açık veri kümesini nasıl sorgulayacağınızı öğreneceksiniz.

Neler öğreneceksiniz?

  • BigQuery'yi kullanma
  • Büyük bir veri kümesi hakkında bilgi edinmek için sorgu yazma

Gerekenler

  • Bir Google Cloud projesi
  • Chrome veya Firefox gibi bir tarayıcı

2. Hazırlanın

BigQuery'yi etkinleştirme

Google Hesabınız (Gmail veya Google Apps) yoksa bir hesap oluşturmanız gerekir.

  • Google Cloud Platform konsolunda oturum açın ( console.cloud.google.com) ve BigQuery'ye gidin. BigQuery web kullanıcı arayüzünü, aşağıdaki URL'yi tarayıcınıza girerek de doğrudan açabilirsiniz.
https://console.cloud.google.com/bigquery
  • Hizmet Şartları'nı kabul edin.
  • BigQuery'yi kullanabilmek için önce bir proje oluşturmanız gerekir. Yeni projenizi oluşturmak için talimatları uygulayın.

Bir proje adı seçin ve proje kimliğini not edin. 5dHf3myqCTd3rm-fowZ_aU3An-T_NTgNnIZtQILio27us0xB3StjnSNnQraAnllEQCH4N2nMwLU1mnELwbNN85tbwNC_DbIdbxU8ufzJYW1MWpYu0hnbSrAajpAaRNs8UBeWFu68Aw.

Proje kimliği, tüm Google Cloud projelerindeki benzersiz bir addır. Bu kod laboratuvarın ilerleyen bölümlerinde PROJECT_ID olarak adlandırılacaktır.

Bu codelab'de, BigQuery korumalı alanı sınırları ile ilişkili BigQuery kaynakları kullanılır. Faturalandırma hesabı gerekmez. Daha sonra korumalı alan sınırlarını kaldırmak isterseniz Google Cloud Platform ücretsiz deneme sürümüne kaydolarak bir faturalandırma hesabı ekleyebilirsiniz.

3. GitHub verilerini önizle

BigQuery web kullanıcı arayüzünde GitHub veri kümesini açın.

https://console.cloud.google.com/bigquery?p=bigquery-public-data&d=github_repos&t=commits&page=table

Verilerin nasıl göründüğüne hızlıca göz atın.

ed0b9fce5eab1c6b.png

4. GitHub verilerini sorgulama

Sorgu düzenleyiciyi açın.

759423d320075d96.png

GitHub herkese açık veri kümesinde en yaygın kaydetme mesajlarını bulmak için aşağıdaki sorguyu girin:

SELECT subject AS subject,
  COUNT(*) AS num_duplicates
FROM `bigquery-public-data.github_repos.sample_commits`
GROUP BY subject
ORDER BY num_duplicates DESC
LIMIT 100

GitHub veri kümesinin büyük olması nedeniyle, maliyet tasarrufu için denemeler yaparken daha küçük bir örnek veri kümesi kullanmak işe yarar. Sorgu maliyetini tahmin etmek için düzenleyicinin altında işlenen baytları kullanın.

fb66b7e9c6e838c.png

Çalıştır düğmesini tıklayın.

Sonuç birkaç saniye içinde en altta listelenir, ne kadar verinin işlendiğini ve bu işlemin ne kadar sürdüğünü gösterir.

3ce1a59763d0dab5.png

sample_commits tablosunun 2,49 GB olmasına karşın sorgu yalnızca 35,8 MB işlenmiştir. BigQuery yalnızca sorguda kullanılan sütunlardaki baytları işler. Bu nedenle, işlenen toplam veri miktarı tablo boyutundan önemli ölçüde az olabilir. Kümeleme ve bölümlendirme sayesinde, işlenen veri miktarı daha da azalabilir.

5. Diğer herkese açık veriler

Şimdi, diğer herkese açık veri kümelerinden biri gibi başka bir veri kümesini sorgulamayı deneyin.

Örneğin, aşağıdaki sorgu, Libraries.io herkese açık veri kümesinde bulunan ve hâlâ diğer projelerde bağımlılık olarak kullanılan popüler, desteği sonlandırılmış veya bakımsız projeleri bulur:

SELECT
  name,
  dependent_projects_count,
  language,
  status
FROM
  `bigquery-public-data.libraries_io.projects_with_repository_fields`
WHERE status IN ('Deprecated', 'Unmaintained')
ORDER BY dependent_projects_count DESC
LIMIT 100

Başka kuruluşlar da verilerini BigQuery'de herkese açık hale getirdi. Örneğin, GitHub'ın GH Arşivi veri kümesi, GitHub'da herkese açık etkinlikleri (ör. çekme istekleri, depo yıldızları ve açık sorunlar) analiz etmek için kullanılabilir. Python paketleri için indirme isteklerini analiz etmek amacıyla Python Software Foundation'ın PyPI veri kümesi kullanılabilir.

6. Tebrikler!

GitHub herkese açık veri kümesini sorgulamak için BigQuery ve SQL kullandınız. Petabayt ölçeğindeki veri kümelerini sorgulayabilirsiniz.

İşlediğiniz konular

  • GitHub kaydetme kayıtlarını sorgulamak için SQL söz dizimi kullanma
  • Büyük bir veri kümesi hakkında bilgi edinmek için sorgu yazma

Daha fazla bilgi