Ajan tabanlı kodlama araçlarıyla LookML yazma

1. Giriş

VS Code ekosistemine dayalı temsilci tabanlı kod yazma araçları çok popüler hâle geldi. Cursor ve Antigravity bu özelliklerden sadece ikisidir. Bu codelab'de, LookML'nin bu kod araçlarıyla nasıl yazılabileceği gösterilecektir.

Yapacaklarınız

Bu codelab'de, yeni bir ölçü eklemek, yeni ölçüyü test etmek ve ardından bu yeni ölçüyü kullanarak bir LookML kontrol paneli oluşturmak için Looker'ın VS Code uzantısını kullanacaksınız. Tüm bu işlemler, bir kodlama aracısına istem girilerek yapılır.

Gerekenler

Kitle: LookML geliştiricileri, veri mühendisleri ve mimarlar.

2. Looker örneğinizi ayarlama

Google Cloud projesi oluşturma

  1. Google Cloud Console'daki proje seçici sayfasında bir Google Cloud projesi seçin veya oluşturun.
  2. Cloud projeniz için faturalandırmanın etkinleştirildiğinden emin olun. Bir projede faturalandırmanın etkin olup olmadığını kontrol etmeyi öğrenin.

Looker'ı veri kaynağına bağlama

  1. Looker'da Yönetici bölümündeki Veritabanları başlığına gidin ve Bağlantılar'ı seçin.
  2. Ekranın sağ üst köşesinden Bağlantı Ekle'yi tıklayın.
  3. Cymbal Gadgets veri kümesi için yeni bir veri kaynağı oluşturun. cymbal_gadgets olarak adlandırın. SQL Dialect (SQL Dili) için Google BigQuery Standard SQL seçeneğini belirleyin. Genel bağlantı ayarlarının ekran görüntüsü
  4. Sonraki sayfada Google Cloud proje adınızı, depolama projesini looker-private-demo ve veri kümesi adını cymbal_gadgets girin. Veritabanı ayarlarının ekran görüntüsü
  5. Kalan tüm alanlar için varsayılan değerleri kabul edin ve yeni veri kaynağı oluşturma sürecini tamamlayın.
  6. SQL Yürütücü'da, aşağıdaki komutu çalıştırarak veri kümesini sorgulayabildiğinizi onaylayın:
    SELECT count(*)
    FROM looker-private-demo.cymbal_gadgets.transactions
    

Projeyi GitHub'dan içe aktarma

  1. Projeyi https://github.com/looker-open-source/cymbal_gadgets GitHub'dan kendi deponuza çatallayın. Sahibi olmadığınız bir projeye dağıtım anahtarı ekleyemezsiniz. Bu nedenle, projeyi Looker'a bağlamak için çatallama yapmanız gerekir.
  2. Geliştirme Modu'nu etkinleştirin.
  3. Geliştir'i ve ardından Projeler'i seçin.
  4. LookML Projeleri sayfasında Yeni Model'i tıklayın.
  5. Eski LookML modeli oluşturma sayfasını kullanmak için bağlantıyı tıklayın. Eski model oluşturma iletişim kutusu bağlantısının ekran görüntüsü
  6. Looker'da cymbal_gadgets adlı yeni bir boş proje oluşturun. Yeni proje iletişim kutusunun ekran görüntüsü
  7. Oluşturduğunuz çatallanmış depoya bağlamak için Git'i yapılandır'ı seçin. Git kurulumunun ekran görüntüsü
  8. Deploy Key dosyasını Git deponuza ekleyin. Dağıtım anahtarıyla yazma erişimine izin vermek için kutuyu tıkladığınızdan emin olun. Git dağıtım anahtarı kurulumunun ekran görüntüsü
  9. Ardından Test Et ve Kurulumu Tamamla'yı seçin. Tamamlanmış proje kurulumunun ekran görüntüsü
  10. "🛍️ Cymbal Gadgets: Transactions & Sales" keşfinden veri sorgulayarak projenin ve veri kaynağının çalıştığını doğrulayın.
  11. LookML düzenleyicide cymbal_gadgets projesini açın ve sağ üstteki Geliştirici Kopyası Oluştur düğmesine basın.
  12. Git İşlemleri bölümünde Değişiklikleri Uzak Depoya Gönder'i tıklayarak geliştirme dalının GitHub'da kullanılabilir olmasını sağlayın. Git Actions'ın ekran görüntüsü
  13. Bilgisayarınızdaki bir terminal oturumunda aşağıdakileri çalıştırın:
    cd $HOME
    git clone git@github.com:YOUR_GITHUB_USER/cymbal_gadgets.git
    cd cymbal_gadgets
    git checkout YOUR_DEV_BRANCH
    
    YOUR_GITHUB_USER yerine GitHub kullanıcı hesabı adınızı girin. Ayrıca YOUR_DEV_BRANCH yerine geliştirme dalı adınızı girin. Geliştirme dalınız dev-john-doe-jhgr gibi bir ad alır. Bu ad, dev kelimesi, ardından adınız ve soyadınız, ardından kısa bir rastgele dizeden oluşur. Kişisel geliştirme dalınızı, Looker kullanıcı arayüzündeki LookML düzenleyicinin en üstünde bulabilirsiniz.

