Looker Studio ile Places Insights verilerini dinamik olarak görselleştirme

Genel Bakış

Looker Studio'nun, coğrafi yoğunluk ısı haritası oluşturmak için BigQuery'deki Places Insights'a şehir, gün ve saatle ilgili dinamik parametreler gönderdiğini gösteren bir iş akışı şeması.

Bu belgede, Places Insights ve Looker Studio kullanarak dinamik coğrafi raporların nasıl oluşturulacağı açıklanmaktadır. Teknik bilgisi olmayan paydaşların kendi sorularına yanıt vermesini sağlayarak konum verilerinizin değerini ortaya çıkarın. Bu kılavuzda, her istek için SQL yazmanıza gerek kalmadan statik raporları pazar analizi için etkileşimli, ısı haritası tarzı araçlara nasıl dönüştüreceğiniz gösterilmektedir. Veri mühendisliği ile iş zekası arasındaki boşluğu kapatarak karmaşık konum verilerine erişimi etkinleştirin.

Bu mimari kalıbı kullanmak çeşitli önemli avantajlar sağlar:

  • Görsel Veri Temsili: Yer Analizleri verilerini, anında mekansal yoğunluğu ve trendleri ileten etkileşimli haritalara ve grafiklere dönüştürür.
  • SQL'siz basitleştirilmiş keşif: Pazar analistleri veya emlak planlayıcıları gibi ekip üyelerinin, önceden tanımlanmış parametreleri kullanarak verileri dinamik olarak filtrelemesini sağlar (ör. açılır listeleri kullanarak "Şehir" veya "Günün Saati" değiştirme). Tek bir satır SQL kodu yazmadan verileri keşfedebilirler.
  • Sorunsuz İşbirliği: Standart Looker Studio paylaşım özellikleri, bu etkileşimli analizleri güvenli bir şekilde dağıtmanıza olanak tanır.

Çözüm İş Akışı

Aşağıdaki iş akışı, yüksek performanslı bir raporlama mimarisi oluşturur. Karmaşıklığı artırmadan önce verilerin doğruluğunu sağlamak için statik bir temelden tamamen dinamik bir uygulamaya geçiş yapar.

Ön koşullar

Başlamadan önce, Yer Analizleri'ni ayarlamak için bu talimatları uygulayın. Ücretsiz bir araç olan Looker Studio'ya erişmeniz gerekir.

1. adım: Statik bir coğrafi temel oluşturun

Etkileşimli özellikleri kullanmaya başlamadan önce temel bir sorgu oluşturun ve Looker Studio'da doğru şekilde oluşturulduğundan emin olun. H3 indeksleme sistemini kullanarak verileri altıgen ızgaralarda toplamak için Places Insights ve BigQuery'nin coğrafi özelliklerinden yararlanın. Bu işlem, görselleştirme için Looker Studio'nun dolu harita grafik türüyle kullanılabilecek bir sorgu çıkışı oluşturur.

1.1 Verileri bağlama

İlk bağlantıyı kurmak için aşağıdaki statik sorguyu kullanın. Veri işlem hattını doğrulamak için sabit bir konumu (Londra) ve kategoriyi (Restoranlar) hedefler.

SELECT
  h3_index,
  `carto-os.carto.H3_BOUNDARY`(h3_index) AS h3_geo,
  restaurant_count
FROM (
  SELECT WITH AGGREGATION_THRESHOLD
    `carto-os.carto.H3_FROMGEOGPOINT`(point, 8) AS h3_index,
    COUNT(*) AS restaurant_count
  FROM
    -- Note: Change 'gb' to your target country code (e.g., 'us')
    `places_insights___gb.places`
  WHERE
    'London' IN UNNEST(locality_names)
    AND 'restaurant' IN UNNEST(types)
  GROUP BY
    h3_index
)
ORDER BY
  restaurant_count DESC;

Uzamsal Toplama ile İlgili Not

