Thuta Learning
ရှာဖွေရန်
ProjectsData & Databasesbeginner

Project 4 — Search နှင့် Analytics

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

ဒီခန်းပြီးရင် ဘာတတ်သွားမလဲ

  • Project 4 — Search နှင့် Analytics concept ကို နားလည်ရှင်းပြနိုင်ရန်
  • နမူနာ SQL/command ကို ကိုယ်တိုင် run ပြီး output စစ်နိုင်ရန်
  • Tutorial Platform project နှင့် production scenario တွင် အသုံးချနိုင်ရန်

နားလည်ထားရမယ့် အချက်

Feature တစ်ခုကို table/query တစ်ခုတည်းနဲ့မပြီးဘဲ latency၊ freshness၊ index cost နဲ့ refresh ownership ကိုသတ်မှတ်ရပါတယ်။ Search API အတွက် rank+stable tie-breaker pagination၊ analytics အတွက် event table + rollup view တည်ဆောက်မယ်။ Exact product metric definition ကို SQL comment/documentation ထဲမှတ်တမ်းတင်ပါ။

လက်တွေ့ scenario နဲ့ ချိတ်ကြည့်မယ်

Daily active learners၊ completions နဲ့ average completion percentage ကို materialized view ထဲသိမ်းပြီး scheduled refresh လုပ်မယ်။ Search query အတွက် explain plan၊ top queries evaluation set နဲ့ no-result rate ကိုစောင့်ကြည့်မယ်။

အတူတူ စမ်းရေးကြည့်မယ်

sql
CREATE MATERIALIZED VIEW app.daily_learning_metrics AS
SELECT date_trunc('day', completed_at) AS day,
       count(DISTINCT enrollment_id) AS active_learners,
       count(*) AS lessons_completed
FROM app.lesson_progress
WHERE completed = true
GROUP BY 1;

CREATE UNIQUE INDEX daily_learning_metrics_day_uidx
  ON app.daily_learning_metrics (day);

REFRESH MATERIALIZED VIEW CONCURRENTLY app.daily_learning_metrics;
You should see
Dashboard အတွက် concurrently refresh လုပ်နိုင်သော daily metrics source ရမည်။

၅ မိနစ် စမ်းကြည့်

Course တစ်ခုစီ weekly completions report ရေးပြီး timezone boundary ကိုဘယ်လိုသတ်မှတ်မလဲ document လုပ်ပါ။

သတိလေးတစ်ချက်

Metric name တူပေမယ့် timezone၊ bot/internal users နှင့် late data rule မတူရင် dashboard နှစ်ခုအဖြေကွာနိုင်ပါတယ်။

PostgreSQL — Materialized ViewsPostgreSQL Global Development Group

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Metric name တူပေမယ့် timezone၊ bot/internal users နှင့် late data rule မတူရင် dashboard နှစ်ခုအဖြေကွာနိုင်ပါတယ်။
  • နမူနာ code ကို production data ပေါ် တိုက်ရိုက်မစမ်းဘဲ local/test database နှင့် recoverable backup ပေါ်တွင် အရင်အတည်ပြုပါ။

လေ့ကျင့်ခန်း

Course တစ်ခုစီ weekly completions report ရေးပြီး timezone boundary ကိုဘယ်လိုသတ်မှတ်မလဲ document လုပ်ပါ။

You'll know it worked when: Dashboard အတွက် concurrently refresh လုပ်နိုင်သော daily metrics source ရမည်။

Project 4 — Search နှင့် Analytics | Thuta Learning