3. Agentic IDE'nizi kurma

VS Code uzantısını yükleme

IDE'de sol paneldeki Uzantılar simgesini tıklayın. Ardından "Looker"ı arayın ve yükle düğmesini tıklayarak Google'ın resmi uzantısını yükleyin.

MCP Toolbox for Databases sunucusunu yükleme

Antigravity'nin Looker API'ye erişmesini (sorgu çalıştırma, SQL'i inceleme, LookML modelini inceleme ve bağlantı şeması bilgilerini inceleme) sağlamak için çalışan bir yerel Veritabanları için MCP Toolbox sunucusuna ihtiyacınız vardır. MCP Toolbox, resmi Looker MCP uygulamasıyla birlikte gelir. Bu bölümde, bu özelliği ayarlayıp Looker örneğiniz için yapılandıracaksınız.

  1. Öncelikle bir API client_id ve client_secret gerekir. Kullanıcınız için client_id ve client_secret oluşturmak üzere Looker API Anahtarları kılavuzunu kullanın. Looker örneğinizin temel URL'sine de ihtiyacınız olacaktır.
  2. Artık MCP araç kutusunu yüklemek için npx'i kullanacaksınız. Looker örneği URL'nizi ve API kimlik bilgilerinizi satır içi ortam değişkenleri olarak sağlayabilir veya bunları kabuk ortamınızda ayarlayabilirsiniz. Mac ve Linux için kabuk ortamında şunu çalıştırın:
    LOOKER_BASE_URL="https://your-instance.looker.com" \
    LOOKER_CLIENT_ID="YOUR_CLIENT_ID" \
    LOOKER_CLIENT_SECRET="YOUR_CLIENT_SECRET" \
    npx @toolbox-sdk/server --prebuilt=looker,looker-dev
    
    Windows için PowerShell'de şunu çalıştırın:
    $env:LOOKER_BASE_URL="https://your-instance.looker.com"
    $env:LOOKER_CLIENT_ID="YOUR_CLIENT_ID"
    $env:LOOKER_CLIENT_SECRET="YOUR_CLIENT_SECRET"
    npx @toolbox-sdk/server --prebuilt=looker,looker-dev
    

VS Code uzantısını yapılandırma

Bu adımda, VS Code uzantısını Looker'a ve Looker MCP sunucusuna bağlanacak şekilde yapılandıracaksınız.

  1. Yerçekimsiz modda, komut paletini açmak için CMD-ÜST KARAKTER-P (Mac) veya CTRL+ÜST KARAKTER+P (Linux/Windows) tuşlarına basın ve Preferences: Open Workspace Settings (JSON) simgesini seçin.
  2. client_id ve client_secret kullanarak uzantıyı yapılandırmak için Workspace ayarlarınıza aşağıdakileri ekleyin. looker.projectId için cymbal_gadgets kullanın:
    {
       "looker.instanceURL": "https://your-instance.looker.com",
       "looker.clientId": "YOUR_API_KEY_CLIENT_ID",
       "looker.clientSecret": "YOUR_API_KEY_CLIENT_SECRET",
       "looker.projectId": "cymbal_gadgets"
    }
    

Düzenleyicinizi açma

  1. Antigravity'yi açın.
  2. Dosya > Klasör Aç...'ı tıklayın.
  3. cymbal_gadgets klasörüne gidip bu klasörü seçin.

4. Müşteri yaşam boyu değeri ölçüsü oluşturma

Öncelikle, mevcut LookML modelinde Agent'ı kullanarak yeni bir ölçü oluşturursunuz. Bu perakende kullanım alanında Customer Lifetime Value ölçüsü faydalı olacaktır. Bu ölçü için metodolojiyi ve LookML'yi belirlemek üzere aracı kullanacaksınız.

Temsilciye istem girme

Antigravity çalışma alanınızdaki cymbal_gadgets projesinde sağ tarafta yeni bir görüşme arayüzü görmeniz gerekir. Create a Customer Lifetime Value measure. istemini kullanarak en yeni Gemini modeliyle Planlama modunda sohbete başlayın.

Antigravity'deki istemin ekran görüntüsü

Uygulama planını kontrol edin

Ajan önce bir uygulama planı oluşturur. Uygulama planını açıp inceleyin ve ardından Devam düğmesini tıklayın.

Uygulama planının ekran görüntüsü

LookML'yi inceleyin

Değişen LookML'yi inceleyin. Değişikliklerin mantıklı ve geçerli olduğundan emin olun.

Değiştirilen LookML'nin ekran görüntüsü

Değiştirilen LookML, VS Code uzantısı tarafından Looker ile otomatik olarak senkronize edilir. Geliştirme Modu'nda test edilebilir.

IDE'de test etme

Antigravity'ye query CLV broken down by customer loyalty tier istemini girin. Antigravity, modelleri bulmak, mevcut alanları incelemek ve Looker'ı kullanarak sorgu çalıştırmak için Looker MCP sunucusunu kullanır. Sonuç şöyle olur:

Antigravity'deki verilerin ekran görüntüsü

Looker'da test etme

Looker'da Geliştirme Modu etkin durumdayken 🛍️ Cymbal Gadgets: Transactions & Sales (Cymbal Gadgets: İşlemler ve Satışlar) keşfini açın. Müşteri yaşam boyu değeri ölçüsünü seçin ve ardından müşteri kayıt yılına göre pivot oluşturun. Sorguyu çalıştırın. Aşağıdakine benzer şekilde görünmelidir.

Keşfetme ekranının görüntüsü

5. Müşteri yaşam boyu değeri kontrol paneli oluşturma

Şimdi daha karmaşık bir örnek deneyeceğiz. Aracıdan tamamen yeni bir LookML kontrol paneli oluşturmasını isteyeceğiz.

Agent'tan yeni bir kontrol paneli isteyin

Antigravity'ye geri dönün. Aynı sohbette Planlama modu'nun ve en yeni Gemini modelinin seçili olduğundan emin olun. Ardından istem Create a dashboard showing customer lifetime value based on customer loyalty tier.

Kontrol paneli oluşturma ekran görüntüsü

Uygulama planını tekrar onaylayın ve kod değişikliklerini kabul edin. Bu yeni LookML dosyası artık Looker ile otomatik olarak senkronize edilecek.

Looker'da test etme

Geliştirme modunda LookML Dashboards klasörüne gidin. Yeni oluşturulan kontrol panelini görüntülemek için seçin.

Yeni kontrol panelinin ekran görüntüsü

6. Temizleme

  1. Kaynak Kontrolü bölmesindeki Antigravity'de, isterseniz LookML değişikliklerini geri alın. Değiştirilen her LookML dosyasının yanında, dosyayı geri döndürmek için ↶ gibi bir sembol bulunur. Her dosya için bu düğmeye basın. Değişiklikleri geri alma işleminin ekran görüntüsü
  2. Looker'da Yönetici, ardından Veritabanı ve Bağlantılar'ı seçin. cymbal_gadgets bağlantısının dişli simgesini tıklayın ve Sil'i seçin. Bağlantıyı silmek istediğinizi onaylayın.
  3. Looker'da Geliştirme Modu'nu kullanın. Geliştir'i ve ardından cymbal_gadgets projesini seçin. Proje Ayarları bölümünde Projeyi Sil'i seçin. Projenin adını (cymbal_gadgets) yazıp Permanently Delete cymbal_gadgets (cymbal_gadgets'ı kalıcı olarak sil) etiketli düğmeyi seçerek projeyi silmek istediğinizi onaylayın.

7. Tebrikler

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

İşlediğimiz konular

  • LookML'yi bir aracıyla değiştirme
  • Uygulama planlarını doğrulama
  • IDE'den nasıl test edilir?
  • Looker kullanıcı arayüzünde test etme
  • Bir ajanla yeni bir kontrol paneli oluşturma

Deneyebileceğiniz şeyler

Şimdi, aracı tabanlı IDE'nin farklı özelliklerini görmek için kullanıcı arayüzünde aşağıdaki istemleri deneyin:

  • İyi açıklamalar hem kullanıcılar hem de yapay zeka için çok önemlidir. Aracı, açıklama içermeyen tüm alanlara açıklama eklemeye yönlendirin.
  • Aracıdan, Boyut Grupları'ndan birine daha fazla zaman aralığı eklemesini isteyin.
  • Ajandan "Ürün kategorisine göre ayrılmış ve çeyreğe göre özetlenmiş gelir" gibi bir sorgu gerçekleştirmesini isteyin.

Daha fazla bilgi