BigQuery kod laboratuvarındaki yapay zeka ajanslarıyla verileri hazırlama

1. Giriş

Kodlama uzmanı olmanıza gerek kalmadan verilerinizi daha hızlı ve verimli bir şekilde analize hazırlayabildiğinizi hayal edin. BigQuery Data Preparation ile bu mümkün. Bu güçlü özellik, veri alımını, dönüştürmeyi ve temizlemeyi basitleştirerek veri hazırlama işlemlerini kuruluşunuzdaki tüm veri uzmanlarının kullanımına sunar.

Ürün verilerinizde gizli olan sırları ortaya çıkarmaya hazır mısınız?

Ön koşullar

  • Google Cloud Console hakkında temel bilgiler
  • SQL ile ilgili temel bilgiler

Neler öğreneceksiniz?

  • BigQuery veri hazırlama özelliğinin, ham verilerinizi temizleyip işlenebilir iş zekasına nasıl dönüştürebileceği, Moda ve Güzellik sektöründen gerçekçi bir örnekle açıklanmaktadır.
  • Temizlenmiş verileriniz için veri hazırlama işlemini çalıştırma ve planlama

Gerekenler

  • Google Cloud hesabı ve Google Cloud projesi
  • Chrome gibi bir web tarayıcısı

2. Temel kurulum ve şartlar

Yönlendirmesiz ortam kurulumu

  1. Google Cloud Console'da oturum açın ve yeni bir proje oluşturun veya mevcut bir projeyi yeniden kullanın. Gmail veya Google Workspace hesabınız yoksa hesap oluşturmanız gerekir.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Proje adı, bu projenin katılımcıları için görünen addır. Google API'leri tarafından kullanılmayan bir karakter dizesidir. Bu bilgiyi istediğiniz zaman güncelleyebilirsiniz.
  • Proje kimliği, tüm Google Cloud projelerinde benzersizdir ve sabittir (ayarlandıktan sonra değiştirilemez). Cloud Console, benzersiz bir dizeyi otomatik olarak oluşturur. Genellikle bu dizenin ne olduğuyla ilgilenmezsiniz. Çoğu codelab'de proje kimliğinize (genellikle PROJECT_ID olarak tanımlanır) başvurmanız gerekir. Oluşturulan kimliği beğenmezseniz başka bir rastgele kimlik oluşturabilirsiniz. Dilerseniz kendi adınızı deneyerek kullanılabilir olup olmadığını kontrol edebilirsiniz. Bu adım tamamlandıktan sonra değiştirilemez ve proje süresince geçerli kalır.
  • Bazı API'lerin kullandığı üçüncü bir değer olan Proje Numarası da vardır. Bu üç değer hakkında daha fazla bilgiyi belgelerde bulabilirsiniz.
  1. Ardından, Cloud kaynaklarını/API'lerini kullanmak için Cloud Console'da faturalandırmayı etkinleştirmeniz gerekir. Bu codelab'i tamamlamak neredeyse hiç maliyetli değildir. Bu eğitimin ötesinde faturalandırılmayı önlemek için kaynakları kapatmak üzere oluşturduğunuz kaynakları veya projeyi silebilirsiniz. Yeni Google Cloud kullanıcıları 300 ABD doları değerinde ücretsiz deneme programından yararlanabilir.

3. Başlamadan önce

API'yi etkinleştirme

BigQuery'de Gemini'ı kullanmak için Google Cloud için Gemini API'yi etkinleştirmeniz gerekir. Bu adım genellikle serviceusage.services.enable IAM iznine sahip bir hizmet yöneticisi veya proje sahibi tarafından gerçekleştirilir.

  1. Google Cloud için Gemini API'yi etkinleştirmek üzere Google Cloud Marketplace'teki Google Cloud için Gemini sayfasına gidin. Google Cloud için Gemini'a gitme
  2. Proje seçicide bir proje seçin.
  3. Etkinleştir'i tıklayın. Sayfa güncellenir ve Etkin durumu gösterilir. BigQuery'da Gemini, gerekli IAM izinlerine sahip tüm kullanıcılar tarafından seçili Google Cloud projesinde kullanılabilir.

Veri hazırlama işlemleri geliştirmek için rolleri ve izinleri ayarlama

  1. IAM ve Yönetici bölümünde IAM'yi seçin.

4477412d79f29e0b.png

  1. Kullanıcınızı seçin ve "Asıl öğeyi düzenle" seçeneğini tıklayın.

