লুকার স্টুডিওর সাহায্যে স্থানের অন্তর্দৃষ্টি ডেটা গতিশীলভাবে কল্পনা করুন

সংক্ষিপ্ত বিবরণ

একটি ওয়ার্কফ্লো ডায়াগ্রাম যেখানে লুকার স্টুডিও শহর, দিন এবং সময়ের জন্য গতিশীল প্যারামিটারগুলি BigQuery-তে Places Insights-এ পাঠাচ্ছে যাতে একটি ভূ-স্থানিক ঘনত্বের হিটম্যাপ তৈরি করা যায়।

এই ডকুমেন্টে প্লেস ইনসাইটস এবং লুকার স্টুডিও ব্যবহার করে কীভাবে গতিশীল ভূ-স্থানিক প্রতিবেদন তৈরি করবেন তা বর্ণনা করা হয়েছে। অ-প্রযুক্তিগত স্টেকহোল্ডারদের তাদের নিজস্ব প্রশ্নের উত্তর দেওয়ার ক্ষমতা দিয়ে আপনার অবস্থানের ডেটার মূল্য আনলক করুন। এই নির্দেশিকাটি আপনাকে দেখায় যে কীভাবে স্ট্যাটিক প্রতিবেদনগুলিকে বাজার বিশ্লেষণের জন্য ইন্টারেক্টিভ, হিটম্যাপ-স্টাইলের সরঞ্জামগুলিতে রূপান্তর করা যায়, প্রতিটি অনুরোধের জন্য SQL না লিখে। জটিল অবস্থানের ডেটাতে অ্যাক্সেস সক্ষম করুন, ডেটা ইঞ্জিনিয়ারিং এবং ব্যবসায়িক বুদ্ধিমত্তার মধ্যে ব্যবধান পূরণ করুন।

এই স্থাপত্য নকশা গ্রহণ করলে বেশ কিছু গুরুত্বপূর্ণ সুবিধা পাওয়া যায়:

  • ভিজ্যুয়াল ডেটা প্রতিনিধিত্ব: স্থানের অন্তর্দৃষ্টির ডেটাকে ইন্টারেক্টিভ মানচিত্র এবং চার্টে রূপান্তরিত করে যা তাৎক্ষণিকভাবে স্থানিক ঘনত্ব এবং প্রবণতার সাথে যোগাযোগ করে।
  • SQL ছাড়া সরলীকৃত অন্বেষণ: বাজার বিশ্লেষক বা রিয়েল এস্টেট পরিকল্পনাকারীদের মতো দলের সদস্যদের পূর্বনির্ধারিত প্যারামিটার ব্যবহার করে গতিশীলভাবে ডেটা ফিল্টার করতে সক্ষম করে (যেমন, ড্রপডাউন ব্যবহার করে "শহর" বা "দিনের সময়" পরিবর্তন করা)। তারা SQL এর একটিও লাইন না লিখে ডেটা অন্বেষণ করতে পারে।
  • নির্বিঘ্ন সহযোগিতা: স্ট্যান্ডার্ড লুকার স্টুডিও শেয়ারিং বৈশিষ্ট্যগুলি আপনাকে এই ইন্টারেক্টিভ অন্তর্দৃষ্টিগুলি নিরাপদে বিতরণ করতে দেয়।

সমাধান কর্মপ্রবাহ

নিম্নলিখিত কর্মপ্রবাহ একটি পারফর্ম্যান্ট রিপোর্টিং আর্কিটেকচার প্রতিষ্ঠা করে। এটি একটি স্ট্যাটিক বেসলাইন থেকে সম্পূর্ণ গতিশীল অ্যাপ্লিকেশনে চলে যায়, জটিলতা প্রবর্তনের আগে ডেটার সঠিকতা নিশ্চিত করে।

পূর্বশর্ত

শুরু করার আগে, Places Insights সেট আপ করতে এই নির্দেশাবলী অনুসরণ করুন । আপনার Looker Studio-তে অ্যাক্সেসের প্রয়োজন হবে, যা একটি বিনামূল্যের টুল।

