arrow_back

BigQuery ve Cloud SQL İçin SQL'e Giriş

Sign in Join
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

BigQuery ve Cloud SQL İçin SQL'e Giriş

Lab 1 hour 15 minutes universal_currency_alt 1 Credit show_chart Introductory
info This lab may incorporate AI tools to support your learning.
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP281

Google Cloud Rehbersiz Laboratuvarları

Genel Bakış

SQL (Yapılandırılmış Sorgu Dili), yapılandırılmış veri kümelerine soru sormanıza ve bunlardan ayrıntılı bilgiler elde etmenize olanak tanıyan veri işlemleri için standart bir dildir. Veritabanı yönetimi alanında yaygın bir şekilde kullanılır. İşlem kayıtlarının ilişkisel veritabanlarına yazılması ve petabayt ölçeğinde veri analizi gibi görevleri gerçekleştirmenizi sağlar.

Laboratuvar iki bölüme ayrılmıştır. İlk bölümde SQL sorgulaması için temel anahtar kelimeleri öğrenecek ve BigQuery'de bu anahtar kelimeleri, Londra'daki bisiklet paylaşımlarıyla ilgili bilgiler içeren herkese açık bir veri kümesi üzerinde çalıştıracaksınız.

İkinci bölümdeyse Londra'daki bisiklet paylaşımı veri kümesinin alt kümelerini CSV dosyalarına aktaracak ve bu dosyaları Cloud SQL'e yükleyeceksiniz. Ardından, veritabanı ve tablolar oluşturup yönetmek için Cloud SQL kullanmayı öğreneceksiniz. Laboratuvarın sonuna doğru, verileri değiştirip düzenleyen ek SQL anahtar kelimelerini kullanarak uygulamalı alıştırmalar yapacaksınız.

Neler öğreneceksiniz?

Bu laboratuvarda öğrenecekleriniz:

  • BigQuery'ye veri işleme
  • BigQuery'de basit sorgular yürüterek verileri inceleme
  • Veri alt kümesini CSV dosyasına aktarma ve söz konusu dosyayı yeni bir Cloud Storage paketinde depolama
  • Yeni Cloud SQL örneği oluşturma ve dışa aktardığınız CSV dosyasını yeni tablo olarak yükleme

Ön koşullar

Çok Önemli: Bu laboratuvara başlamadan önce kişisel veya kurumsal Gmail hesabınızdan çıkış yapın.

Bu laboratuvar giriş düzeyine uygundur. Yani SQL konusunda çok az deneyimli veya deneyimsiz olduğunuz varsayılır. Cloud Storage ve Cloud Shell'e aşina olmanız önerilir ancak zorunlu değildir. Bu laboratuvarda SQL sorgularını okuma ve yazmayla ilgili temel bilgileri öğreneceksiniz. Bu işlemleri BigQuery ve Cloud SQL kullanarak uygulayacaksınız.

Bu laboratuvara katılmadan önce SQL'deki yeterlilik seviyenizi değerlendirin. Aşağıda verilen laboratuvarlar daha zorlayıcıdır ve bilgilerinizi daha gelişmiş kullanım alanlarına uygulamanızı sağlar:

Hazır olduğunuzda sayfayı aşağı kaydırın ve laboratuvar ortamınızı hazırlamak için ilgili adımları uygulayın.

Kurulum ve şartlar

Laboratuvarı Başlat düğmesini tıklamadan önce

Buradaki talimatları okuyun. Laboratuvarlar süreli olduğundan duraklatılamaz. Laboratuvarı Başlat'ı tıkladığınızda başlayan zamanlayıcı, Google Cloud kaynaklarının ne süreyle kullanımınıza açık durumda kalacağını gösterir.

Bu uygulamalı laboratuvarı kullanarak, laboratuvar etkinliklerini gerçek bir bulut ortamında (Simülasyon veya demo ortamında değil.) gerçekleştirebilirsiniz. Bu olanağın sunulabilmesi için size yeni, geçici kimlik bilgileri verilir. Bu kimlik bilgilerini laboratuvar süresince Google Cloud'da oturum açmak ve Google Cloud'a erişmek için kullanırsınız.

Bu laboratuvarı tamamlamak için şunlar gerekir:

  • Standart bir internet tarayıcısına erişim (Chrome Tarayıcı önerilir).
Not: Bu laboratuvarı çalıştırmak için tarayıcıyı gizli pencerede açın. Aksi takdirde, kişisel hesabınızla öğrenci hesabınız arasında oluşabilecek çakışmalar nedeniyle kişisel hesabınızdan ek ücret alınabilir.
  • Laboratuvarı tamamlamak için yeterli süre. (Laboratuvarlar, başlatıldıktan sonra duraklatılamaz)
Not: Kişisel bir Google Cloud hesabınız veya projeniz varsa bu laboratuvarda kullanmayın. Aksi takdirde hesabınızdan ek ücret alınabilir.