5eb558e04ad12362.png

BigQuery Veri Hazırlama'yı kullanmak için aşağıdaki rollere ve izinlere ihtiyacınız vardır:

4. BigQuery Analytics Hub'da "bq data preparation demo" listesini bulma ve listeye abone olma

Bu eğitimde bq data preparation demo veri kümesini kullanacağız. Bu, BigQuery Analytics Hub'da bağlantılı bir veri kümesidir ve bu veri kümesinden okuma yapacağız.

Veri hazırlama işlemi hiçbir zaman kaynağa geri yazmaz ve yazılacak bir hedef tablo tanımlamanızı isteriz. Bu alıştırmada kullanacağımız tabloda maliyetleri en aza indirmek için yalnızca 1.000 satır bulunuyor. Ancak veri hazırlama işlemi BigQuery'de çalışır ve ölçeklenebilir.

Bağlı veri kümesini bulup abone olmak için aşağıdaki adımları uygulayın:

  1. Analytics Hub'a erişme: Google Cloud Console'da BigQuery'ye gidin.
  2. BigQuery gezinme menüsünde, "Yönetim" bölümünde "Analytics Hub"ı seçin.

6ddfac4dd863ca7b.png

  1. Listelemeyi arama: Analytics Hub kullanıcı arayüzünde Listelemeleri Ara'yı tıklayın.
  2. Arama çubuğuna bq data preparation demo yazıp Enter tuşuna basın.

7e0cb82b80174cdc.png

  1. Listeye abone olma: Arama sonuçlarından bq data preparation demo listesini seçin.
  2. Listeleme ayrıntıları sayfasında Abone ol düğmesini tıklayın.
  3. Onay iletişim kutularını inceleyin ve gerekirse projeyi/veri kümesini güncelleyin. Varsayılanlar doğru olmalıdır.

2ef0ac1e3557f2f9.png

  1. BigQuery'de veri kümesine erişme: Başarıyla abone olduktan sonra, listelemedeki veri kümeleri BigQuery projenize bağlanır.

BigQuery Studio'ya dönün.

5. Verileri keşfetme ve veri hazırlama işlemini başlatma

  1. Veri kümesini ve tabloyu bulun: Gezgin panelinde projenizi seçin ve ardından bq data preparation demo listesine dahil edilen veri kümesini bulun. stg_product tablosunu seçin.
  2. Veri hazırlama bölümünde açma: Tablo adının yanındaki üç dikey noktayı tıklayın ve Open in Data Preparation simgesini seçin.

Bu işlem, tabloyu Veri Hazırlama arayüzünde açar ve verilerinizi dönüştürmeye başlamaya hazır hale getirir.

76ace3d4b5cfc2d0.png

Aşağıdaki veri önizlemesinde görebileceğiniz gibi, ele alacağımız bazı veri sorunları var. Bunlar arasında şunlar yer alıyor:

  • Fiyat sütununda hem tutar hem de para birimi yer aldığından analiz yapmak zorlaşıyor.
  • Ürün sütununda ürün adı ve kategori (dikey çizgi sembolü | ile ayrılmış) birlikte yer alır.

f4d93aa59a56447a.png

Gemini, verilerinizi anında analiz eder ve çeşitli dönüşümler önerir. Bu örnekte birkaç öneri görüyoruz. İhtiyacımız olanları sonraki adımlarda uygulayacağız.

fd4d14e4fa3c31c1.png

6. Fiyat sütununu işleme

Şimdi Fiyat sütununa bakalım. Gördüğümüz gibi, para birimi ve tutar bilgilerini içerir. Amacımız bunları iki ayrı sütuna (Para Birimi ve Tutar) ayırmaktır.

Gemini, fiyat sütunu için çeşitli öneriler belirledi.

  1. Aşağıdakine benzer bir öneri bulun:

Açıklama: "Bu ifade, belirtilen alandaki baştaki "USD " ifadesini kaldırır"

REGEXP_REPLACE(Price,` `r'^USD\s',` `r'')
  1. Önizlemeyi seçin.

c9327cfbd32247d6.png

  1. Uygula'yı seçin.

Ardından, Fiyat sütunu için veri türünü STRING'den NUMERIC'e dönüştürelim.

  1. Aşağıdakine benzer bir öneri bulun:

Açıklama: "Fiyat sütununu dize türünden float64 türüne dönüştürür"