ধাপ ১: একটি স্থির ভূ-স্থানিক ভিত্তিরেখা স্থাপন করুন

ইন্টারঅ্যাক্টিভিটি চালু করার আগে, একটি বেস কোয়েরি স্থাপন করুন এবং নিশ্চিত করুন যে এটি লুকার স্টুডিওতে সঠিকভাবে রেন্ডার করছে। H3 ইনডেক্সিং সিস্টেম ব্যবহার করে ষড়ভুজাকার গ্রিডে ডেটা একত্রিত করতে প্লেস ইনসাইটস এবং বিগকুয়েরির ভূ-স্থানিক ক্ষমতা ব্যবহার করুন। এটি একটি কোয়েরি আউটপুট তৈরি করবে যা ভিজ্যুয়ালাইজেশনের জন্য লুকার স্টুডিওর ভরাট ম্যাপ কার্ট টাইপের সাথে ব্যবহার করা যেতে পারে।

১.১ ডেটা সংযুক্ত করুন

প্রাথমিক সংযোগ স্থাপন করতে নিম্নলিখিত স্ট্যাটিক কোয়েরিটি ব্যবহার করুন। এটি ডেটা পাইপলাইন যাচাই করার জন্য একটি নির্দিষ্ট অবস্থান (লন্ডন) এবং বিভাগ (রেস্তোরাঁ) লক্ষ্য করে।

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 অ্যানালিটিক্স টুলবক্স ( carto-os ) থেকে একটি ফাংশন ব্যবহার করে যা Google Cloud BigQuery-তে সর্বজনীনভাবে উপলব্ধ। H3_FROMGEOGPOINT ফাংশন নির্দিষ্ট অবস্থান বিন্দুগুলিকে H3 কোষে রূপান্তর করে, একটি সিস্টেম যা বিশ্বকে ষড়ভুজাকার গ্রিড কোষে বিভক্ত করে।

আমরা এই রূপান্তরটি ব্যবহার করি কারণ লুকার স্টুডিওর ভরাট মানচিত্রে রঙ রেন্ডার করার জন্য বহুভুজ (আকৃতি) প্রয়োজন। বিন্দুগুলিকে ষড়ভুজাকার আকারে রূপান্তর করে, আমরা হাজার হাজার ওভারল্যাপিং বিন্দু প্লট করার পরিবর্তে একটি নির্দিষ্ট এলাকায় ব্যবসার ঘনত্ব কল্পনা করতে পারি।

একত্রিতকরণের সীমা সম্পর্কে নোট

সমস্ত স্থান অন্তর্দৃষ্টি প্রশ্নের জন্য WITH AGGREGATION_THRESHOLD ধারা প্রয়োজন। এই গোপনীয়তা সুরক্ষা নিশ্চিত করে যে সমষ্টিগত গণনা ৫ বা তার বেশি হলেই কেবল ডেটা ফেরত পাঠানো হবে।

এই ভিজ্যুয়ালাইজেশনের প্রেক্ষাপটে, যদি একটি H3 গ্রিড সেলে 5 টিরও কম রেস্তোরাঁ থাকে, তাহলে সেই সেলটি ফলাফল সেট থেকে সম্পূর্ণরূপে বাদ দেওয়া হবে এবং আপনার মানচিত্রে খালি দেখাবে।

লুকার স্টুডিওতে এটি বাস্তবায়ন করতে:

  1. একটি নতুন ফাঁকা প্রতিবেদন তৈরি করুন।
  2. ডেটা সংযোগকারী হিসেবে BigQuery নির্বাচন করুন।
  3. বাম দিকের মেনু থেকে CUSTOM QUERY নির্বাচন করুন এবং আপনার বিলিং প্রজেক্ট আইডি নির্বাচন করুন।
  4. উপরে স্ট্যাটিক বেস কোয়েরিটি এডিটরে পেস্ট করুন।
  5. Use Legacy SQL , Enable date range এবং Enable viewer email address parameters সাফ করুন।
  6. যোগ করুন ক্লিক করুন।

