BigQuery-এর মাধ্যমে ব্যক্তিগতকরণ ডেটা পরীক্ষা করুন

যখন কোনো ব্যবহারকারীকে একটি পার্সোনালাইজেশন অ্যাসাইন করা হয়, তখন Remote Config পার্সোনালাইজেশন একটি personalization_assignment Analytics ইভেন্ট লগ করে, যা আপনাকে BigQuery ব্যবহার করে পার্সোনালাইজেশন ইভেন্ট এবং সংশ্লিষ্ট ইভেন্টগুলো পরিদর্শন ও বিশ্লেষণ করার সুযোগ দেয়।

নিম্নলিখিত বিভাগগুলিতে Analytics ইভেন্টের জন্য BigQuery এক্সপোর্ট কীভাবে সক্ষম করতে হয়, পার্সোনালাইজেশন ইভেন্টগুলি কীভাবে সংরক্ষণ করা হয় এবং আপনাকে শুরু করার জন্য কিছু প্রাথমিক কোয়েরি প্রদান করা হয়েছে।

Google Analytics for Firebase এর জন্য BigQuery এক্সপোর্ট সক্রিয় করুন

আপনি যদি Spark প্ল্যানে থাকেন, তাহলে Sandbox-এর সীমাবদ্ধতা সাপেক্ষে কোনো খরচ ছাড়াই BigQuery অ্যাক্সেস করতে BigQuery স্যান্ডবক্স ব্যবহার করতে পারবেন। আরও তথ্যের জন্য মূল্য নির্ধারণ এবং BigQuery স্যান্ডবক্স দেখুন।

প্রথমে, নিশ্চিত করুন যে আপনি আপনার Analytics ডেটা BigQuery তে এক্সপোর্ট করছেন।

  1. ইন্টিগ্রেশন ট্যাবটি খুলুন, যেটি আপনি Firebase কনসোলে > প্রজেক্ট সেটিংস ব্যবহার করে অ্যাক্সেস করতে পারবেন।
  2. আপনি যদি ইতিমধ্যেই অন্যান্য Firebase পরিষেবার সাথে BigQuery ব্যবহার করে থাকেন, তাহলে Manage-এ ক্লিক করুন। অন্যথায়, Link-এ ক্লিক করুন।
  3. Firebase-কে BigQuery এর সাথে লিঙ্ক করার বিষয়ে পর্যালোচনা করুন, তারপর Next-এ ক্লিক করুন।
  4. ইন্টিগ্রেশন কনফিগার করুন বিভাগে, Google Analytics টগলটি সক্রিয় করুন।
  5. একটি অঞ্চল নির্বাচন করুন এবং রপ্তানি সেটিংস বেছে নিন।

  6. BigQuery তে যেতে লিঙ্কে ক্লিক করুন।

আপনি কীভাবে ডেটা এক্সপোর্ট করেছেন তার উপর নির্ভর করে, টেবিলগুলো উপলব্ধ হতে একদিন পর্যন্ত সময় লাগতে পারে। BigQuery তে প্রোজেক্ট ডেটা এক্সপোর্ট করার বিষয়ে আরও তথ্যের জন্য, "BigQuery-তে প্রোজেক্ট ডেটা এক্সপোর্ট করুন" দেখুন।

এরপরে, চলুন BigQuery তে আমাদের পার্সোনালাইজেশন ইভেন্টগুলো অ্যাক্সেস ও পরীক্ষা করে দেখি।

BigQuery ব্যবহার করে Remote Config ব্যক্তিগতকরণের ডেটা অ্যাক্সেস করুন