SAFE_CAST(Price AS float64)
  1. Uygula'yı seçin.

Artık adım listenizde üç uygulanan adım görmeniz gerekir.

d3359af47dce0c15.png

7. Ürün sütununu işleme

Ürün sütununda, ürün adı ve kategorisi dikey çizgi (|) ile ayrılmış şekilde yer alıyor.

Doğal dili tekrar kullanabiliriz ancak Gemini'ın güçlü özelliklerinden bir diğerini keşfedelim.

Ürün adını temizleme

  1. | karakterini içeren bir ürün girişinin kategori bölümünü seçip silin.

5171d598a8cb3a75.png

Gemini, bu kalıbı akıllıca tanır ve sütunun tamamına uygulanacak bir dönüştürme önerir.

  1. "Düzenle"yi seçin.

b36cac918b4f30e9.png

Gemini'ın önerisi doğru: "|" karakterinden sonraki her şeyi kaldırarak ürün adını etkili bir şekilde ayırıyor.

Ancak bu kez orijinal verilerimizin üzerine yazmak istemiyoruz.

  1. Hedef sütunu açılır listesinde "Yeni sütun oluştur"u seçin.
  2. Adı ProductName olarak ayarlayın.

bda19e0e5e536ccd.png

  1. Her şeyin iyi göründüğünden emin olmak için değişiklikleri önizleyin.
  2. Dönüşümü uygulayın.

Ürün kategorisini ayıklama

Doğal dil kullanarak Gemini'a Ürün sütunundaki dikey çizgiden (|) sonra gelen kelimeyi ayıklaması talimatını vereceğiz. Bu ayıklanan değer, Ürün adlı mevcut sütunun üzerine yazılır.

  1. Yeni bir dönüştürme adımı eklemek için Add Step simgesini tıklayın.

77944047e698494c.png

  1. Açılır menüden Transformation seçeneğini belirleyin.
  2. Doğal dil istemi alanına "Ürün sütunundaki dikey çizginin (|) ardından gelen kelimeyi ayıkla." yazıp Enter tuşuna basın. Böylece SQL oluşturulur.

82efc2447a3210bd.png

  1. Hedef sütunu "Ürün" olarak bırakın.
  2. Uygula'yı tıklayın.

Dönüşüm sonucunda aşağıdaki sonuçları elde etmeniz gerekir.

d741c66d9e0e8e00.png

8. Verileri zenginleştirmek için birleştirme

Çoğu zaman verilerinizi diğer kaynaklardaki bilgilerle zenginleştirmek isteyebilirsiniz. Örneğimizde, ürün verilerimizi üçüncü taraf tablosundaki stg_extended_product ile genişletilmiş ürün özellikleriyle birleştireceğiz. Bu tabloda marka ve lansman tarihi gibi ayrıntılar yer alır.

  1. Add Step simgesini tıklayın.
  2. Join adlı yolu seç
  3. stg_extended_product tablosuna gidin.

dca14451c3fbc7f0.png

BigQuery'deki Gemini, bizim için productid birleştirme anahtarını otomatik olarak seçti ve anahtar adı aynı olduğundan sol ve sağ tarafları nitelendirdi.

Not: Açıklama alanında "Join by productid" (Ürün kimliğine göre katıl) ifadesinin yer aldığından emin olun. Ek birleştirme anahtarları içeriyorsa açıklama alanının üzerine "Ürün kimliğine göre birleştir" yazın ve açıklama alanındaki oluştur düğmesini seçerek birleştirme ifadesini şu koşulla yeniden oluşturun: L.

productid

= R.

productid. 4d6dbfea28772f34.png

  1. İsteğe bağlı olarak, sonuçları önizlemek için Önizleme'yi seçin.
  2. Apply simgesini tıklayın.

Genişletilmiş özellikleri temizleme

Birleştirme işlemi başarılı olsa da genişletilmiş özellikler verilerinin temizlenmesi gerekiyor. LaunchDate sütununda tutarsız tarih biçimleri var ve Brand sütununda bazı değerler eksik.

LaunchDate sütununu ele alarak başlayacağız.

f9b570d7c2d3a98d.png

Dönüşüm oluşturmadan önce Gemini'ın önerilerini kontrol edin.

  1. LaunchDate sütun adını tıklayın. Aşağıdaki resimde gösterilenlere benzer öneriler görürsünüz.

