Looker Studio की मदद से, Places Insights के डेटा को डाइनैमिक तरीके से विज़ुअलाइज़ करना

खास जानकारी

इस वर्कफ़्लो डायग्राम में दिखाया गया है कि Looker Studio, शहर, दिन, और समय के लिए डाइनैमिक पैरामीटर, BigQuery में मौजूद Places Insights को भेजता है, ताकि जियोस्पेशल डेंसिटी हीटमैप जनरेट किया जा सके.

इस दस्तावेज़ में, जगह की अहम जानकारी और Looker Studio का इस्तेमाल करके, डाइनैमिक जियोस्पेशल रिपोर्ट बनाने का तरीका बताया गया है. अपने लोकेशन डेटा का ज़्यादा से ज़्यादा फ़ायदा पाएं. इसके लिए, बिना तकनीकी जानकारी वाले स्टेकहोल्डर को अपने सवालों के जवाब पाने का अधिकार दें. इस गाइड में, स्टैटिक रिपोर्ट को इंटरैक्टिव और हीटमैप स्टाइल वाले टूल में बदलने का तरीका बताया गया है. इससे बाज़ार का विश्लेषण किया जा सकता है. इसके लिए, आपको हर अनुरोध के लिए एसक्यूएल लिखने की ज़रूरत नहीं होती. जगह की जानकारी के जटिल डेटा को ऐक्सेस करने की सुविधा चालू करें. इससे डेटा इंजीनियरिंग और कारोबार की अहम जानकारी के बीच के अंतर को कम किया जा सकता है.

इस आर्किटेक्चरल पैटर्न को अपनाने से कई मुख्य फ़ायदे मिलते हैं:

  • डेटा को विज़ुअल के तौर पर दिखाना: Places Insights के डेटा को इंटरैक्टिव मैप और चार्ट में बदलता है. इससे किसी जगह पर लोगों की मौजूदगी और रुझानों के बारे में तुरंत पता चलता है.
  • एसक्यूएल के बिना आसान एक्सप्लोरेशन: इससे टीम के सदस्यों, जैसे कि मार्केट विश्लेषक या रियल एस्टेट प्लानर को पहले से तय किए गए पैरामीटर का इस्तेमाल करके, डेटा को डाइनैमिक तरीके से फ़िल्टर करने की सुविधा मिलती है. उदाहरण के लिए, ड्रॉपडाउन का इस्तेमाल करके "शहर" या "दिन का समय" बदलना. वे SQL की एक भी लाइन लिखे बिना डेटा एक्सप्लोर कर सकते हैं.
  • आसानी से मिलकर काम करना: Looker Studio की शेयर करने की स्टैंडर्ड सुविधाओं की मदद से, इंटरैक्टिव इनसाइट को सुरक्षित तरीके से शेयर किया जा सकता है.

समस्या हल करने से जुड़ा वर्कफ़्लो

नीचे दिए गए वर्कफ़्लो से, परफ़ॉर्मेंस को बेहतर बनाने वाला रिपोर्टिंग आर्किटेक्चर तैयार किया जा सकता है. यह स्टैटिक बेसलाइन से पूरी तरह से डाइनैमिक ऐप्लिकेशन पर जाता है. इससे यह पक्का होता है कि जटिलता को लागू करने से पहले डेटा सही हो.

इसमें, प्रतिस्पर्धी का विश्लेषण करने से लेकर खास सुविधाओं के आधार पर साइट चुनने तक के सवाल शामिल हैं.

ज़रूरी शर्तें

शुरू करने से पहले, जगहों के बारे में अहम जानकारी सेट अप करने के लिए, इन निर्देशों का पालन करें. इसके लिए, आपको Looker Studio का ऐक्सेस चाहिए. यह बिना किसी शुल्क के उपलब्ध है.

पहला चरण: स्टैटिक जियोस्पेशल बेसलाइन सेट अप करना