একটি পরীক্ষার জন্য অ্যানালিটিক্স ডেটা কোয়েরি করতে:

  1. Google Cloud কনসোলে BigQuery খুলুন। এছাড়াও, পেজের নিচে থাকা ‘view your raw events in BigQuery লিঙ্কটি ব্যবহার করে আপনি সরাসরি Analytics Events থেকেও এটি খুলতে পারেন।
  2. আপনার Firebase প্রজেক্টটি নির্বাচন করে সেটিকে প্রসারিত করুন, তারপর analytics_ ANALYTICS_PROPERTY_ID এন্ট্রিটি প্রসারিত করুন এবং events_ ক্লিক করুন।

    Access personalization events in the Cloud console

  3. কোয়েরি ড্রপ-ডাউন থেকে ‘ইন আ নিউ ট্যাব’ নির্বাচন করুন।

    স্বয়ংক্রিয়ভাবে তৈরি একটি উদাহরণ কোয়েরি প্রদর্শিত হবে।

  4. পার্সোনালাইজেশন ইভেন্ট এবং সংশ্লিষ্ট ডেটা দেখতে, কোয়েরিটি আপডেট করে personalization_assignment ইভেন্টগুলো নির্বাচন করুন। নিম্নলিখিত উদাহরণ কোয়েরিটি একটি নির্দিষ্ট ডেট শার্ডের জন্য একটি সম্পূর্ণ পার্সোনালাইজেশন অ্যাসাইনমেন্ট ইভেন্ট ফেরত দেবে, এবং ফলাফল ১০টির মধ্যে সীমাবদ্ধ রাখবে:

    # Select all personalization_assignment events
    SELECT *
    FROM `PROJECT_NAME.analytics_ANALYTICS_PROPERTY_ID.events_DATE_SHARD`
    WHERE event_name = 'personalization_assignment'
    LIMIT 10
    

    পরামর্শ: শার্ডেড টেবিলের পরিবর্তে সমস্ত ইভেন্ট টেবিল অনুসন্ধান করতে, আপনি ইভেন্ট টেবিলের তারিখকে একটি অ্যাস্টারিস্ক (*) দিয়ে প্রতিস্থাপন করতে পারেন (উদাহরণস্বরূপ, PROJECT_NAME .analytics_ ANALYTICS_PROPERTY_ID .events_* )। নন-টেস্ট সিনারিওতে বা বৃহৎ ডেটা সেটের জন্য এটি সুপারিশ করা হয় না।

  5. কোয়েরি কম্পোজারে, 'রান কোয়েরি' নির্বাচন করুন। ফলাফল নিচের প্যানে প্রদর্শিত হবে।

পরবর্তী অংশে, একটি পার্সোনালাইজেশন অ্যাসাইনমেন্ট ইভেন্টে কী কী অন্তর্ভুক্ত থাকে, তা আমরা আরও বিস্তারিতভাবে আলোচনা করব।

BigQuery তে কোন ব্যক্তিগতকরণের ডেটা রপ্তানি করা হয়?

ব্যক্তিগতকরণের ডেটা BigQuery এর Google Analytics টেবিলগুলিতে অন্তর্ভুক্ত করা হয় এবং personalization_assignment ইভেন্টগুলিতে সংরক্ষণ করা হয়।

[GA4] BigQuery এক্সপোর্ট স্কিমাতে বর্ণিত যেকোনো Analytics ইভেন্টের মতোই একটি পার্সোনালাইজেশন ইভেন্টে মৌলিক ফিল্ডগুলো থাকে। আপনাকে মূলত user_pseudo_id (যা স্বতন্ত্র ব্যবহারকারীদের মধ্যে পার্থক্য করতে ব্যবহার করা যেতে পারে), ইভেন্ট টাইমস্ট্যাম্প এবং অন্যান্য ব্যবহারকারী বৈশিষ্ট্য নিয়ে কাজ করতে হবে।

ব্যক্তিগতকরণ-সংক্রান্ত বিবরণ event_params ফিল্ডে সংরক্ষিত থাকে এবং নিম্নলিখিত সারণিতে তা বর্ণনা করা হয়েছে:

প্যারামিটার ডেটা টাইপ বর্ণনা
ব্যক্তিগতকরণ_আইডি স্ট্রিং নির্ধারিত ব্যক্তিগতকরণের সার্বজনীনভাবে অনন্য শনাক্তকারী (UUID) প্রদান করে।
দল স্ট্রিং ব্যবহারকারীকে পার্সোনালাইজেশন গ্রুপ (P13N) নাকি বেসলাইন (BASELINE) গ্রুপে অন্তর্ভুক্ত করা হয়েছে, তা নির্দেশ করে।
arm_index পূর্ণসংখ্যা এটি ব্যবহারকারীকে নির্ধারিত বিকল্প মান, যা ০ থেকে ৪-এর মধ্যে একটি পূর্ণসংখ্যা।
arm_key স্ট্রিং ব্যক্তিগতকরণের জন্য ব্যবহৃত প্যারামিটারের নাম ধারণ করে।
arm_value স্ট্রিং ব্যক্তিগতকরণের মাধ্যমে নির্ধারিত বিকল্প মান স্ট্রিং ধারণ করে।
নিযুক্ত_সেশন_ইভেন্ট পূর্ণসংখ্যা ব্যবহারকারী যেসব সেশনে যুক্ত আছেন, তার সংখ্যা অন্তর্ভুক্ত। আরও তথ্যের জন্য ‘সেশন সম্পর্কে’ দেখুন।
ফায়ারবেস_ইভেন্ট_অরিজিন স্ট্রিং ইভেন্টের উৎস নির্দেশ করে। personalization_assignment ইভেন্টগুলোর ক্ষেত্রে এটি সর্বদা fp হবে।
firebase_screen_class স্ট্রিং ব্যক্তিগতকরণ নির্ধারণ সংঘটিত হওয়ার সময় ব্যবহারকারী যে স্ক্রিনে সক্রিয় ছিলেন, সেই স্ক্রিনের ক্লাস নামটি প্রদান করে। আরও তথ্যের জন্য ‘স্বয়ংক্রিয়ভাবে সংগৃহীত ইভেন্টসমূহ’ দেখুন।
firebase_screen_id পূর্ণসংখ্যা ব্যক্তিগতকরণ নির্ধারণ করার সময় ব্যবহারকারী যে স্ক্রিনে ছিলেন, তার আইডি প্রদর্শন করে। আরও তথ্যের জন্য ‘স্বয়ংক্রিয়ভাবে সংগৃহীত ইভেন্টসমূহ’ দেখুন।
প্রথম_খোলার_সময় স্ট্রিং ব্যবহারকারী প্রথমবার অ্যাপটি খোলার সময়কার টাইমস্ট্যাম্প, ইউটিসি মিলিসেকেন্ডে, প্রদান করে। আরও তথ্যের জন্য ‘স্বয়ংক্রিয়ভাবে সংগৃহীত ইভেন্টসমূহ’ দেখুন।
ga_session_id পূর্ণসংখ্যা Google Analytics সেশন আইডি প্রদান করে। আরও তথ্যের জন্য ‘সেশন সম্পর্কে’ দেখুন। personalization_assignment ইভেন্টটিকে অন্যান্য Analytics ইভেন্টের সাথে সম্পর্কযুক্ত করতে আপনি এটি ব্যবহার করতে পারেন।
ga_session_number পূর্ণসংখ্যা Google Analytics সেশন নম্বর প্রদান করে। আরও তথ্যের জন্য ‘সেশন সম্পর্কে’ দেখুন।

উদাহরণ কোয়েরি

personalization_assignment ইভেন্টগুলো থেকে ব্যক্তিগতকরণ-নির্দিষ্ট প্যারামিটারগুলো বের করার জন্য আপনি নিচের মতো একটি SQL স্টেটমেন্ট ব্যবহার করতে পারেন:

    # Expand nested personalization parameters
    SELECT
     timestamp_micros(event_timestamp) AS event_time,
     user_pseudo_id,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'group'
     ) AS personalization_group,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'personalization_id'
     ) AS personalization_id,
     (
       SELECT event_params.value.string_value,
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'arm_key'
     ) AS arm_key,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'arm_value'
     ) AS arm_value,
     (
       SELECT event_params.value.int_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'ga_session_id'
     ) AS ga_session_id,
    FROM `PROJECT_NAME.analytics_ANALYTICS_ACCOUNT_ID.events_DATE_SHARD`
    WHERE event_name = 'personalization_assignment'
    LIMIT 10