Bu sorgu, Google Cloud BigQuery'de herkese açık olarak sunulan CARTO Analytics Araç Kutusu'ndaki (carto-os) bir işlevi kullanır. H3_FROMGEOGPOINT işlevi, belirli konum noktalarını H3 hücrelerine dönüştürür. Bu sistem, dünyayı altıgen ızgara hücrelerine böler.

Looker Studio'nun dolu haritasında renklerin oluşturulması için poligonlar (şekiller) gerektiğinden bu dönüşümü kullanırız. Noktaları altıgen şekillere dönüştürerek binlerce çakışan noktayı çizmek yerine belirli bir alandaki işletme yoğunluğunu görselleştirebiliriz.

Toplama Eşiği ile İlgili Not

Tüm Places Insights sorguları için WITH AGGREGATION_THRESHOLD ifadesi gerekir. Bu gizlilik koruması, verilerin yalnızca birleştirilmiş sayı 5 veya daha yüksekse döndürülmesini sağlar.

Bu görselleştirme bağlamında, bir H3 ızgara hücresinde 5'ten az restoran varsa bu hücre sonuç kümesinden tamamen çıkarılır ve haritanızda boş görünür.

Bunu Looker Studio'da uygulamak için:

  1. Yeni bir Boş Rapor oluşturun.
  2. Veri bağlayıcı olarak BigQuery'yi seçin.
  3. Sol taraftaki menüden ÖZEL SORGULAR'ı seçin ve faturalandırma proje kimliğinizi belirleyin.
  4. Yukarıdaki Static Base Query'yi düzenleyiciye yapıştırın.
  5. Eski SQL'i kullan, Tarih aralığını etkinleştir ve Görüntüleyici e-posta adresini etkinleştir parametrelerinin işaretini kaldırın.
  6. Ekle'yi tıklayın.

1.2 Coğrafi görselleştirmeyi yapılandırma

Veriler bağlandıktan sonra Looker Studio'yu H3 sınırı verilerini doğru şekilde tanıyacak şekilde yapılandırın:

  1. Grafik ekle menüsünden rapor tuvaline Dolu Harita görselleştirmesi ekleyin.
  2. Çokgen geometrisini içeren h3_geo alanınızın Coğrafi veri türüne ayarlandığından emin olun.
    1. Bağlantı adınızın yanındaki Veri kaynağını düzenle (kalem) simgesini tıklayın.
    2. h3_geo Metin (ABC) olarak ayarlanmışsa açılır menüyü kullanarak Coğrafya > Coğrafi'yi seçin.
    3. Bitti'yi tıklayın.
  3. h3_index alanını Konum ile eşleyin (benzersiz tanımlayıcı olarak işlev görür).
  4. h3_geo alanını Coğrafi Konum Alanı ile eşleyin (çokgen geometrisi olarak işlev görür).
  5. restaurant_count alanını Renk metriği ile eşleyin.

Bu işlem, H3 hücresine göre restoran yoğunluğunun haritasını oluşturur. Daha koyu mavi renk (varsayılan renk seçeneği), daha fazla restoran sayısına sahip bir hücreyi gösterir.

Londra'nın altıgen ızgarayla kaplı bir haritası. Koyu mavi hücreler, restoran yoğunluğunun daha yüksek olduğu yerleri gösteriyor. Grafik açıklamasında 5 ile 1.215 arasında değişen yoğunluk sayıları gösterilir.

2. adım: Dinamik parametreleri uygulama

Raporu etkileşimli hale getirmek için rapora, kullanıcının aşağıdaki seçenekler arasından seçim yapmasına olanak tanıyan kontroller ekleyeceğiz:

  • Yerleşim birimi: Raporun odaklandığı şehri kontrol eder.
  • Haftanın günü: Yerleri, açık oldukları güne göre filtreler ve şemadaki regular_opening_hours kaydından yararlanır.
  • Günün saati: start_time ve end_time alanlarıyla karşılaştırarak yerleri çalışma saatlerine göre filtreler.