इंटरैक्टिविटी की सुविधा लागू करने से पहले, एक बुनियादी क्वेरी बनाएं और पक्का करें कि वह Looker Studio में सही तरीके से रेंडर हो रही हो. H3 इंडेक्सिंग सिस्टम का इस्तेमाल करके, डेटा को हेक्सागोनल ग्रिड में एग्रीगेट करने के लिए, Places Insights और BigQuery की जियोस्पेशल सुविधाओं का इस्तेमाल करें. इससे क्वेरी का ऐसा आउटपुट मिलेगा जिसका इस्तेमाल, Looker Studio के फ़िल्ड मैप कार्ट टाइप के साथ विज़ुअलाइज़ेशन के लिए किया जा सकता है.

1.1 डेटा कनेक्ट करना

शुरुआती कनेक्शन बनाने के लिए, इस स्टैटिक क्वेरी का इस्तेमाल करें. यह डेटा पाइपलाइन की पुष्टि करने के लिए, किसी तय जगह (लंदन) और कैटगरी (रेस्टोरेंट) को टारगेट करता है.

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;

स्पेशल एग्रीगेशन के बारे में जानकारी

इस क्वेरी में, CARTO Analytics Toolbox (carto-os) के फ़ंक्शन का इस्तेमाल किया गया है. यह टूलबॉक्स, Google Cloud BigQuery में सार्वजनिक तौर पर उपलब्ध है. H3_FROMGEOGPOINT फ़ंक्शन, जगह की जानकारी देने वाले पॉइंट को H3 सेल में बदलता है. यह एक ऐसा सिस्टम है जो दुनिया को षट्कोणीय ग्रिड सेल में बांटता है.

हम इस ट्रांसफ़ॉर्मेशन का इस्तेमाल इसलिए करते हैं, क्योंकि Looker Studio के फ़िल्ड मैप को रंगों को रेंडर करने के लिए, पॉलीगॉन (आकृतियों) की ज़रूरत होती है. पॉइंट को षट्भुजाकार आकृतियों में बदलकर, हम किसी खास इलाके में कारोबारों की डेंसिटी को विज़ुअलाइज़ कर सकते हैं. इसके बजाय, हम हज़ारों ओवरलैपिंग डॉट को प्लॉट करते हैं.

एग्रीगेशन थ्रेशोल्ड के बारे में जानकारी

Places Insights की सभी क्वेरी के लिए, WITH AGGREGATION_THRESHOLD क्लॉज़ ज़रूरी है. निजता सुरक्षा की इस सुविधा से यह पक्का होता है कि डेटा सिर्फ़ तब दिखे, जब एग्रीगेट की गई संख्या पाँच या उससे ज़्यादा हो.

इस विज़ुअलाइज़ेशन के हिसाब से, अगर H3 ग्रिड सेल में पांच से कम रेस्टोरेंट हैं, तो उस सेल को नतीजों के सेट से पूरी तरह हटा दिया जाता है. साथ ही, वह सेल आपके मैप पर खाली दिखेगी.

इसे Looker Studio में लागू करने के लिए:

  1. नई टेंप्लेट के बिना रिपोर्ट बनाएं.
  2. डेटा कनेक्टर के तौर पर BigQuery चुनें.
  3. बाईं ओर दिए गए मेन्यू से, CUSTOM QUERY चुनें. इसके बाद, अपना बिलिंग प्रोजेक्ट आईडी चुनें.
  4. ऊपर दी गई स्टैटिक बेस क्वेरी को एडिटर में चिपकाएं.
  5. लेगसी SQL का इस्तेमाल करें, तारीख की सीमा चालू करें, और व्यूअर का ईमेल पता चालू करें पैरामीटर से सही का निशान हटाएं.
  6. जोड़ें पर क्लिक करें.

1.2 जियोस्पेशल विज़ुअलाइज़ेशन कॉन्फ़िगर करना