১.২ ভূ-স্থানিক ভিজ্যুয়ালাইজেশন কনফিগার করুন

ডেটা সংযুক্ত হয়ে গেলে, H3 সীমানা ডেটা সঠিকভাবে সনাক্ত করার জন্য লুকার স্টুডিও কনফিগার করুন:

  1. "চার্ট যোগ করুন" মেনু থেকে রিপোর্ট ক্যানভাসে একটি ভরাট মানচিত্র ভিজ্যুয়ালাইজেশন যোগ করুন।
  2. নিশ্চিত করুন যে আপনার h3_geo ক্ষেত্রটি, যেখানে বহুভুজ জ্যামিতি রয়েছে, ভূ-স্থানিক ডেটা টাইপে সেট করা আছে।
    1. আপনার সংযোগের নামের পাশে ডেটা সোর্স সম্পাদনা করুন (পেন্সিল) আইকনে ক্লিক করুন।
    2. যদি h3_geo টেক্সট (ABC) তে সেট করা থাকে, তাহলে ড্রপ-ডাউন মেনু ব্যবহার করে Geo > Geospatial নির্বাচন করুন,
    3. সম্পন্ন ক্লিক করুন।
  3. h3_index ফিল্ডটিকে Location (অনন্য শনাক্তকারী হিসেবে কাজ করে) ম্যাপ করুন।
  4. h3_geo ক্ষেত্রটিকে ভূ-স্থানিক ক্ষেত্র (বহুভুজ জ্যামিতি হিসেবে কাজ করে) ম্যাপ করুন।
  5. restaurant_count ক্ষেত্রটিকে Color metric এ ম্যাপ করুন।

এটি H3 সেল অনুসারে রেস্তোরাঁর ঘনত্বের একটি মানচিত্র তৈরি করবে। গাঢ় নীল (ডিফল্ট রঙের বিকল্প) রেস্তোরাঁর সংখ্যা বেশি এমন একটি সেল নির্দেশ করে।

লন্ডনের একটি পূর্ণ মানচিত্রে ষড়ভুজাকার গ্রিড রয়েছে, যেখানে গাঢ় নীল কোষগুলি রেস্তোরাঁর ঘনত্বের পরিমাণ বেশি বলে নির্দেশ করে। কিংবদন্তি অনুসারে, ঘনত্বের সংখ্যা ৫ থেকে ১,২১৫ পর্যন্ত।

ধাপ ২: গতিশীল পরামিতি বাস্তবায়ন করুন

রিপোর্টটিকে ইন্টারেক্টিভ করার জন্য, আমরা রিপোর্টে নিয়ন্ত্রণ যোগ করব যা ব্যবহারকারীকে নিম্নলিখিত বিকল্পগুলি থেকে নির্বাচন করার অনুমতি দেবে:

  • এলাকা: প্রতিবেদনটি যে শহরটির উপর আলোকপাত করে তা নিয়ন্ত্রণ করে।
  • সপ্তাহের দিন: স্কিমার regular_opening_hours রেকর্ড ব্যবহার করে, খোলা থাকার দিনের উপর ভিত্তি করে স্থানগুলি ফিল্টার করে।
  • দিনের সময়: start_time এবং end_time ক্ষেত্রের সাথে তুলনা করে তাদের কার্যক্ষম সময়ের উপর ভিত্তি করে স্থানগুলি ফিল্টার করে।

এটি অর্জনের জন্য, আপনাকে রানটাইমে ব্যবহারকারী-নির্বাচিত প্যারামিটারগুলি সরাসরি একটি পরিবর্তিত প্লেস ইনসাইটস কোয়েরিতে প্রেরণ করতে হবে। লুকার স্টুডিওর ডেটা সোর্স এডিটরে, আপনাকে স্পষ্টভাবে এই প্যারামিটারগুলিকে টাইপ করা ভেরিয়েবল হিসাবে সংজ্ঞায়িত করতে হবে।