Bunu yapmak için kullanıcı tarafından seçilen parametreleri çalışma zamanında doğrudan değiştirilmiş bir Places Insights sorgusuna iletirsiniz. Looker Studio'nun veri kaynağı düzenleyicisinde bu parametreleri yazılan değişkenler olarak açıkça tanımlamanız gerekir.

Looker Studio'da Kaynak menüsünü seçin, ardından Eklenen veri kaynaklarını yönetin'i tıklayın. Görünen panelde, daha önce eklediğimiz BigQuery Özel SQL veri kaynağının karşısındaki EDIT simgesini seçin.

Bağlantıyı Düzenle penceresinde PARAMETRE EKLE'yi seçin. Aşağıdaki değerlere sahip üç parametre ekleyeceğiz.

Parametre Adı Veri Türü İzin Verilen Değerler Değer listesi (Veritabanıyla tam olarak eşleşmelidir)
p_locality Metin Değer listesi
Değer Şirket
London Londra
Manchester Manchester
Birmingham Birmingham
Glasgow Glasgow
p_day_of_week Metin Değer listesi
Değer Şirket
monday Pazartesi
tuesday Salı
wednesday Çarşamba
thursday Perşembe
friday Cuma
saturday Cumartesi
sunday Pazar
p_hour_of_day Metin Değer listesi
Değer Şirket
03:00:00 03:00-04:00
08:00:00 08:00-09:00
19:00:00 19:00-20:00

p_hour_of_day parametresi için örnek yapılandırma.

Saat dizelerinin okunabilir etiketlerle eşlendiği değer listesi bölümünü gösteren p_hour_of_day parametresinin yapılandırma arayüzü.

p_hour_of_day parametresi için Value sütununa dikkat edin. SQL sorgusu CAST(@p_hour_of_day AS TIME) kullandığından Looker Studio'dan iletilen değerler kesinlikle HH:MM:SS biçiminde (24 saatlik saat) olmalıdır.

Üç parametreyi de ayarlayıp kaydettikten sonra BigQuery Özel SQL bağlantınızı @ söz dizimini kullanarak bu değişkenlere referans verecek şekilde değiştirin.

Bu işlem, Bağlantıyı Düzenle'yi tıklayıp aşağıdaki değiştirilmiş sorguyu yapıştırarak yapılır:

SELECT
  h3_index,
  `carto-os.carto.H3_BOUNDARY`(h3_index) AS h3_geo,
  restaurant_count
FROM (
  SELECT WITH AGGREGATION_THRESHOLD
    `carto-os.carto.H3_FROMGEOGPOINT`(point, 8) AS h3_index,
    COUNT(*) AS restaurant_count
  FROM
    `places_insights___gb.places`
  WHERE
    -- Dynamic locality filter based on parameter
    @p_locality IN UNNEST(locality_names)
    AND 'restaurant' IN UNNEST(types)
    AND business_status = 'OPERATIONAL'
    AND EXISTS (
      SELECT 1
      FROM UNNEST(
        CASE @p_day_of_week
          WHEN 'monday' THEN regular_opening_hours.monday
          WHEN 'tuesday' THEN regular_opening_hours.tuesday
          WHEN 'wednesday' THEN regular_opening_hours.wednesday
          WHEN 'thursday' THEN regular_opening_hours.thursday
          WHEN 'friday' THEN regular_opening_hours.friday
          WHEN 'saturday' THEN regular_opening_hours.saturday
          WHEN 'sunday' THEN regular_opening_hours.sunday
        END
      ) AS hours
      WHERE hours.start_time <= CAST(@p_hour_of_day AS TIME)
        AND hours.end_time >= TIME_ADD(CAST(@p_hour_of_day AS TIME), INTERVAL 1 HOUR)
    )
  GROUP BY
    h3_index
)
ORDER BY
  restaurant_count DESC;

Düzenlemeyi kaydetmek için Yeniden Bağlan'ı tıklayın. Değiştirilen sorguda, yeni ayarladığımız parametre adlarıyla ilişkili olan @p_hour_of_day gibi yeni değişkenlere dikkat edin.