डेटा कनेक्ट होने के बाद, Looker Studio को कॉन्फ़िगर करें, ताकि वह H3 बाउंड्री के डेटा को सही तरीके से पहचान सके:

  1. चार्ट जोड़ें मेन्यू से, रिपोर्ट कैनवस में कलर वाला मैप विज़ुअलाइज़ेशन जोड़ें.
  2. पक्का करें कि पॉलीगॉन की ज्यामिति वाला आपका h3_geo फ़ील्ड, भौगोलिक डेटा टाइप पर सेट हो.
    1. अपने कनेक्शन के नाम के बगल में मौजूद, डेटा सोर्स में बदलाव करें (पेंसिल) आइकॉन पर क्लिक करें.
    2. अगर h3_geo को टेक्स्ट (ABC) पर सेट किया गया है, तो ड्रॉप-डाउन मेन्यू का इस्तेमाल करके जियो > जियोस्पेशल चुनें,
    3. हो गया पर क्लिक करें.
  3. h3_index फ़ील्ड को जगह पर मैप करें. यह यूनीक आइडेंटिफ़ायर के तौर पर काम करता है.
  4. h3_geo फ़ील्ड को भौगोलिक डेटा के फ़ील्ड के तौर पर मैप करें. यह पॉलीगॉन ज्यामिति के तौर पर काम करता है.
  5. restaurant_count फ़ील्ड को मेट्रिक में रंग भरें पर मैप करें.

इससे H3 सेल के हिसाब से, रेस्टोरेंट की डेंसिटी का मैप रेंडर होगा. गहरा नीला रंग (डिफ़ॉल्ट रंग विकल्प) ऐसी सेल को दिखाता है जिसमें रेस्टोरेंट की संख्या ज़्यादा है.

लंदन का मैप, जिसमें हेक्सागोनल ग्रिड को ओवरले किया गया है. गहरे नीले रंग वाले सेल से पता चलता है कि वहां रेस्टोरेंट की संख्या ज़्यादा है. लेजेंड में, घनत्व की संख्या 5 से 1,215 तक दिखाई गई है.

दूसरा चरण: डाइनैमिक पैरामीटर लागू करना

रिपोर्ट को इंटरैक्टिव बनाने के लिए, हम इसमें कंट्रोल जोड़ेंगे. इससे उपयोगकर्ता इन विकल्पों में से कोई एक चुन पाएगा:

  • इलाका: इससे यह कंट्रोल किया जाता है कि रिपोर्ट में किस शहर पर फ़ोकस किया जाए.
  • हफ़्ते का दिन: यह फ़िल्टर, जगहों को उनके खुले रहने के दिन के हिसाब से फ़िल्टर करता है. इसके लिए, यह स्कीमा में मौजूद regular_opening_hours रिकॉर्ड का इस्तेमाल करता है.
  • दिन का समय: यह फ़िल्टर, जगहों के खुले होने के समय के आधार पर उन्हें फ़िल्टर करता है. इसके लिए, वह start_time और end_time फ़ील्ड की तुलना करता है.

इसके लिए, उपयोगकर्ता की ओर से चुने गए पैरामीटर को सीधे तौर पर, रनटाइम में Places Insights की बदली हुई क्वेरी में पास करें. Looker Studio के डेटा सोर्स एडिटर में, आपको इन पैरामीटर को टाइप किए गए वैरिएबल के तौर पर साफ़ तौर पर तय करना होगा.

Looker Studio में, संसाधन मेन्यू चुनें. इसके बाद, जोड़े गए डेटा सोर्स मैनेज करें पर क्लिक करें. दिखने वाले पैनल में, BigQuery कस्टम एसक्यूएल डेटा सोर्स के बगल में मौजूद EDIT चुनें. यह वही डेटा सोर्स है जिसे हमने पहले जोड़ा था.

'कनेक्शन में बदलाव करें' विंडो में, पैरामीटर जोड़ें को चुनें. हम यहां तीन पैरामीटर जोड़ रहे हैं. इनकी वैल्यू यहां दी गई हैं.