Looker Studio-তে, Resource মেনু নির্বাচন করুন, তারপর Manage added data sources এ ক্লিক করুন। প্রদর্শিত প্যানেলের মধ্যে, আমরা আগে যে BigQuery Custom SQL data source যোগ করেছি তার বিপরীতে EDIT নির্বাচন করুন।

Edit Connection উইন্ডোতে, ADD A PARAMETER নির্বাচন করুন। আমরা নীচের মানগুলি সহ তিনটি প্যারামিটার যুক্ত করতে যাচ্ছি।

প্যারামিটারের নাম ডেটা টাইপ অনুমোদিত মান মানগুলির তালিকা (ডিবি-র সাথে হুবহু মিলতে হবে)
p_locality টেক্সট মান তালিকা
মূল্য লেবেল
London লন্ডন
Manchester ম্যানচেস্টার
Birmingham বার্মিংহাম
Glasgow গ্লাসগো
p_day_of_week টেক্সট মান তালিকা
মূল্য লেবেল
monday সোমবার
tuesday মঙ্গলবার
wednesday বুধবার
thursday বৃহস্পতিবার
friday শুক্রবার
saturday শনিবার
sunday রবিবার
p_hour_of_day টেক্সট মান তালিকা
মূল্য লেবেল
03:00:00 ভোর ৩টা - ভোর ৪টা
08:00:00 সকাল ৮টা - সকাল ৯টা
19:00:00 সন্ধ্যা ৭টা - রাত ৮টা

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 কাস্টম SQL সংযোগটি পরিবর্তন করুন।

এটি Edit Connection এ ক্লিক করে এবং নীচের পরিবর্তিত কোয়েরিটি পেস্ট করে করা হয়:

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. প্রতিটি নিয়ন্ত্রণের জন্য, আপনার নতুন তৈরি করা প্যারামিটারের সাথে সামঞ্জস্যপূর্ণভাবে নিয়ন্ত্রণ ক্ষেত্রটি সেট করুন:
    • নিয়ন্ত্রণ ১: p_locality
    • নিয়ন্ত্রণ ২: p_day_of_week
    • নিয়ন্ত্রণ ৩: p_hour_of_day

আপনার চূড়ান্ত প্রতিবেদনটি দেখতে এরকম হওয়া উচিত। ড্রপ-ডাউন নিয়ন্ত্রণগুলির একটিতে একটি মান পরিবর্তন করলে, লুকার স্টুডিও মানচিত্রে ভিজ্যুয়ালাইজ করার আগে প্লেস ইনসাইট থেকে অনুরোধকৃত ডেটা আনতে ট্রিগার করবে।

চূড়ান্ত ইন্টারেক্টিভ রিপোর্টে গ্লাসগোর একটি রেস্তোরাঁর ঘনত্বের মানচিত্র দেখানো হয়েছে যেখানে উপরে তিনটি ড্রপ-ডাউন ফিল্টার রয়েছে। নির্বাচনযোগ্য সময়সীমা দেখানোর জন্য দিনের ঘন্টা মেনুটি প্রসারিত করা হয়েছে।

ধাপ ৩: ফলাফল শেয়ার করুন

প্রতিবেদনটি শেয়ার করার জন্য লুকার স্টুডিওতে তৈরি শেয়ারিং টুলটি ব্যবহার করুন। এটি দর্শকদের আপনার ড্রপ-ডাউন তালিকা থেকে নির্বাচিত প্যারামিটারের উপর ভিত্তি করে ভিজ্যুয়ালাইজেশনটি গতিশীলভাবে আপডেট করার অনুমতি দেবে।

উপসংহার