Bu parametreleri son kullanıcıya göstermek için rapor tuvaline dönün:

  1. Raporunuza üç Açılır liste kontrolü ekleyin.
  2. Her denetim için Denetim alanı'nı yeni oluşturduğunuz parametrelerle eşleşecek şekilde ayarlayın:
    • 1. kontrol: p_locality
    • 2. kontrol: p_day_of_week
    • Kontrol 3: p_hour_of_day

Nihai raporunuz aşağıdaki gibi görünmelidir. Açılır liste kontrollerinden birinde değeri değiştirmek, Looker Studio'nun haritada görselleştirmeden önce Places Insights'tan istenen verileri getirmesini tetikler.

Glasgow&#39;un restoran yoğunluğu haritasını gösteren ve üstte üç açılır filtre bulunan nihai etkileşimli rapor. Günün saati menüsü, seçilebilir zaman aralıklarını gösterecek şekilde genişletilir.

3. adım: Sonuçları paylaşın

Raporu paylaşmak için Looker Studio'da yerleşik paylaşım aracını kullanın. Bu sayede izleyiciler, açılır listelerinizden seçtikleri parametrelere göre görselleştirmeyi dinamik olarak güncelleyebilir.

Sonuç

Bu kalıp, toplu Yer İşletmeleri Analizleri verilerini Looker Studio'ya sunmak için BigQuery'nin hesaplama gücünden yararlanan ölçeklenebilir ve etkileşimli bir raporlama aracı oluşturur. Bu mimari, büyük ham veri kümelerini görselleştirmeye çalışmanın sakıncalarını önler ve son kullanıcılara verileri zaman, konum ve işletme türü gibi farklı boyutlarda neredeyse gerçek zamanlı olarak keşfetme esnekliği sağlar. Bu, teknik bilgisi olmayan paydaşlarınıza verileri keşfetme esnekliği sunan güçlü bir araçtır.

Sonraki Adımlar

Places Insights şemasının farklı bölümlerini parametrelendirerek dinamik raporların diğer varyasyonlarını keşfedin:

  • Dinamik Rakip Analizi: Kullanıcıların ısı haritasını farklı rakipler arasında anında değiştirmesine ve bir pazardaki göreceli doygunluklarını görmesine olanak tanımak için brand adları parametresi oluşturun. Marka verilerinin kullanılabilirliği için Yer Analizleri verileri hakkında başlıklı makaleyi inceleyin.
  • Etkileşimli site seçimi: price_level için parametreler ekleyin (ör. "Orta" ve "Pahalı") ve minimum rating, emlak ekiplerinin belirli demografik profillerle eşleşen alanları dinamik olarak filtrelemesine olanak tanır.
  • Özel hizmet alanları: Şehir adına göre filtreleme yapmak yerine kullanıcıların özel çalışma alanları tanımlamasına izin verin.
    • Yarıçap tabanlı: p_latitude, p_longitude ve p_radius_meters olmak üzere üç sayısal parametre oluşturun. Koordinatlar, Geocoding API dahil olmak üzere Google Haritalar Platformu API'lerinden alınabilir. Sorgunuzda, ST_DWITHIN işlevine şunları ekleyin:
      • ST_DWITHIN(point, ST_GEOGPOINT(@p_longitude, @p_latitude), @p_radius_meters)
    • Poligon tabanlı: Karmaşık özel şekiller (ör. satış bölgeleri) için kullanıcılar geometri metnini kolayca giremez. Bunun yerine, BigQuery'de şekil geometrilerinizi ve kolay anlaşılır bir ad (ör. "Zone A"). Kullanıcıların bölge seçmesine olanak tanımak için Looker Studio'da bir metin parametresi p_zone_name oluşturun ve ST_CONTAINS işlevinin geometrisini almak için bir alt sorgu kullanın.

Katkıda bulunanlar