62b6e6027a46ba75.png

  1. Aşağıdaki SQL'i içeren bir öneri görürseniz öneriyi Uygula'yı tıklayın ve sonraki adımları atlayın.
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
  1. Yukarıdaki SQL ile eşleşen bir öneri görmüyorsanız Add Step simgesini tıklayın.
  2. Transformation simgesini seçin.
  3. SQL alanına aşağıdakileri girin:
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
  1. Target Columns değerini LaunchDate olarak ayarlayın.
  2. Apply simgesini tıklayın.

LaunchDate sütununda artık tutarlı bir tarih biçimi var.

ccf34aa05754a834.png

9. Hedef tablo ekleme

Veri kümemiz artık temiz ve veri ambarımızdaki bir boyut tablosuna yüklenmeye hazır.

  1. ADD STEP simgesini tıklayın.
  2. Destination simgesini seçin.
  3. Gerekli parametreleri doldurun: Veri kümesi: bq_data_preparation_demo Tablo: DimProduct
  4. Save simgesini tıklayın.

79fdc3666a3a21b9.png

Artık "Veri" ve "Şema" sekmeleriyle çalıştınız. Bunlara ek olarak BigQuery Veri Hazırlama, işlem hattınızdaki dönüşüm adımlarının sırasını görsel olarak gösteren bir "Grafik" görünümü sunar.

95e64d8152228f7b.png

10. Bonus A: Üretici sütununu işleme ve hata tablosu oluşturma

Ayrıca Manufacturer sütununda boş değerler tespit ettik. Bu kayıtlar için veri kalitesi kontrolü uygulamak ve daha ayrıntılı inceleme için bunları bir hata tablosuna taşımak istiyoruz.

Hata tablosu oluşturma

  1. stg_product data preparation başlığının yanındaki More düğmesini tıklayın.
  2. Setting bölümünde Error Table simgesini seçin.
  3. Enable error table kutusunu işaretleyin ve ayarları aşağıdaki gibi yapılandırın:
  • Veri kümesi: bq_data_preparation_demo seçeneğini belirleyin.
  • Tablo: err_dataprep girin.
  • Define duration for keeping errors bölümünde 30 days (default) seçeneğini belirleyin.
  1. Save simgesini tıklayın.

adb5722f05c1b205.png

Üretici sütununda doğrulama ayarlama

  1. Üretici sütununu seçin.
  2. Gemini, alakalı bir dönüşüm belirlemiş olabilir. Yalnızca Üretici alanının boş olmadığı satırları tutan öneriyi bulun. Aşağıdakine benzer bir SQL'e sahip olur:
Manufacturer IS NOT NULL

2.Bu öneriyi incelemek için "Düzenle" düğmesini tıklayın.

4749b551a03d8193.png

  1. "Doğrulama başarısız olan satırlar hata tablosuna gider" seçeneği işaretlenmemişse işaretleyin.
  2. Apply simgesini tıklayın.

Uyguladığınız dönüşümleri istediğiniz zaman "Uygulanan adımlar" düğmesini tıklayarak inceleyebilir, değiştirebilir veya silebilirsiniz.

15df6caacbdd6a69.png

Gereksiz ProductID_1 sütununu temizleme

Birleştirilmiş tablomuzdaki ProductID değerini kopyalayan ProductID_1 sütunu artık silinebilir.

  1. Schema sekmesine gidin.
  2. ProductID_1 sütununun yanındaki 3 noktayı tıklayın.
  3. Drop simgesini tıklayın.

Artık veri hazırlama işini çalıştırmaya ve tüm işlem hattımızı doğrulamaya hazırız. Sonuçlardan memnun kaldığımızda işin otomatik olarak çalıştırılmasını planlayabiliriz.

  1. Veri hazırlama görünümünden ayrılmadan önce hazırlıklarınızı kaydedin. stg_product data preparation başlığının yanında Save düğmesini görürsünüz. Kaydetmek için düğmeyi tıklayın.

11. Ortamı temizleme

  • Sil stg_product data preparation
  • bq data preparation demo veri kümesini silme

12. Tebrikler

Codelab'i tamamladığınız için tebrik ederiz.

İşlediğimiz konular

  • Veri hazırlama ayarlarını yapma
  • Tabloları açma ve veri hazırlama işleminde gezinme
  • Sayısal ve birim tanımlayıcı veriler içeren sütunları bölme
  • Tarih biçimlerini standartlaştırma
  • Veri hazırlama işlemlerini çalıştırma