पैरामीटर का नाम डेटा टाइप मान्य वैल्यू वैल्यू की सूची (डेटाबेस से पूरी तरह मेल खानी चाहिए)
p_locality टेक्स्ट वैल्यू की सूची
मान लेबल
London लंदन
Manchester मैनचेस्टर
Birmingham बर्मिंघम
Glasgow ग्लैस्गो
p_day_of_week टेक्स्ट वैल्यू की सूची
मान लेबल
monday सोमवार
tuesday मंगलवार
wednesday बुधवार
thursday गुरुवार
friday शुक्रवार
saturday शनिवार
sunday रविवार
p_hour_of_day टेक्स्ट वैल्यू की सूची
मान लेबल
03:00:00 सुबह 3 बजे से 4 बजे तक
08:00:00 सुबह 8 बजे से 9 बजे तक
19:00:00 शाम 7 बजे से 8 बजे तक

p_hour_of_day पैरामीटर के लिए कॉन्फ़िगरेशन का उदाहरण.

p_hour_of_day पैरामीटर के लिए कॉन्फ़िगरेशन इंटरफ़ेस. इसमें वैल्यू की सूची वाला सेक्शन दिखाया गया है. इसमें समय की स्ट्रिंग को पढ़ने लायक लेबल पर मैप किया गया है.

p_hour_of_day पैरामीटर के लिए, Value कॉलम पर खास ध्यान दें. SQL क्वेरी में CAST(@p_hour_of_day AS TIME) का इस्तेमाल किया जाता है. इसलिए, Looker Studio से पास की गई वैल्यू, HH:MM:SS फ़ॉर्मैट (24 घंटे वाली घड़ी) में होनी चाहिए.

तीनों पैरामीटर सेट अप करके सेव करने के बाद, BigQuery कस्टम एसक्यूएल कनेक्शन में बदलाव करें. इसके लिए, @ सिंटैक्स का इस्तेमाल करके इन वैरिएबल को रेफ़रंस करें.

इसके लिए, कनेक्शन में बदलाव करें पर क्लिक करें. इसके बाद, नीचे दी गई बदली हुई क्वेरी चिपकाएं:

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;

बदलाव सेव करने के लिए, फिर से कनेक्ट करें पर क्लिक करें. बदली गई क्वेरी में, नए वैरिएबल नोट करें. जैसे, @p_hour_of_day. ये वैरिएबल, पैरामीटर के उन नामों से जुड़े हैं जिन्हें हमने अभी सेट अप किया है.

इन पैरामीटर को रिपोर्ट इस्तेमाल करने वाले व्यक्ति के लिए उपलब्ध कराने के लिए, रिपोर्ट कैनवस पर वापस जाएं:

  1. अपनी रिपोर्ट में तीन ड्रॉप-डाउन सूची कंट्रोल जोड़ें.
  2. हर कंट्रोल के लिए, कंट्रोल फ़ील्ड को नए बनाए गए पैरामीटर के हिसाब से सेट करें:
    • कंट्रोल 1: p_locality
    • कंट्रोल 2: p_day_of_week
    • कंट्रोल 3: p_hour_of_day

आपकी फ़ाइनल रिपोर्ट ऐसी दिखनी चाहिए. ड्रॉप-डाउन कंट्रोल में किसी वैल्यू को बदलने पर, Looker Studio, Places Insights से अनुरोध किया गया डेटा फ़ेच करेगा. इसके बाद, उसे मैप पर दिखाएगा.

ग्लास्गो के रेस्टोरेंट का घनत्व दिखाने वाली फ़ाइनल इंटरैक्टिव रिपोर्ट. इसमें सबसे ऊपर तीन ड्रॉप-डाउन फ़िल्टर दिख रहे हैं. दिन के समय का मेन्यू बड़ा किया गया है, ताकि चुनी जा सकने वाली समयावधि दिख सकें.

तीसरा चरण: नतीजे शेयर करना

रिपोर्ट शेयर करने के लिए, Looker Studio में मौजूद शेयर करने वाले टूल का इस्तेमाल करें. इससे दर्शकों को, ड्रॉप-डाउन सूचियों से चुने गए पैरामीटर के आधार पर, विज़ुअलाइज़ेशन को डाइनैमिक तरीके से अपडेट करने की अनुमति मिलेगी.