Laboratuvarınızı başlatma ve Google Cloud Console'da oturum açma

  1. Laboratuvarı Başlat düğmesini tıklayın. Laboratuvar için ödeme yapmanız gerekiyorsa ödeme yöntemini seçebileceğiniz bir pop-up açılır. Soldaki Laboratuvar Ayrıntıları panelinde şunlar yer alır:

    • Google Cloud Console'u aç düğmesi
    • Kalan süre
    • Bu laboratuvarda kullanmanız gereken geçici kimlik bilgileri
    • Bu laboratuvarda ilerlemek için gerekebilecek diğer bilgiler
  2. Google Cloud Console'u aç'ı tıklayın (veya Chrome Tarayıcı'yı kullanıyorsanız sağ tıklayıp Bağlantıyı gizli pencerede aç'ı seçin).

    Laboratuvar, kaynakları çalıştırır ve sonra Oturum açın sayfasını gösteren başka bir sekme açar.

    İpucu: Sekmeleri ayrı pencerelerde, yan yana açın.

    Not: Hesap seçin iletişim kutusunu görürseniz Başka bir hesap kullan'ı tıklayın.
  3. Gerekirse aşağıdaki kullanıcı adını kopyalayıp Oturum açın iletişim kutusuna yapıştırın.

    {{{user_0.username | "Username"}}}

    Kullanıcı adını Laboratuvar ayrıntıları panelinde de bulabilirsiniz.

  4. İleri'yi tıklayın.

  5. Aşağıdaki şifreyi kopyalayıp Hoş geldiniz iletişim kutusuna yapıştırın.

    {{{user_0.password | "Password"}}}

    Şifreyi Laboratuvar ayrıntıları panelinde de bulabilirsiniz.

  6. İleri'yi tıklayın.

    Önemli: Laboratuvarın sizinle paylaştığı giriş bilgilerini kullanmanız gerekir. Google Cloud hesabınızın kimlik bilgilerini kullanmayın. Not: Bu laboratuvarda kendi Google Cloud hesabınızı kullanabilmek için ek ücret ödemeniz gerekebilir.
  7. Sonraki sayfalarda ilgili düğmeleri tıklayarak ilerleyin:

    • Şartları ve koşulları kabul edin.
    • Geçici bir hesap kullandığınızdan kurtarma seçenekleri veya iki faktörlü kimlik doğrulama eklemeyin.
    • Ücretsiz denemelere kaydolmayın.

Birkaç saniye sonra Google Cloud Console bu sekmede açılır.

Not: Google Cloud ürün ve hizmetlerinin listelendiği menüyü görmek için sol üstteki Gezinme menüsü'nü tıklayın. Gezinme menüsü simgesi

1. görev: SQL ile ilgili temel bilgiler

Veritabanları ve tablolar

Daha önce de belirtildiği gibi SQL, "yapılandırılmış veri kümelerinden" bilgi almanıza olanak tanır. Yapılandırılmış veri kümeleri, açıkça belirtilmiş bir biçimlendirmeye ve kurallara sahiptir. Genellikle tablo halinde karşımıza çıkar veya satır ve sütunlar şeklinde biçimlendirilmiş veriler olarak düzenlenir.

Yapılandırılmamış verilere resim dosyaları örnek olarak verilebilir. Yapılandırılmamış veriler SQL'de çalıştırılamaz ve BigQuery veri kümelerinde veya tablolarında (en azından yerel olarak) depolanamaz. Örneğin, resim verileriyle çalışmak isterseniz Cloud Vision gibi bir hizmeti kullanabilir, belki ilgili API'den yararlanabilirsiniz.

Aşağıda yapılandırılmış veri kümelerine örnek olarak basit bir tablo verilmiştir:

User

Price

Shipped

Sean

35 ABD doları

Yes

Rocky

50 ABD doları

No

Google E-tablolar'ı daha önce kullandıysanız yukarıdaki tablo size tanıdık gelecektir. Tabloda User, Price ve Shipped sütunlarının yanı sıra sütun değerleri doldurulmuş iki satır yer alıyor.

Veritabanı temelde en az bir tablodan oluşan koleksiyondur. SQL, bir yapılandırılmış veritabanı yönetim aracıdır. Ancak sorguları genellikle (bu laboratuvarda da olduğu gibi) veritabanlarının tamamı yerine sadece bir kısmını içeren bir tablo veya birleştirilmiş birkaç tabloda çalıştırırsınız.

SELECT ve FROM

SQL yapısı gereği fonetiktir ve eğlence amaçlı keşif yapmıyorsanız sorguyu çalıştırmadan önce verilerinize neyi sormak istediğinizi belirlemeniz daima faydalı olacaktır.

SQL'de önceden tanımlanmış anahtar kelimeler bulunur. Bunları kullanarak sorunuzu İngilizce benzeri bir SQL söz dizimine uygun hale getirirsiniz. Böylece, veritabanı motorunun almak istediğiniz cevabı döndürmesini sağlarsınız.

En temel anahtar kelimeler SELECT ve FROM'dur:

  • Veri kümenizden çekmek istediğiniz alanları belirtmek için SELECT'i kullanın.
  • Verilerinizi çekmek istediğiniz tabloyu veya tabloları belirtmek için FROM'u kullanın.

Örneği incelemek, konuyu daha iyi anlamanıza yardımcı olabilir. USER, PRICE ve SHIPPED sütunlarını içeren example_table adlı tablo üzerinde çalıştığınızı varsayalım:

Example table

Yalnızca USER sütunundaki verileri çekmek istediğinizi düşünelim. Bu işlemi SELECT ve FROM anahtar kelimelerini içeren aşağıdaki sorguyu çalıştırarak yapabilirsiniz:

SELECT USER FROM example_table

Yukarıdaki komutu yürüttüğünüzde example_table tablosunun USER sütununda bulunan tüm adları seçersiniz.

SQL'in SELECT anahtar kelimesiyle birden fazla sütun da seçebilirsiniz. USER ve SHIPPED sütunlarında bulunan verileri çekmek istiyorsunuz diyelim. Bunu yapmak için SELECT sorgusuna başka bir sütun değeri ekleyerek önceki sorguyu değiştirin (Değerleri virgülle ayırdığınızdan emin olun):

SELECT USER, SHIPPED FROM example_table

Yukarıdaki komut çalıştırıldığında bellekten USER ve SHIPPED verileri getirilir:

Example table

Böylece, temel SQL anahtar kelimelerinden ikisini öğrenmiş oldunuz. Şimdiyse işleri biraz daha ilginç hale getirelim.

