পাঠ 1বিশ্লেষণের জন্য ডাইমেনশনাল মডেল ডিজাইন: ফ্যাক্ট এবং ডাইমেনশন ম্যাপিংবিশ্লেষণের জন্য ডাইমেনশনাল মডেলিং অন্বেষণ করুন। আপনি ব্যবসায়িক প্রক্রিয়াগুলোকে ফ্যাক্ট টেবিলে ম্যাপ করবেন, ডাইমেনশন এবং গ্রেইন সংজ্ঞায়িত করবেন, ম্যানি-টু-ম্যানি সম্পর্কগুলো পরিচালনা করবেন এবং স্ব-সেবা BI এবং দক্ষ ক্যোয়ারি সমর্থনকারী স্কিমা ডিজাইন করবেন।
ব্যবসায়িক প্রক্রিয়া এবং ফ্যাক্ট চিহ্নিতকরণফ্যাক্ট টেবিলের গ্রেইন নির্বাচনকনফর্মড ডাইমেনশন ডিজাইনম্যানি-টু-ম্যানি সম্পর্ক পরিচালনাস্টার বনাম স্নোফ্লেক স্কিমা ট্রেড-অফপাঠ 2fact_user_activity: স্কিমা ফিল্ডসমূহ (event_id, user_id, course_id, event_type, timestamp, duration, device, session_id, ingestion_metadata) আচরণগত বিশ্লেষণের জন্য fact_user_activity টেবিল মডেল করুন। আমরা প্রতিটি ফিল্ড সংজ্ঞায়িত করব, ইভেন্ট গ্রেইন নির্বাচন করব, সেশন এবং ডিভাইস ধরে রাখব, ইনজেশন মেটাডেটা সংরক্ষণ করব এবং ফানেল, এংগেজমেন্ট এবং রিটেনশন রিপোর্টিং সমর্থন করব।
ইভেন্ট-লেভেল গ্রেইন সংজ্ঞায়িতকরণevent_type এবং ট্যাক্সোনমি মডেলিংসেশন এবং ডিভাইস অ্যাট্রিবিউশনingestion_metadata ফিল্ড ব্যবহারফানেল এবং রিটেনশন সমর্থনপাঠ 3উদ্ভূত মেট্রিক্স এবং একত্রীকরণ: দৈনিক সক্রিয় ব্যবহারকারী (DAU), কোর্সপ্রতি সক্রিয় ব্যবহারকারী, দেশভিত্তিক কোর্স সম্পন্ন হার, কোর্স এবং কোহর্টভিত্তিক আয়ফ্যাক্ট টেবিল থেকে উদ্ভূত মেট্রিক্স এবং একত্রীকরণ তৈরি করতে শিখুন। আমরা DAU, কোর্সপ্রতি কার্যকলাপ, সম্পন্ন হার এবং কোহর্ট আয় গণনা করব, পুনরুৎপাদনযোগ্য সংজ্ঞা এবং দক্ষ ম্যাটেরিয়ালাইজেশন প্যাটার্নের উপর জোর দেব।
DAU এবং MAU সামঞ্জস্যপূর্ণ সংজ্ঞায়িতকরণকোর্সপ্রতি সক্রিয় ব্যবহারকারী মেট্রিক্সসেগমেন্ট এবং দেশভিত্তিক সম্পন্ন হারকোর্স এবং কোহর্টভিত্তিক আয়ওয়্যারহাউসে একত্রীকরণ ম্যাটেরিয়ালাইজ করাপাঠ 4ধীরগতির পরিবর্তনশীল ডাইমেনশন (SCD Type 1/2) এবং টাইম-ট্রাভেল/ভার্সনিং পরিচালনাধীরগতির পরিবর্তনশীল ডাইমেনশন এবং টাইম-ট্রাভেল পরিচালনা করতে শিখুন। আমরা SCD Type 1 এবং Type 2 তুলনা করব, কার্যকর তারিখের পরিসর ডিজাইন করব, ভার্সন মেটাডেটা সংরক্ষণ করব এবং ঐতিহাসিক ডাইমেনশন স্টেট ক্যোয়ারি করতে ওয়্যারহাউস ফিচার ব্যবহার করব।
SCD Type 1 বনাম Type 2 কখন ব্যবহার করবেনকার্যকর তারিখ এবং বর্তমান ফ্ল্যাগSQL এবং dbt তে SCD বাস্তবায়নওয়্যারহাউস টাইম-ট্রাভেল ফিচার ব্যবহারঐতিহাসিক ডাইমেনশন সঠিকতা পরীক্ষাপাঠ 5ডেটা তাজাতা এবং প্রায়-বাস্তবসময় KPI-এর জন্য উইন্ডোয়িং কৌশলপ্রায়-বাস্তবসময় KPI-এর জন্য তাজাতা কৌশল ডিজাইন করুন। আমরা লেটেন্সি বাজেট, ওয়াটারমার্কিং, স্ট্রিমিং মেট্রিকের জন্য উইন্ডোয়িং, দেরিতে আগত ডেটা পরিচালনা এবং ড্যাশবোর্ডগুলোকে নির্ভরযোগ্য ও কার্যকর রাখতে তাজাতা পর্যবেক্ষণ কভার করব।
তাজাতা এবং লেটেন্সি টার্গেট সংজ্ঞায়িতকরণওয়াটারমার্ক এবং দেরি ডেটা পরিচালনাটাম্বলিং, স্লাইডিং এবং সেশন উইন্ডোপ্রায়-বাস্তবসময় KPI গণনাতাজাতা পর্যবেক্ষণ এবং অ্যালার্টপাঠ 6ডেটা পরিষ্কারকরণ ধাপ: পার্সিং, টাইপ জোর্সন, টাইমস্ট্যাম্প নরমালাইজেশন, ডেডুপ্লিকেশন, সমৃদ্ধিকরণমডেলিংয়ের আগে কাঁচা ডেটা পদ্ধতিগতভাবে পরিষ্কার করতে শিখুন। আমরা আধা-গঠিত ফিল্ড পার্সিং, ডেটা টাইপ জোর্সন, সময় অঞ্চল জুড়ে টাইমস্ট্যাম্প নরমালাইজেশন, রেকর্ড ডেডুপ্লিকেট করা এবং রেফারেন্স ও লুকআপ ডেটা দিয়ে ডেটাসেট সমৃদ্ধ করা কভার করব।
JSON, CSV এবং নেস্টেড ফিল্ড পার্সিংটাইপ জোর্সন এবং স্কিমা যাচাইটাইমজোন নরমালাইজেশন এবং স্ট্যান্ডার্ডরেকর্ড ডেডুপ্লিকেশন কৌশলসমৃদ্ধির জন্য রেফারেন্স ডেটা জয়েনপাঠ 7dim_course: স্কিমা ফিল্ডসমূহ (course_id, title, author_id, category, price, published_date)কোর্স বিশ্লেষণ সমর্থনের জন্য dim_course ডাইমেনশন ডিজাইন করুন। আমরা প্রতিটি ফিল্ড সংজ্ঞায়িত করব, সারোগেট কী নিয়ে আলোচনা করব, মূল্য নির্ধারণ এবং বিভাগ পরিবর্তন পরিচালনা করব এবং নির্ভুল ঐতিহাসিক এবং ক্যাটালগ রিপোর্টিং সক্ষম করতে প্রকাশনার তারিখ মডেল করব।
প্রতিটি dim_course ফিল্ডের ব্যবসায়িক অর্থন্যাচারাল কী বনাম সারোগেট course_idকোর্স মূল্য এবং বিভাগ পরিবর্তন পরিচালনাপ্রকাশিত এবং অপ্রকাশিত স্টেট মডেলিংBI ক্যোয়ারির জন্য dim_course ইনডেক্সিংপাঠ 8dim_user: স্কিমা ফিল্ডসমূহ (user_id, email_hash, signup_date, country, subscription_status, cohort)ব্যবহারকারী বিশ্লেষণ এবং সেগমেন্টেশনের জন্য dim_user ডাইমেনশন ডিজাইন করুন। আমরা প্রতিটি ফিল্ড সংজ্ঞায়িত করব, সংবেদনশীল ডেটা হ্যাশ করব, সাইনআপ এবং কোহর্ট ট্র্যাক করব এবং গ্রোথ, রিটেনশন এবং মনিটাইজেশন রিপোর্টিং সমর্থনের জন্য সাবস্ক্রিপশন স্ট্যাটাস মডেল করব।
ব্যবহারকারী পরিচয়কারী এবং সারোগেট কীইমেইল হ্যাশিং এবং গোপনীয়তা নিয়ন্ত্রণsignup_date এবং কোহর্ট মডেলিংসাবস্ক্রিপশন_স্ট্যাটাস লাইফসাইকেলদেশ এবং লোকালাইজেশন অ্যাট্রিবিউটপাঠ 9রূপান্তর প্যাটার্ন: ELT বনাম ETL, অগ্রগতিশীল রূপান্তর, ব্যাচ বনাম স্ট্রিম রূপান্তরমূল রূপান্তর প্যাটার্ন এবং সেগুলো কখন প্রয়োগ করবেন তা বুঝুন। আমরা ETL এবং ELT তুলনা করব, অগ্রগতিশীল পাইপলাইন ডিজাইন করব এবং খরচ, লেটেন্সি, পর্যবেক্ষণীয়তা এবং অপারেশনাল ট্রেড-অফের উপর ফোকাস করে ব্যাচ এবং স্ট্রিমিং রূপান্তরের তুলনা করব।
ETL এবং ELT আর্কিটেকচার তুলনাঅগ্রগতিশীল রূপান্তর ডিজাইনব্যাচ প্রসেসিংয়ের সুবিধা-অসুবিধাস্ট্রিমিং এবং মাইক্রো-ব্যাচ প্যাটার্নSLA এবং খরচ অনুসারে প্যাটার্ন নির্বাচনপাঠ 10রূপান্তরের জন্য টুলস: dbt, Spark/Databricks, Beam/Flink, SQL-ভিত্তিক রূপান্তর ফ্রেমওয়ার্কমূল রূপান্তর টুলস এবং সেগুলোর মধ্যে কীভাবে নির্বাচন করবেন তা জরিপ করুন। আমরা dbt, Spark, Databricks, Beam, Flink এবং SQL ফ্রেমওয়ার্ক তুলনা করব, স্কেলেবিলিটি, অর্কেস্ট্রেশন, টেস্টিং এবং আধুনিক ডেটা স্ট্যাকের সাথে ইন্টিগ্রেশনের উপর ফোকাস করে।
SQL-কেন্দ্রিক রূপান্তরের জন্য dbtবড় ডেটার জন্য Spark এবং Databricksস্ট্রিমিং জবের জন্য Beam এবং FlinkSQL-ভিত্তিক রূপান্তর ফ্রেমওয়ার্কটুল নির্বাচনের মানদণ্ড এবং ট্রেড-অফপাঠ 11fact_payments: স্কিমা ফিল্ডসমূহ (payment_id, user_id, course_id, amount, currency, payment_method, status, timestamp, invoice_id)আয় বিশ্লেষণের জন্য fact_payments টেবিল মডেল করুন। আমরা প্রতিটি ফিল্ড সংজ্ঞায়িত করব, আইডেম্পোটেন্ট ইনজেশন নিয়ে আলোচনা করব, মুদ্রা পরিচালনা, পেমেন্ট স্ট্যাটাস, রিফান্ড এবং ডাউনস্ট্রিম রিপোর্টিংয়ের জন্য পেমেন্টগুলোকে ব্যবহারকারী, কোর্স এবং ইনভয়েসের সাথে লিঙ্ক করব।
fact_payments এর গ্রেইন এবং প্রাইমারি কীপেমেন্ট স্ট্যাটাস এবং লাইফসাইকেল মডেলিংমাল্টি-মুদ্রা পরিমাণ পরিচালনাপেমেন্টগুলোকে ব্যবহারকারী এবং কোর্সের সাথে লিঙ্করিফান্ড এবং চার্জব্যাক ধরা