नतीजा

इस पैटर्न से, एक ऐसा इंटरैक्टिव रिपोर्टिंग टूल बनाया जाता है जिसे आसानी से बढ़ाया जा सकता है. यह टूल, Looker Studio को एग्रीगेट किया गया Places Insights डेटा उपलब्ध कराने के लिए, BigQuery की कंप्यूटिंग क्षमता का इस्तेमाल करता है. इस आर्किटेक्चर की मदद से, बड़े रॉ डेटासेट को विज़ुअलाइज़ करने से जुड़ी समस्याओं से बचा जा सकता है. साथ ही, इससे उपयोगकर्ताओं को अलग-अलग डाइमेंशन के हिसाब से डेटा एक्सप्लोर करने की सुविधा मिलती है. जैसे, समय, जगह, और कारोबार का टाइप. यह सुविधा, रीयल टाइम के आस-पास काम करती है. यह एक बेहतरीन टूल है. इससे, तकनीकी जानकारी न रखने वाले स्टेकहोल्डर को डेटा एक्सप्लोर करने की सुविधा मिलती है.

अगले चरण

Places Insights स्कीमा के अलग-अलग हिस्सों को पैरामीटर के तौर पर इस्तेमाल करके, डाइनैमिक रिपोर्ट के अन्य वर्शन एक्सप्लोर करें:

  • डाइनैमिक तरीके से प्रतिस्पर्धियों का विश्लेषण करना: brand के नामों के लिए एक पैरामीटर बनाएं, ताकि उपयोगकर्ता अलग-अलग प्रतिस्पर्धियों के बीच हीटमैप को तुरंत स्विच कर सकें. इससे वे किसी बाज़ार में प्रतिस्पर्धियों की तुलना में अपने प्रॉडक्ट की उपलब्धता देख पाएंगे. ब्रैंड के डेटा की उपलब्धता के बारे में जानने के लिए, Places Insights के डेटा के बारे में जानकारी देखें.
  • इंटरैक्टिव साइट चुनने की सुविधा: price_level के लिए पैरामीटर जोड़ें (उदाहरण के लिए, 'सामान्य' बनाम 'ज़्यादा') और कम से कम rating होना चाहिए, ताकि रियल एस्टेट टीमें उन इलाकों के लिए डाइनैमिक तरीके से फ़िल्टर कर सकें जो किसी खास डेमोग्राफ़िक प्रोफ़ाइल से मेल खाते हैं.
  • कस्टम कैचमेंट एरिया: शहर के नाम के हिसाब से फ़िल्टर करने के बजाय, उपयोगकर्ताओं को कस्टम स्टडी एरिया तय करने की अनुमति दें.
    • रेडियस के आधार पर: तीन संख्या वाले पैरामीटर बनाएं: p_latitude, p_longitude, और p_radius_meters. निर्देशांक, Google Maps Platform API से हासिल किए जा सकते हैं. इनमें Geocoding API भी शामिल है. अपनी क्वेरी में, ST_DWITHIN फ़ंक्शन में इन्हें इंजेक्ट करें:
      • ST_DWITHIN(point, ST_GEOGPOINT(@p_longitude, @p_latitude), @p_radius_meters)
    • पॉलीगॉन पर आधारित: जटिल कस्टम शेप (जैसे, बिक्री वाले इलाके) के लिए, उपयोगकर्ता आसानी से ज्यामिति टेक्स्ट नहीं डाल सकते. इसके बजाय, BigQuery में एक लुकअप टेबल बनाएं. इसमें आपकी शेप ज्योमेट्री और समझने में आसान नाम (जैसे, "ज़ोन A"). Looker Studio में एक टेक्स्ट पैरामीटर p_zone_name बनाएं, ताकि उपयोगकर्ता ज़ोन चुन सकें. साथ ही, ST_CONTAINS फ़ंक्शन के लिए ज्यामिति वापस पाने के लिए, सबक्वेरी का इस्तेमाल करें.

योगदानकर्ता