WHERE

WHERE anahtar kelimesi, tabloları belirli sütun değerlerine göre filtreleyen başka bir SQL komutudur. example_table tablosundan, paketleri gönderilmiş olanların adlarını çekmek istediğinizi varsayalım. WHERE anahtar kelimesini sorguya aşağıdaki gibi ekleyebilirsiniz:

SELECT USER FROM example_table WHERE SHIPPED='YES'

Yukarıdaki komutun çalıştırılması bellekten, paketleri gönderilmiş olan tüm kullanıcıları döndürür:

Example table

SQL'in temel anahtar kelimelerini ana hatlarıyla kavradığınıza göre bu tür sorguları BigQuery konsolunda çalıştırarak öğrendiklerinizi uygulayın.

Öğrendiklerinizi test etme

Aşağıda, şu ana kadar ele alınan kavramlarla ilgili bilgilerinizi pekiştirmek için bazı çoktan seçmeli sorular verilmiştir. Bu soruları elinizden geldiğince yanıtlamaya çalışın.

2. görev: BigQuery konsolunu keşfetme

BigQuery paradigması

BigQuery, Google Cloud üzerinde ve petabayt ölçeğinde çalışan, tümüyle yönetilen bir veri ambarıdır. Veri analistleri ve veri bilimciler, sunucuları kurup yönetme konusunda endişelenmeden büyük veri kümelerini hızla sorgulayıp filtreleyebilir, sonuçları toplayabilir ve karmaşık işlemler gerçekleştirebilir. BigQuery, bir komut satırı aracı (Cloud Shell'e önceden yüklenmiştir) veya web konsolu biçiminde sunulur. Her iki biçim de Google Cloud projelerinde barındırılan verileri yönetip sorgulamaya hazır haldedir.

Bu laboratuvarda, SQL sorguları çalıştırmak için web konsolunu kullanacaksınız.

BigQuery konsolunu açma

  1. Google Cloud Console'da,Gezinme menüsü > BigQuery'yi seçin.

Cloud Console'da BigQuery'ye Hoş Geldiniz mesaj kutusu açılır. Bu mesaj kutusunda, hızlı başlangıç kılavuzunun bağlantısı ve sürüm notları bulunur.

  1. Bitti'yi tıklayın.

BigQuery konsolu açılır.

Kullanıcı arayüzünün bazı önemli özelliklerini incelemek için birkaç dakikanızı ayırın. Konsolun sağ tarafında sorgu "Düzenleyici" bulunur. Bu düzenleyici, önceki bölümde ele aldığımız örneklere benzer SQL komutları yazıp çalıştırmanızı sağlar. Bu düzenleyicinin altındaysa daha önce çalıştırdığınız sorguların bir listesi olan "Sorgu geçmişi" yer alır.

Konsolun solundaki bölme, gezinme menüsüdür. Konsolda, içerikleri adlarından anlaşılabilen sorgu geçmişi, kaydedilmiş sorgular ve iş geçmişinin yanı sıra Gezgin sekmesi bulunur.

Gezgin sekmesindeki en üst düzey kaynaklarda Google Cloud projeleri yer alır. Bunlar, her bir Google Cloud Öğrenim Merkezi laboratuvarı sırasında oturum açarak kullandığınız geçici Google Cloud projelerine benzer. Konsolunuzda ve sonuncu ekran görüntüsünde görebileceğiniz üzere Gezgin sekmesinde yalnızca projeniz yer alır. Proje adının yanındaki ok işaretini tıklarsanız hiçbir şey gösterilmez.

Çünkü projenizde hiçbir veri kümesi veya tablo yer almamaktadır ve sorgu için kullanabileceğiniz öğe yoktur. Önceki bölümlerde veri kümelerinin tablolar içerdiğini öğrenmiştiniz. Projenize veri eklediğinizde BigQuery'de projelerin veri kümeleri, veri kümelerinin de tablolar içerdiğini unutmayın. Proje > veri kümesi > tablo paradigmasını ve konsolun inceliklerini daha iyi anladığınıza göre sorgulanabilir veriler yükleyebilirsiniz.

Sorgulanabilir veriler yükleme

Bu bölümde projenize bir miktar herkese açık veri çekerek BigQuery'de SQL komutlarını çalıştırma alıştırmaları yapabilirsiniz.

  1. + ADD'i (Ekle) tıklayın.

  2. Star a project by name'i (Projeleri isme göre yıldızlayın) seçin.

  3. Proje ismini bigquery-public-data olarak girin.

  4. STAR'ı (Yıldızla) tıklayın.

Bu yeni sekmede hâlâ laboratuvar projeniz dışında çalıştığınızı unutmamanız önemlidir. Yaptığınız işlem, veri kümesi ve tablolar içeren, herkesin erişebileceği bir projeyi analiz etmek amacıyla BigQuery'ye çekmekten ibarettir. Söz konusu projeye geçiş yapmadınız. İş ve hizmetlerinizin tümü hâlâ Google Cloud Öğrenim Merkezi hesabınıza bağlıdır. Konsolun üst kısmındaki proje alanını inceleyerek bu durumu kendiniz de doğrulayabilirsiniz:

Proje alanında Google Cloud Öğrenim Merkezi proje ismi gösteriliyor

  1. Artık şu verilere erişebilirsiniz:
  • Google Cloud Projesi → bigquery-public-data
  • Veri kümesi → london_bicycles
  1. İlişkili tabloları görmek için london bicycles veri kümesini tıklayın
  • Tablo → cycle_hire
  • Tablo → cycle_stations

Bu laboratuvarda cycle_hire verilerini kullanacaksınız. cycle_hire tablosunu açın, ardından Preview (Önizleme) sekmesini tıklayın. Tıkladığınızda aşağıdakine benzeyen bir sayfa açılır:

cycle_hire tablosu, önizleme sekmesi

Sütunları ve satırlardaki değerleri inceleyin. Artık cycle_hire tablosunda bazı SQL sorgularını çalıştırmaya hazırsınız.

BigQuery'de SELECT, FROM ve WHERE anahtar kelimelerini çalıştırma

Artık SQL sorgulaması anahtar kelimelerini ve BigQuery verileri paradigmasını temel düzeyde biliyorsunuz. Ayrıca, çalışırken kullanabileceğiniz bazı verilere sahipsiniz. Bu hizmeti kullanarak bazı SQL komutlarını çalıştırın.

Konsolun sağ alt köşesine göz attığınızda 83.434.866 satırlık veri olduğunu fark edeceksiniz. Bunlar, Londra'da 2015 ile 2017 yılları arasında bisiklet paylaşımıyla yapılan seyahatlerin sayısı. Hiç de küçük bir rakam değil!

Şimdi end_station_name adlı yedinci sütun anahtarını not edelim. Bu anahtar, bisiklet paylaşımı yolculuklarının son varış noktalarını belirtir. Konunun daha da derinine inmeden önce end_station_name sütununu tablodan ayırmak için basit bir sorgu çalıştırın.

  1. Şu komutu kopyalayıp sorgu Düzenleyici'ye yapıştırın:
SELECT end_station_name FROM `bigquery-public-data.london_bicycles.cycle_hire`;
  1. Ardından Run'ı (Çalıştır) tıklayın.

Yaklaşık 20 saniye sonra yalnızca end_station_name sütunu için sorguladığınız 83.434.866 satır döndürülür.

En az 20 dakika süren kaç bisiklet yolculuğu yapıldığını bulalım.

  1. Düzenleyicideki sorguyu temizleyin, ardından WHERE anahtar kelimesini kullanan aşağıdaki sorguyu çalıştırın:
SELECT * FROM `bigquery-public-data.london_bicycles.cycle_hire` WHERE duration>=1200;

Bu sorgunun çalışması yaklaşık bir dakika sürebilir.

SELECT * anahtar kelimesi tablodan tüm sütun değerlerini döndürür. Süre, saniye cinsinden ölçülür. Değer olarak 1.200'ü (60 * 20) kullanmanızın nedeni budur.

Sağ alt köşeye göz atarsanız 26.441.016 satırın döndürüldüğünü görürsünüz. Toplamın yalnızca bir kısmını ifade eden bu oran (26.441.016/83.434.866), Londra'daki bisiklet paylaşımı yolculuklarının yaklaşık %30'unun en az 20 dakika sürdüğü anlamına gelir. Belli ki uzun yolculuklara çıkmışlar.

Öğrendiklerinizi test etme

Aşağıda, şu ana kadar işlediğimiz kavramları daha iyi anlamanızı sağlayacak bazı çoktan seçmeli sorular verilmiştir. Bu soruları elinizden geldiğince yanıtlamaya çalışın.

3. görev: Diğer SQL Anahtar Kelimeleri: GROUP BY, COUNT, AS ve ORDER BY

GROUP BY

GROUP BY anahtar kelimesi ortak ölçütleri (ör. ortak bir değer) paylaşan sonuç kümesi satırlarını toplar ve bu tür ölçütler için bulunan tüm benzersiz girişleri döndürür.

Bu anahtar kelime, tablolardaki kategorik bilgileri bulmak için kullanışlıdır.

  1. Bu anahtar kelimenin işlevini daha iyi anlamak için düzenleyicideki sorguyu temizleyin, ardından aşağıdaki komutu kopyalayıp düzenleyiciye yapıştırın:
SELECT start_station_name FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name;
  1. Run'ı (Çalıştır) tıklayın.

Sonuçlar, benzersiz (yinelenmeyen) bir sütun değerleri listesidir.

GROUP BY anahtar kelimesi olmasaydı yapılan sorgu 83.434.866 satırın tamamını döndürürdü. GROUP BY anahtar kelimesi tabloda bulunan benzersiz sütun değerlerinin çıktısını verir. Sağ alt köşeyi inceleyerek bunu kendiniz de görebilirsiniz. 954 satır olduğunu göreceksiniz. Diğer bir ifadeyle, Londra'daki bisiklet paylaşımları için 954 farklı başlangıç noktası bulunuyor.

COUNT

COUNT() işlevi aynı ölçütleri (ör. ortak değer) paylaşan satır sayısını döndürür. Bu anahtar kelime GROUP BY ile birlikte kullanıldığında son derece faydalı olabilir.

Her bir başlangıç noktasında kaçar yolculuğun başladığını öğrenmek için önceki sorgunuza COUNT işlevini ekleyin.

  • Düzenleyicideki sorguyu temizleyin, ardından aşağıdaki komutu kopyalayıp düzenleyiciye yapıştırın ve Run'ı (Çalıştır) tıklayın:
SELECT start_station_name, COUNT(*) FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name;

Bu sonuç her bir başlangıç konumunda kaç bisiklet paylaşımı yolculuğunun başladığını gösterir.

AS

SQL'deki AS anahtar kelimesi, bir tablo veya sütun için takma ad oluşturur. Takma ad, döndürülen sütuna veya tabloya verilen yeni bir addır ve AS anahtar kelimesi tarafından belirtilir.

  1. Bu anahtar kelimeyi uygulamalı olarak görmek için son sorguya AS anahtar kelimesini ekleyin. Düzenleyicideki sorguyu temizleyin, ardından aşağıdaki komutu kopyalayıp düzenleyiciye yapıştırın:
SELECT start_station_name, COUNT(*) AS num_starts FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name;
  1. Run'ı (Çalıştır) tıklayın.

Sonuçlar için, COUNT(*) olan sağ sütun adı num_starts olarak değiştirildi.

Gördüğünüz üzere, döndürülen tablodaki COUNT(*) sütunu artık num_starts takma adına ayarlanmış durumda. Bu anahtar kelime özellikle büyük veri kümeleriyle çalışırken kullanışlıdır. Belirsiz bir tablo veya sütun adını unutmak kolaydır.

ORDER BY

ORDER BY anahtar kelimesi, sorgunun döndürdüğü verileri belirtilen ölçütlere veya sütun değerine göre yukarıdan aşağıya ya da aşağıdan yukarıya sıralar. Bu anahtar kelimeyi önceki sorgunuza ekleyerek aşağıdaki işlemleri gerçekleştireceksiniz:

  • Bisiklet paylaşımı yolculuklarının sayısını içeren ve başlangıç istasyonlarına göre gruplanan tabloyu, başlangıç istasyonuna göre alfabetik olarak düzenlenmiş şekilde döndürme
  • Bisiklet paylaşımı yolculuklarının sayısını içeren ve başlangıç istasyonlarına göre gruplanan tabloyu, yolculuk sayısına göre en düşükten en yükseğe doğru düzenlenmiş şekilde döndürme
  • Bisiklet paylaşımı yolculuklarının sayısını içeren ve başlangıç istasyonlarına göre gruplanan tabloyu, yolculuk sayısına göre en yüksekten en düşüğe doğru düzenlenmiş şekilde döndürme

Aşağıdaki komutların her biri farklı birer sorgudur. Her bir komut için:

  1. Sorgu Düzenleyici'yi temizleyin.
  2. Komutu kopyalayıp Sorgu Düzenleyici'ye yapıştırın.
  3. Run'ı (Çalıştır) tıklayın. Sonuçları inceleyin.
SELECT start_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name ORDER BY start_station_name; SELECT start_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name ORDER BY num; SELECT start_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name ORDER BY num DESC;

Son sorgunun sonuçları, konumlardan yapılan başlangıç sayılarına göre başlangıç konumlarını listeler.

En yüksek başlangıç sayısı "Belgrove Street, King's Cross" başlangıç noktasında. Bununla birlikte, toplam rakama oranla (234.458/83.434.866) yolculukların %1'den küçük bir bölümü bu istasyondan başlamış.

Öğrendiklerinizi test etme

Aşağıda, şu ana kadar ele alınan kavramlarla ilgili bilgilerinizi pekiştirmek için bazı çoktan seçmeli sorular verilmiştir. Bu soruları elinizden geldiğince yanıtlamaya çalışın.

4. görev: Cloud SQL ile çalışma

Sorguları CSV dosyaları olarak dışa aktarma

Cloud SQL, buluta ilişkisel PostgreSQL ve MySQL veritabanları kurmayı, veritabanlarınızı yönetmeyi ve bunların bakımını yapmayı kolaylaştıran, tümüyle yönetilen bir veritabanı hizmetidir. Cloud SQL, döküm dosyaları (.sql) ve CSV dosyaları (.csv) olmak üzere iki tür veri biçimini kabul eder. cycle_hire tablosunun alt kümelerini CSV dosyalarına aktarmayı ve bu dosyaları ara konum olarak Cloud Storage'a yüklemeyi öğreneceksiniz.

BigQuery konsolunda en son şu komutu çalıştırmıştınız:

SELECT start_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY start_station_name ORDER BY num DESC;
  1. Query Results (Sorgu Sonuçları) bölümünde SAVE RESULTS (SONUÇLARI KAYDET) > CSV(local file) (CSV (yerel dosya)) öğesini tıklayın. Bunun sonucunda, sorguyu CSV dosyası olarak kaydeden indirme işlemi başlatılır. İndirilen bu dosyanın konumunu ve adını not edin. Birazdan bu bilgilere ihtiyacınız olacak.

  2. Sorgu Düzenleyici'yi temizleyin, ardından aşağıdaki komutu kopyalayıp sorgu düzenleyiciye yapıştırın:

SELECT end_station_name, COUNT(*) AS num FROM `bigquery-public-data.london_bicycles.cycle_hire` GROUP BY end_station_name ORDER BY num DESC;

Bu komut, bisiklet paylaşımı yolculuklarının sayısını içeren ve bitiş istasyonlarına göre gruplanan tabloyu, yolculuk sayısı en yüksek bitiş istasyonundan en düşük olana göre düzenlenmiş şekilde döndürür.

  1. Query Results (Sorgu Sonuçları) bölümünde SAVE RESULTS (SONUÇLARI KAYDET) > CSV(local file) (CSV (yerel dosya)) öğesini tıklayın. Bunun sonucunda, sorguyu CSV dosyası olarak kaydeden indirme işlemi başlatılır. İndirilen bu dosyanın konumunu ve adını not edin. Aşağıdaki bölümde bu bilgilere ihtiyacınız olacak.

CSV dosyalarını Cloud Storage'a yükleme

  1. Cloud Console'a gidin. Burada, oluşturduğunuz dosyaları yükleyebileceğiniz bir depolama paketi oluşturacaksınız.

  2. Gezinme menüsü > Cloud Storage > Buckets'ı (Paketler) seçin, ardından CREATE BUCKET'ı (PAKET OLUŞTUR) tıklayın.

Not: İstenirse kaydedilmeyen çalışmalar için LEAVE'i (AYRIL) tıklayın.
  1. Paketiniz için benzersiz bir ad girin, diğer ayarları değiştirmeyin ve Create'i (Oluştur) tıklayın.

  2. İstenirse Public access will be prevented (Herkese açık erişim önlenecek) iletişim kutusunda Confirm'ü (Onayla) seçin.

Tamamlanan görevi test etme

Laboratuvardaki ilerleme durumunuzu kontrol etmek için İlerleme durumumu kontrol et'i tıklayın. Paketinizi başarıyla oluşturduysanız bir değerlendirme puanı görürsünüz.

Cloud Storage paketi oluşturun.

Şu anda, yeni oluşturduğunuz Cloud Storage paketini Cloud Console'da inceliyor olmanız gerekir.

  1. UPLOAD FILES'ı (DOSYALARI YÜKLE) tıklayın ve start_station_name verilerini içeren CSV dosyasını seçin.

  2. Ardından Open'ı (Aç) tıklayın. Bu işlemi end_station_name verileri için tekrarlayın.

  3. Dosya adının yanındaki üç nokta işaretini, ardından rename'i (yeniden adlandır) tıklayarak start_station_name dosyanızı yeniden adlandırın. Dosyayı start_station_data.csv olarak yeniden adlandırın.

  4. Dosya adının yanındaki üç nokta işaretini, ardından rename'i (yeniden adlandır) tıklayarak end_station_name dosyanızı yeniden adlandırın. Dosyayı end_station_data.csv olarak yeniden adlandırın.

Şimdi, Bucket details (Paket ayrıntıları) sayfasındaki Objects (Nesneler) listesinde start_station_data.csv ve end_station_data.csv'yi göreceksiniz.

Tamamlanan görevi test etme

Yerine getirdiğiniz görevi doğrulamak için İlerleme durumumu kontrol et'i tıklayın. CSV nesnelerini paketinize başarıyla yüklediyseniz bir değerlendirme puanı görürsünüz.

CSV dosyalarını Cloud Storage'a yükleyin.

5. görev: Cloud SQL örneği oluşturma

Konsolda Gezinme menüsü > SQL'i seçin.

  1. CREATE INSTANCE > Choose MySQL'i (ÖRNEK OLUŞTUR > MySQL Seç) tıklayın.

  2. Örnek kimlik olarak my-demo girin.

  3. Password (Şifre) alanına güvenli bir şifre girin (Bu şifreyi unutmayın).

  4. Veritabanı sürümü olarak MySQL 8'i seçin.

  5. Choose a Cloud SQL edition'ın (Cloud SQL sürümü seç) bölümünde Enterprise'ı (Kurumsal) seçin.

  6. Preset (Hazır ayar) olarak Development'ı (Geliştirme) (4 vCPU, 16 GB RAM, 100 GB depolama, Tekli alt bölge) seçin.

Uyarı: Geliştirmenizden büyük bir hazır ayar seçerseniz projeniz işaretlenir ve laboratuvarınız durdurulur.
  1. Multi zones (Highly available) (Çoklu alt bölgeler (Yüksek düzeyde kullanılabilir)) alanını olarak ayarlayın.

  2. CREATE INSTANCE'ı (ÖRNEK OLUŞTUR) tıklayın.

Not: Örneğin oluşturulması birkaç dakika sürebilir. Örnek oluşturulduğunda, SQL örnekleri sayfasında örnek adının yanında yeşil bir onay işareti görürsünüz.
  1. Cloud SQL örneğini tıklayın. SQL Overview (SQL'e Genel Bakış) sayfası açılır.

Tamamlanan görevi test etme

Laboratuvardaki ilerleme durumunuzu kontrol etmek için aşağıda yer alan İlerleme durumumu kontrol et'i tıklayın. Cloud SQL örneğinizi başarıyla oluşturduysanız bir değerlendirme puanı görürsünüz.

Cloud SQL Örneği oluşturun.

6. görev: Cloud SQL'deki yeni sorgular

CREATE anahtar kelimesi (veritabanları ve tablolar)

Çalışır durumda bir Cloud SQL örneğiniz olduğuna göre şimdi Cloud Shell komut satırını kullanarak örneğin içinde veritabanı oluşturun.

  1. Konsolun sağ üst köşesindeki simgeyi tıklayarak Cloud Shell'i açın.

  2. Proje kimliğini ortam değişkeni olarak ayarlamak için aşağıdaki komutu çalıştırın:

export PROJECT_ID=$(gcloud config get-value project) gcloud config set project $PROJECT_ID

Cloud Shell'de veritabanı oluşturma

  1. Cloud Shell'de aşağıdaki komutu çalıştırarak tarayıcı kullanmadan kimlik doğrulamayı kurabilirsiniz.
gcloud auth login --no-launch-browser

Bu işlem sonucu tarayıcınızda açabileceğiniz bir bağlantı alırsınız. Bağlantıyı qwiklabs hesabınızla giriş yaptığınız tarayıcıda açın. Giriş yaptığınızda size bir doğrulama kodu gönderilir. Bu kodu kopyalayıp Cloud Shell'e yapıştırın.

  1. Aşağıdaki komutu çalıştırarak SQL örneğinize bağlanabilirsiniz (Örneğinizin adı farklıysa my-demo kısmına örnek adını girmeniz gerekir):
gcloud sql connect my-demo --user=root --quiet Not: Örneğinize bağlanmak biraz zaman alabilir. "Operation failed because another operation was already in progress" ("Başka bir işlem devam ettiği için işlem başarısız oldu") hatasını alıyorsanız SQL örneğinin oluşturulmasını bekleyip yeniden bağlanmanız gerekir.
  1. İstendiğinde örnek için belirlediğiniz kök şifresini girin.

Aşağıdakine benzer bir çıkış almanız gerekir:

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 494 Server version: 8.0.31-google (Google) Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>

Cloud SQL örnekleri, önceden yapılandırılmış veritabanlarıyla birlikte sunulur. Ancak Londra'daki bisiklet paylaşımı verilerini depolamak için kendi veritabanınızı oluşturacaksınız.

  1. bike adlı bir veritabanı oluşturmak için MySQL sunucu isteminde aşağıdaki komutu çalıştırın:
CREATE DATABASE bike;

Aşağıdaki çıkışı alırsınız:

Query OK, 1 row affected (0.05 sec) mysql>

Tamamlanan görevi test etme

Tamamladığınız görevi doğrulamak için İlerleme durumumu kontrol et'i tıklayarak ilerleme durumunuzu kontrol edin. Cloud SQL örneğinde başarıyla veritabanı oluşturduysanız bir değerlendirme puanı görürsünüz.

Veritabanı oluşturun.

Cloud Shell'de tablo oluşturma

  1. Aşağıdaki komutu çalıştırarak "bike" adlı veritabanının içinde bir tablo oluşturun:
USE bike; CREATE TABLE london1 (start_station_name VARCHAR(255), num INT);

Bu ifadede, veritabanı yerine tablo oluşturmak için CREATE anahtar kelimesiyle birlikte TABLE deyimi kullanılıyor. USE anahtar kelimesi, bağlanmak istediğiniz veritabanını belirtir. Şu anda "start_station_name" ve "num" adlı iki sütun içeren "london1" adlı bir tablonuz var. VARCHAR(255) koşulu, 255'e kadar karakteri barındırabilen değişken uzunluklu dize sütununu belirtir. INT ise tam sayı türünde bir sütundur.

  1. Aşağıdaki komutu çalıştırarak "london2" adlı başka bir tablo oluşturun:
USE bike; CREATE TABLE london2 (end_station_name VARCHAR(255), num INT);
  1. Şimdi de boş tablolarınızın oluşturulduğunu onaylayın. MySQL sunucusu isteminde aşağıdaki komutları çalıştırın:
SELECT * FROM london1; SELECT * FROM london2;

Her iki komut için de aşağıdaki çıkışı almanız gerekir:

Empty set (0.04 sec)

Henüz veriyi yüklemediğiniz için "boş küme" görürsünüz.

CSV dosyalarını tablolara yükleme

Cloud SQL konsoluna dönün. Bu aşamada, start_station_name ve end_station_name CSV dosyalarını yeni oluşturduğunuz london1 ve london2 tablolarına yükleyeceksiniz.

  1. Cloud SQL örneği sayfanızda IMPORT'u (İÇE AKTAR) tıklayın.
  2. Cloud Storage dosya alanında sırasıyla Browse'ı (Göz at), paket adınızın yanındaki ok işaretini ve start_station_data.csv'yi tıklayın. Select'i (Seç) tıklayın.
  3. Dosya biçimi olarak CSV'yi seçin.
  4. bike veritabanını seçip tablonuz için "london1" yazın.
  5. Import'u (İçe aktar) tıklayın.

Aynı işlemi diğer CSV dosyası için de yapın.

  1. Cloud SQL örneği sayfanızda IMPORT'u (İÇE AKTAR) tıklayın.
  2. Cloud Storage dosya alanında sırasıyla Browse'ı (Göz at), paket adınızın yanındaki ok işaretini, end_station_data.csv'yi ve Select'i (Seç) tıklayın.
  3. Dosya biçimi olarak CSV'yi seçin.
  4. bike veritabanını seçip tablonuz için "london2" yazın.
  5. Import'u (İçe aktar) tıklayın.

Artık her iki CSV dosyası da bike veritabanındaki tablolara yüklenmiş olmalıdır.

  1. Cloud Shell oturumunuza dönün ve london1 tablosunun içeriğini incelemek için MySQL sunucusu isteminde aşağıdaki komutu çalıştırın:
SELECT * FROM london1;

955 satırlık çıkış almış olmanız gerekir. Bu sayı, tüm benzersiz istasyon adlarının sayısı kadardır.

  1. london2 tablosunun doldurulduğundan emin olmak için aşağıdaki komutu çalıştırın:
SELECT * FROM london2;

959 satırlık çıkış almış olmanız gerekir. Bu sayı, tüm benzersiz istasyon adlarının sayısından bir fazladır.

DELETE anahtar kelimesi

Veri yönetimi konusunda size yardımcı olacak diğer birkaç SQL anahtar kelimesinden bahsedelim. Bunların ilki, DELETE anahtar kelimesi.

  • london1 ve london2 tablolarının ilk satırını silmek için MySQL oturumunuzda aşağıdaki komutları çalıştırın:
DELETE FROM london1 WHERE num=0; DELETE FROM london2 WHERE num=0;

Her iki komutu da çalıştırdıktan sonra aşağıdaki çıkışı alırsınız:

Query OK, 1 row affected (0.04 sec)

Silinen satırlar, CSV dosyalarındaki sütun başlıklarıydı. DELETEanahtar kelimesi aslında dosyanın ilk satırını değil, tabloda sütun adının (bu senaryoda "num") belirtilmiş bir değer (bu senaryoda "0") içerdiği tüm satırları siler. SELECT * FROM london1; ve SELECT * FROM london2; sorgularını çalıştırıp tablonun en üst kısmına giderseniz bu satırların artık mevcut olmadığını görürsünüz.

INSERT INTO anahtar kelimesi

INSERT INTO anahtar kelimesini kullanarak tablolara değerler de ekleyebilirsiniz.

  • london1 tablosuna, start_station_name sütunundaki değer "test destination" ve num sütunundaki değer "1" olan yeni bir satır eklemek için aşağıdaki komutu çalıştırın:
INSERT INTO london1 (start_station_name, num) VALUES ("test destination", 1);

INSERT INTO anahtar kelimesinin çalışması için bir tablo (london1) gerekir. Anahtar kelime, ilk parantezdeki (bu senaryoda "start_station_name" ve "num") terimlerin belirttiği sütunlarla yeni bir satır oluşturur. "VALUES" deyiminden sonra gelen tüm kısımlar, yeni satıra değer olarak eklenir.

Aşağıdaki çıkışı alırsınız:

Query OK, 1 row affected (0.05 sec)

SELECT * FROM london1; sorgusunu çalıştırırsanız "london1" tablosunun alt kısmına başka bir satırın eklendiğini görürsünüz.

UNION anahtar kelimesi

Öğreneceğiniz son SQL anahtar kelimesi UNION'dır. Bu anahtar kelime, en az iki SELECT sorgusunun çıkışını bir sonuç kümesinde birleştirir. "london1" ve "london2" tablolarının alt kümelerini birleştirmek için UNION anahtar kelimesini kullanırsınız.

Aşağıdaki zincirleme sorgu her iki tablodan da belirli verileri çeker ve bu verileri UNION operatörü kullanarak birleştirir.

  • MySQL sunucusu isteminde aşağıdaki komutu çalıştırın:
SELECT start_station_name AS top_stations, num FROM london1 WHERE num>100000 UNION SELECT end_station_name, num FROM london2 WHERE num>100000 ORDER BY top_stations DESC;

Birinci SELECT sorgusu, "london1" tablosundaki iki sütunu seçer ve "start_station_name" için "top_stations" takma adını oluşturur. Yalnızca 100.000'i aşkın bisikletin yolculuğa başladığı bisiklet paylaşımı istasyonu adlarını çekmek için WHERE anahtar kelimesini kullanır.

İkinci SELECT sorgusu, "london2" tablosundaki iki sütunu seçer ve yalnızca 100.000'i aşkın bisikletin yolculuklarını sonlandırdığı bisiklet paylaşımı istasyonu adlarını çekmek için WHERE anahtar kelimesini kullanır.

Aradaki UNION anahtar kelimesi, "london2" verilerini "london1" tablosuna uydurarak bu sorguların çıkışlarını birleştirir. "london1", "london2" ile birleştirildiğinden, öncelikli sütun değerleri "top_stations" ve "num"dır.

ORDER BY anahtar kelimesi, nihai ve birleştirilmiş tabloyu "top_stations" sütunu değerine göre, harflerin alfabetik sırasına ters olacak şekilde düzenler.

Aşağıdaki çıkışı alırsınız:

top_stations ve num için sütunlar içeren çıkış tablosu.

Bisiklet paylaşımı için başlangıç ve bitiş noktaları olarak en sık kullanılan 14 noktaya baktığımızda bunların 13 tanesinin ortak olduğunu görüyoruz. Bazı temel SQL anahtar kelimelerini kullanarak büyük bir veri kümesini sorgulayabildiniz. Bu sorgulama sayesinde de veri noktaları döndürdünüz ve belirli soruların yanıtlarına ulaştınız.

Tebrikler!

Bu laboratuvarda SQL ile ilgili temel bilgileri, BigQuery ve CloudSQL'de anahtar kelime uygulayıp sorgu çalıştırmayı öğrendiniz. Proje, veritabanı ve tabloların arkasında yatan temel kavramları kavradınız. Verileri değiştirip düzenleyen anahtar kelimelerle alıştırmalar yaptınız. BigQuery'ye nasıl veri işleyeceğinizi öğrendiniz ve tablolarda sorgu çalıştırma alıştırmaları yaptınız. Cloud SQL'de örnek oluşturmayı öğrendiniz ve veri alt kümelerini veritabanlarında yer alan tablolara aktarmayı denediniz. Londra'daki bisiklet paylaşımı başlangıç ve bitiş istasyonları hakkında bazı ilginç sonuçlara ulaşmak için Cloud SQL'de zincirleme sorgu oluşturup çalıştırdınız.

Sonraki adımlar / Daha fazla bilgi

Cloud SQL ve BigQuery ile eğitiminize ve alıştırma yapmaya devam etmek için aşağıdaki Google Cloud Öğrenim Merkezi laboratuvarlarından yararlanın:

Veri Bilimi hakkında daha fazla bilgi edinmek için: Data Science on the Google Cloud Platform, 2nd Edition: O'Reilly Media, Inc..

Google Cloud eğitimi ve sertifikası

...Google Cloud teknolojilerinden en iyi şekilde yararlanmanıza yardımcı olur. Derslerimizde teknik becerilere odaklanırken en iyi uygulamalara da yer veriyoruz. Gerekli yetkinlik seviyesine hızlıca ulaşmanız ve öğrenim maceranızı sürdürebilmeniz için sizlere yardımcı olmayı amaçlıyoruz. Temel kavramlardan ileri seviyeye kadar farklı eğitim programlarımız mevcut. Ayrıca, yoğun gündeminize uyması için talep üzerine sağlanan, canlı ve sanal eğitim alternatiflerimiz de var. Sertifikasyonlar ise Google Cloud teknolojilerindeki becerilerinizi ve uzmanlığınızı doğrulamanıza ve kanıtlamanıza yardımcı oluyor.

Kılavuzun Son Güncellenme Tarihi: 2 Şubat 2024

Laboratuvarın Son Test Edilme Tarihi: 2 Şubat 2024

Telif Hakkı 2024 Google LLC Tüm hakları saklıdır. Google ve Google logosu, Google LLC şirketinin ticari markalarıdır. Diğer tüm şirket ve ürün adları ilişkili oldukları şirketlerin ticari markaları olabilir.

This content is not currently available

We will notify you via email when it becomes available

Great!

We will contact you via email if it becomes available