arrow_back

BigQuery: Qwik Start - Komut Satırı

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

BigQuery: Qwik Start - Komut Satırı

Lab 30 minutes universal_currency_alt No cost show_chart Introductory
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP071

Google Cloud Rehbersiz Laboratuvarları

Genel Bakış

Doğru donanım ile altyapı olmadan devasa veri kümelerini depolayıp sorgulamak çok fazla zaman alabilir ve maliyetli olabilir. BigQuery, Google altyapısının işleme gücünü kullanıp SQL sorgularının olağanüstü bir hızla çalıştırılmasını sağlayarak bu sorunu çözen sunucusuz ve yüksek düzeyde ölçeklenebilir bir bulut veri ambarıdır. Verilerinizi BigQuery'ye taşıyın ve zorlu işleri bize bırakın. İş ihtiyaçlarınıza (ör. başka kullanıcılara verilerinizi görüntüleme veya sorgulama yetkisi verme) göre hem projeye hem verilerinize erişimi kontrol edebilirsiniz.

Konsolu, Web kullanıcı arayüzünü veya bir komut satırı aracını kullanarak ve Java, .NET ya da Python gibi çeşitli istemci kitaplıkları aracılığıyla BigQuery'ye erişebilirsiniz. Ayrıca BigQuery ile etkileşime geçmek için kullanabileceğiniz çeşitli çözüm sağlayıcıları da bulunmaktadır.

Bu uygulamalı laboratuvarda, herkese açık tabloları sorgulamak ve örnek verileri BigQuery'ye yüklemek için Python tabanlı komut satırı aracı olan bq'nin nasıl kullanılacağı gösterilmektedir.

Yapacaklarınız

  • Ortak veri kümesini sorgulama
  • Yeni bir veri kümesi oluşturma
  • Yeni bir tabloya veri yükleme
  • Özel bir tabloyu sorgulama

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 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 Console'u Aç'ı tıklayın. Laboratuvar, kaynakları çalıştırır ve sonra Oturum aç 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 Laboratuvar Ayrıntıları panelinden Kullanıcı adı'nı kopyalayın ve Oturum aç iletişim kutusuna yapıştırın. Sonraki'ni tıklayın.

  4. Laboratuvar Ayrıntıları panelinden Şifre'yi kopyalayın ve Hoş geldiniz iletişim penceresine yapıştırın. Sonraki'ni tıklayın.

    Önemli: Sol paneldeki kimlik bilgilerini kullanmanız gerekir. Google Cloud Öğrenim Merkezi kimlik bilgilerinizi kullanmayın. Not: Bu laboratuvarda kendi Google Cloud hesabınızı kullanabilmek için ek ücret ödemeniz gerekebilir.
  5. 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 Cloud Console bu sekmede açılır.

Not: Soldaki Gezinme menüsü'nü tıklayarak Google Cloud ürün ve hizmetlerinin listelendiği menüyü görüntüleyebilirsiniz. Gezinme menüsü simgesi

Cloud Shell'i etkinleştirme

Cloud Shell, çok sayıda geliştirme aracı içeren bir sanal makinedir. 5 GB boyutunda kalıcı bir ana dizin sunar ve Google Cloud üzerinde çalışır. Cloud Shell, Google Cloud kaynaklarınıza komut satırı erişimi sağlar.

  1. Google Cloud Console'un üst kısmından Cloud Shell'i etkinleştir Cloud Shell'i etkinleştir simgesi simgesini tıklayın.

Bağlandığınızda, kimliğiniz doğrulanmış olur. Proje ise PROJECT_ID'nize göre ayarlanmıştır. Çıkış, bu oturum için PROJECT_ID'yi tanımlayan bir satır içerir:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud, Google Cloud'un komut satırı aracıdır. Cloud Shell'e önceden yüklenmiştir ve sekmeyle tamamlamayı destekler.

  1. (İsteğe bağlı) Etkin hesap adını şu komutla listeleyebilirsiniz:
gcloud auth list
  1. Yetkilendir'i tıklayın.

  2. Çıkışınız aşağıdaki gibi görünecektir:

Çıkış:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (İsteğe bağlı) Proje kimliğini şu komutla listeleyebilirsiniz:
gcloud config list project

Çıkış:

[core] project = <project_ID>

Örnek çıkış:

[core] project = qwiklabs-gcp-44776a13dea667a6 Not: gcloud ile ilgili tüm belgeleri, Google Cloud'daki gcloud CLI'ya genel bakış rehberinde bulabilirsiniz.

1. görev: Bir tabloyu inceleme

BigQuery, sorgu çalıştırabileceğiniz çok sayıda örnek tablo sunar. Bu laboratuvarda, tüm oyunlardaki her kelime için birer giriş içeren shakespeare tablosu üzerinde sorgu çalıştıracaksınız.

Örnek veri kümesinde yer alan Shakespeare tablosundaki şemayı incelemek için şu sorguyu çalıştırın:

bq show bigquery-public-data:samples.shakespeare

Bu komutla şunları yapmış olursunuz:

  • BigQuery komut satırı aracını çağırmak için bq'yi kullanma
  • Yapılacak işlem olarak show komutu
  • BigQuery'de görmek istediğiniz project:public dataset.table tablosunun adını listeleme

Çıktı:

Last modified Schema Total Rows Total Bytes Expiration Time Partitioning Clustered Fields Labels ----------------- ------------------------------------ ------------ ------------- ------------ ------------------- ------------------ -------- 14 Mar 13:16:45 |- word: string (required) 164656 6432064 |- word_count: integer (required) |- corpus: string (required) |- corpus_date: integer (required)

2. görev: Help komutunu çalıştırma

Help komutlarının yanına komut adını eklediğinizde, söz konusu komutla ilgili bilgileri alırsınız.

  1. Örneğin, bq help sorgusu için yapılan aşağıdaki çağrı, query komutuyla ilgili bilgileri alır:
bq help query
  1. bq tarafından kullanılan tüm komutların listesini görmek için bq help sorgusunu çalıştırmanız yeterlidir.

3. görev: Sorgu çalıştırma