এই প্যাটার্নটি একটি স্কেলেবল, ইন্টারেক্টিভ রিপোর্টিং টুল তৈরি করে যা BigQuery-এর কম্পিউটেশনাল পাওয়ার ব্যবহার করে Looker Studio-তে প্লেসেস ইনসাইটস ডেটা পরিবেশন করে। এই আর্কিটেকচারটি বিশাল কাঁচা ডেটাসেট কল্পনা করার চেষ্টা করার ঝুঁকি এড়ায় এবং শেষ ব্যবহারকারীদের সময়, অবস্থান এবং ব্যবসায়িক ধরণের মতো বিভিন্ন মাত্রায় ডেটা অন্বেষণ করার নমনীয়তা প্রদান করে, প্রায় রিয়েল-টাইমে। এটি আপনার অ-প্রযুক্তিগত স্টেকহোল্ডারদের ডেটা অন্বেষণ করার নমনীয়তা দেওয়ার জন্য একটি শক্তিশালী হাতিয়ার।

পরবর্তী পদক্ষেপ

Places Insights স্কিমার বিভিন্ন অংশ প্যারামিটারাইজ করে ডায়নামিক রিপোর্টের অন্যান্য বৈচিত্র্য অন্বেষণ করুন:

  • গতিশীল প্রতিযোগী বিশ্লেষণ: brand নামের জন্য একটি প্যারামিটার তৈরি করুন যাতে ব্যবহারকারীরা তাৎক্ষণিকভাবে বিভিন্ন প্রতিযোগীর মধ্যে হিটম্যাপ পরিবর্তন করে বাজারে তাদের আপেক্ষিক স্যাচুরেশন দেখতে পারেন। ব্র্যান্ড ডেটার প্রাপ্যতার জন্য About Places Insights ডেটা দেখুন।
  • ইন্টারেক্টিভ সাইট নির্বাচন: price_level জন্য প্যারামিটার (যেমন, 'মাঝারি' বনাম 'ব্যয়বহুল') এবং ন্যূনতম rating যোগ করুন যাতে রিয়েল এস্টেট দলগুলি নির্দিষ্ট জনসংখ্যাতাত্ত্বিক প্রোফাইলের সাথে মেলে এমন এলাকার জন্য গতিশীলভাবে ফিল্টার করতে পারে।
  • কাস্টম ক্যাচমেন্ট এরিয়া: শহরের নাম দিয়ে ফিল্টার করার পরিবর্তে, ব্যবহারকারীদের কাস্টম স্টাডি এরিয়া নির্ধারণ করার অনুমতি দিন।
    • ব্যাসার্ধ-ভিত্তিক: তিনটি সংখ্যাসূচক প্যারামিটার তৈরি করুন: p_latitude, p_longitude, এবং p_radius_meters। স্থানাঙ্কগুলি জিওকোডিং API সহ Google Maps প্ল্যাটফর্ম API থেকে পাওয়া যেতে পারে। আপনার কোয়েরিতে, এগুলি ST_DWITHIN ফাংশনে ইনজেক্ট করুন:
      • ST_DWITHIN(point, ST_GEOGPOINT(@p_longitude, @p_latitude), @p_radius_meters)
    • বহুভুজ-ভিত্তিক: জটিল কাস্টম আকারের জন্য (যেমন বিক্রয় অঞ্চল), ব্যবহারকারীরা সহজেই জ্যামিতি টেক্সট ইনপুট করতে পারে না। পরিবর্তে, BigQuery-তে আপনার আকৃতির জ্যামিতি এবং একটি বন্ধুত্বপূর্ণ নাম (যেমন, "জোন A") ধারণকারী একটি লুকআপ টেবিল তৈরি করুন। ব্যবহারকারীদের জোন নির্বাচন করতে দেওয়ার জন্য Looker Studio-তে p_zone_name একটি টেক্সট প্যারামিটার তৈরি করুন এবং ST_CONTAINS ফাংশনের জন্য জ্যামিতি পুনরুদ্ধার করতে একটি সাবকোয়েরি ব্যবহার করুন।

অবদানকারীরা