Şimdi, Shakespeare'in eserlerinde "raisin" alt dizesinin kaç kere geçtiğini görmek için bir sorgu çalıştıracaksınız.

  1. Sorgu çalıştırmak için bq query "[SQL_STATEMENT]" komutunu çalıştırın:
  • [SQL_STATEMENT] içerisindeki tırnak işaretlerini kod dışına almak için \ işaretini kullanın.

  • Alternatif olarak, başta ve sonda yer alan tırnak işaretlerden farklı bir tırnak işareti kullanın (" yerine ').

  1. Shakespeare'in tüm eserlerinde "raisin" alt dizesinin kaç kere geçtiğini saymak için Cloud Shell'de aşağıdaki standart SQL sorgusunu çalıştırın:
bq query --use_legacy_sql=false \ 'SELECT word, SUM(word_count) AS count FROM `bigquery-public-data`.samples.shakespeare WHERE word LIKE "%raisin%" GROUP BY word'

Bu komutta:

  • --use_legacy_sql=false kısmı, standart SQL'i varsayılan sorgu söz dizimi haline getirir.

Çıktı:

Waiting on job_e19 ... (0s) Current status: DONE +---------------+-------+ | word | count | +---------------+-------+ | praising | 8 | | Praising | 4 | | raising | 5 | | dispraising | 2 | | dispraisingly | 1 | | raisins | 1 |

Tabloda, raisin kelimesinin kendisi görünmese de bu harflerin aynı sırayla Shakespeare'in eserlerinin birkaçında geçtiği gösterilmektedir.

Tamamlanan görevi test etme

Tamamladığınız görevi doğrulamak için İlerleme durumumu kontrol et'i tıklayın. Herkese açık veri kümesinde sorguyu başarıyla çalıştırdıysanız bir değerlendirme puanı gösterilir.

Sorgu çalıştırma (veri kümesi: samples, tablo: shakespeare, alt dize: raisin)

Shakespeare'in eserlerinde yer almayan bir kelimeyi ararsanız herhangi bir sonuç döndürülmez.

  • Aşağıdaki komutu çalıştırarak "huzzah" araması yaptığınızda eşleşme almazsınız:
bq query --use_legacy_sql=false \ 'SELECT word FROM `bigquery-public-data`.samples.shakespeare WHERE word = "huzzah"'

Tamamlanan görevi test etme

Tamamladığınız görevi doğrulamak için İlerleme durumumu kontrol et'i tıklayın. Herkese açık veri kümesinde sorguyu başarıyla çalıştırdıysanız bir değerlendirme puanı gösterilir.

Sorgu çalıştırma (veri kümesi: samples, tablo: shakespeare, alt dize: huzzah)

4. görev: Yeni tablo oluşturma

Şimdi kendi tablonuzu oluşturun. Tüm tablolar bir veri kümesinin içinde depolanır. Veri kümesi, tablo ve görünümler gibi kaynaklardan oluşan bir gruptur.

Yeni bir veri kümesi oluşturma

  1. Projenizdeki tüm mevcut veri kümelerini listelemek için bq ls komutunu kullanın:
bq ls

Projenizde herhangi bir veri kümesi olmadığından komut satırına geri yönlendirilirsiniz.

  1. Söz konusu projedeki veri kümelerini, ardından iki nokta işareti (:) getirerek listelemek için bq ls komutunu ve bigquery-public-data proje kimliğini çalıştırın:
bq ls bigquery-public-data:

Çıktı:

datasetId ----------------------------- austin_311 austin_bikeshare austin_crime austin_incidents austin_waste baseball bitcoin_blockchain bls census_bureau_construction census_bureau_international census_bureau_usa census_utility chicago_crime ...

Şimdi, veri kümesi oluşturun. Veri kümesi adı, en fazla 1.024 karakter uzunluğunda olabilir ve A-Z, a-z, 0-9 ile alt çizgi karakterlerini içerebilir. Ancak rakam veya alt çizgiyle başlayamaz ya da boşluk içeremez.

  1. Projenizde babynames adlı yeni bir veri kümesi oluşturmak için bq mk komutunu kullanın:
bq mk babynames

Örnek çıktı:

Dataset 'qwiklabs-gcp-ba3466847fe3cec0:babynames' successfully created.

Tamamlanan görevi test etme

Tamamladığınız görevi doğrulamak için İlerleme durumumu kontrol et'i tıklayın. "babynames" adlı BigQuery veri kümesini oluşturma işlemi tamamlandıysa bir değerlendirme puanı gösterilir.

Yeni veri kümesi oluşturma (ad: babynames)
  • Veri kümesinin artık projenizin bir parçası olarak göründüğünü onaylamak için bq ls komutunu çalıştırın:
bq ls

Örnek çıktı:

datasetId ------------- babynames

Veri kümesini yükleme

Tabloyu oluşturabilmek için öncelikle veri kümesini projenize eklemeniz gerekir. Kullanacağınız özel veri dosyası, ABD Sosyal Güvenlik Kurumu'nun sunduğu en çok tercih edilen bebek isimleriyle ilgili yaklaşık 7 MB boyutunda veri içerir.

  1. Veri dosyasının URL'sini kullanarak bebek adları zip dosyasını projenize eklemek için şu komutu çalıştırın:
curl -LO http://www.ssa.gov/OACT/babynames/names.zip
  1. Dosyayı listeleyin:
ls

Dosya adının projenize eklendiğini görebilirsiniz.

  1. Şimdi, dosyanın sıkıştırmasını açın:
unzip names.zip
  1. Metin dosyalarından oluşan bu liste oldukça büyük görünüyor. Dosyaları tekrar listeleyin:
ls

bq load komutu tabloyu oluşturur, günceller ve verileri tek bir adımda yükler.

Kaynak dosyanızı, yeni oluşturduğunuz babynames veri kümesindeki names2010 adlı yeni bir tabloya yüklemek için bq load komutunu kullanacaksınız. Varsayılan olarak bu komut eşzamanlı şekilde çalışır ve birkaç saniye içinde tamamlanır.

Çalıştıracağınız bq load bağımsız değişkenleri şunlardır:

datasetID: babynames tableID: names2010 source: yob2010.txt schema: name:string,gender:string,count:integer
  1. Tablonuzu oluşturun:
bq load babynames.names2010 yob2010.txt name:string,gender:string,count:integer

Örnek çıktı:

Waiting on job_4f0c0878f6184119abfdae05f5194e65 ... (35s) Current status: DONE

Tamamlanan görevi test etme

Tamamladığınız görevi doğrulamak için İlerleme durumumu kontrol et'i tıklayın. Veri kümesi tablosuna veri yükleme işlemi başarılı olursa bir değerlendirme puanı gösterilir.

Verileri yeni bir tabloya yükleme
  1. Tablonun artık veri kümenizde göründüğünü onaylamak için bq ls ve babynames komutlarını çalıştırın:
bq ls babynames

Çıktı:

tableId Type ----------- ------- names2010 TABLE
  1. Şemayı görmek için bq show komutunu ve dataset.table tablonuzu çalıştırın:
bq show babynames.names2010

Çıktı:

Last modified Schema Total Rows Total Bytes Expiration Time Partitioning Clustered Fields Labels ----------------- ------------------- ------------ ------------- ----------------- ------------------- ------------------ -------- 13 Aug 14:37:34 |- name: string 34073 654482 12 Oct 14:37:34 |- gender: string |- count: integer Not: Verileri yüklediğinizde BigQuery, varsayılan olarak UTF-8 ile kodlanmış veriler bekler. ISO-8859-1 (veya Latin-1) biçiminde kodlanmış verileriniz varsa ve yüklenen verilerinizle ilgili sorun yaşıyorsanız -E işaretini kullanarak BigQuery'ye, verilerinizi Latin-1 olarak işlemesini açık bir şekilde iletebilirsiniz. Karakter kodlamalar hakkında daha fazla bilgiye Veri yüklemeye giriş rehberi'nden ulaşabilirsiniz.

5. görev: Sorguları çalıştırma

Artık verileri sorgulamaya ve bazı ilgi çekici sonuçlar döndürmeye hazırsınız.

  1. Kız çocuklarında en çok tercih edilen 5 adı döndürmek için aşağıdaki komutu çalıştırın:
bq query "SELECT name,count FROM babynames.names2010 WHERE gender = 'F' ORDER BY count DESC LIMIT 5"

Çıktı:

Waiting on job_58c0f5ca52764ef1902eba611b71c651 ... (0s) Current status: DONE +----------+-------+ | name | count | +----------+-------+ | Isabella | 22913 | | Sophia | 20643 | | Emma | 17345 | | Olivia | 17028 | | Ava | 15433 | +----------+-------+
  1. Erkek çocuklarında en az tercih edilen 5 adı görmek için aşağıdaki komutu çalıştırın:
bq query "SELECT name,count FROM babynames.names2010 WHERE gender = 'M' ORDER BY count ASC LIMIT 5" Not: Kaynak veriler, 5 defadan az sıklıkta karşılaşılan adları yok saydığından minimum sayı 5'tir.

Çıktı:

Waiting on job_556ba2e5aad340a7b2818c3e3280b7a3 ... (1s) Current status: DONE +----------+-------+ | name | count | +----------+-------+ | Aaqib | 5 | | Aaidan | 5 | | Aadhavan | 5 | | Aarian | 5 | | Aamarion | 5 | +----------+-------+

Tamamlanan görevi test etme

Tamamladığınız görevi doğrulamak için İlerleme durumumu kontrol et'i tıklayın. Özel veri kümesinde sorgu çalıştırma işlemi başarılı olursa bir değerlendirme puanı gösterilir.

Veri kümesi tablonuzda sorgu çalıştırma

6. görev: Öğrendiklerinizi test etme

Aşağıda, bu laboratuvarda ele alınan kavramları daha iyi anlamanızı sağlayacak çoktan seçmeli sorular verilmiştir. Bu soruları elinizden geldiğince yanıtlamaya çalışın.

7. görev: Temizleme

  1. Veri kümesindeki tüm tabloları silmek üzere -r işaretini kullanarak babynames veri kümesini kaldırmak için bq rm komutunu çalıştırın:
bq rm -r babynames
  1. Y yazarak silme komutunu onaylayın.

Tamamlanan görevi test etme

Tamamladığınız görevi doğrulamak için İlerleme durumumu kontrol et'i tıklayın. Babynames veri kümesini başarıyla kaldırdıysanız bir değerlendirme puanı gösterilir.

Babynames veri kümesini kaldırma

Tebrikler!

Artık herkese açık tabloları sorgulamak ve örnek verileri BigQuery'ye yüklemek için komut satırını kullanabilirsiniz.

Sonraki adımlar / Daha fazla bilgi

Bu laboratuvar, Qwik Starts laboratuvar serisinin de bir parçasıdır. Bu laboratuvarlar, Google Cloud'daki pek çok özelliği biraz olsun tanıtabilmek için tasarlamıştır. Katılabileceğiniz bir sonraki laboratuvarı bulmak için laboratuvar kataloğunda "Qwik Starts" araması yapın.

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: 26 Ocak 2024

Laboratuvarın Son Test Edilme Tarihi: 24 Ağustos 2023

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.