AXV

Data Mart

Data Mart, VIEW, sohaga oid martlar, conformed dimension

10-sinfBI & ML5-hafta · 15-dars

Bugun nimalarni o'rganamiz?

Data Mart nima?

Soha uchun qulay qism

VIEW mart

Tayyor ko'rinish

Sohaga oid martlar

Yuklama va toifalar

Takrorlash

Yillik holat o'lchovi (oquvchilar_soni) yillar bo'yicha SUM qilinmaydi. U qaysi turdagi o'lchov?

Vaqt bo'yicha jamlanmaydi, hududlar bo'yicha jamlanadi.
01

Data Mart nima?

Soha uchun qulay qism

Ombordan martga

Manba Star Schema(DWH) Data Mart BI hisobot Mart — foydalanuvchiga tayyor qism

Mart ta'rifi (hujjat)


Mart nomi:   mart_oquvchilar
Maqsadi:     hududlar va yillar bo'yicha o'quvchilar soni
Foydalanuvchi: rahbariyat, BI tahlilchi
Manba:       fact_kpi, dim_hudud, dim_sana
Yangilanish: har yilgi yuklashdan keyin
  
Har mart uchun hujjat: nomi, maqsadi, foydalanuvchi, manba va yangilanish davri.

Mini-test

Data Mart nima?

Mart — mavzuga yo'naltirilgan, foydalanuvchiga tayyor qism.
02

VIEW mart

Tayyor ko'rinish

VIEW qanday ishlaydi

CREATE VIEW SELECTsaqlanadi Murojaat: SELECT* FROM mart So'rov qaytabajariladi VIEW ma'lumotni saqlamaydi, so'rovni saqlaydi

mart_oquvchilar


CREATE VIEW mart_oquvchilar AS
SELECT h.nomi   AS hudud,
       s.yil    AS yil,
       f.oquvchilar_soni AS oquvchilar
FROM fact_kpi f
JOIN dim_hudud h ON h.hudud_key = f.hudud_key
JOIN dim_sana  s ON s.sana_key  = f.sana_key;

SELECT * FROM mart_oquvchilar WHERE yil = 2024 ORDER BY oquvchilar DESC;
  
Tahlilchi endi bitta oddiy SELECT yozadi. 2024-yil: Samarqand 620000, Farg'ona 585000, Andijon 524000, Toshkent 485000, Buxoro 312000.

Mini-test

VIEW ma'lumotni saqlaydimi?

Murojaat qilinganda so'rov qayta bajariladi.
03

Sohaga oid martlar

Yuklama va toifalar

Bitta ombor, ko'p mart

fact_kpi mart_oquvchilar mart_yuklama BI dashboard Umumiy dimension lar martlarni mos tutadi

mart_yuklama


CREATE VIEW mart_yuklama AS
SELECT h.nomi AS hudud,
       s.yil  AS yil,
       ROUND(1.0 * f.oquvchilar_soni / f.oqituvchilar_soni, 2) AS nisbat,
       CASE WHEN 1.0 * f.oquvchilar_soni / f.oqituvchilar_soni > 14 THEN 'Yuqori'
            WHEN 1.0 * f.oquvchilar_soni / f.oqituvchilar_soni > 13 THEN 'O''rta'
            ELSE 'Normal' END AS toifa
FROM fact_kpi f
JOIN dim_hudud h ON h.hudud_key = f.hudud_key
JOIN dim_sana  s ON s.sana_key  = f.sana_key;
  
2024: Toshkent 15.16 (Yuqori); Andijon 13.58, Farg'ona 13.15, Buxoro 13.05 (O'rta); Samarqand 12.92 (Normal).

Mini-test

mart_yuklama da nega 1.0 * yoziladi?

7 / 2 = 3, 1.0 * 7 / 2 = 3.5.

VIEW mart va jadval mart

VIEW

Doim yangi ma'lumot, joy egallamaydi, har safar so'rov ishlaydi
VS

Jadval (CREATE TABLE AS)

Tez o'qiladi, lekin yangilab turish kerak

Kichik hajmda VIEW qulay; katta hajmda jadval mart.

Atamalar. Bosing

Data Mart

bosing

Soha uchun mo'ljallangan analitik qism

DWH

bosing

Butun tashkilot uchun markaziy ombor

Conformed dimension

bosing

Martlar o'rtasida umumiy dimension

VIEW

bosing

Saqlangan SELECT so'rovi

Mart yaratish bosqichlari

1. Foydalanuvchi

Mart kimga va qaysi savol uchun?

2. Ustunlar

Faqat kerakli ustunlar, tushunarli nomlar.

3. Hujjat

Nomi, maqsadi, manba, yangilanish.

DWH va Data Mart

XususiyatDWHData Mart
Qamrovbutun tashkilotbitta soha
Hajmkattakichikroq
Foydalanuvchimuhandis, tahlilchisoha mutaxassisi
Murakkablikyuqorisodda
Misolfact_kpi + dim larmart_yuklama

Pastga bosing: mart yaratish qoidalari

Yaxshi mart qoidalari

  1. Ustun nomlari tushunarli va bir xil (hudud, yil).
  2. Faqat shu soha uchun kerakli ustunlar ochiladi.
  3. Mart hujjatlashtiriladi va umumiy dimension lardan foydalanadi.

VIEW yaratamiz


SELECT h.nomi, s.yil, f.oquvchilar_soni
FROM fact_kpi f
JOIN dim_hudud h ON h.hudud_key = f.hudud_key
JOIN dim_sana s ON s.sana_key = f.sana_key;
  

VIEW yaratamiz


CREATE VIEW mart_oquvchilar AS
SELECT h.nomi AS hudud, s.yil AS yil, f.oquvchilar_soni AS oquvchilar
FROM fact_kpi f
JOIN dim_hudud h ON h.hudud_key = f.hudud_key
JOIN dim_sana s ON s.sana_key = f.sana_key;
  

Martlar raqamlarda

0
mart: oquvchilar va yuklama
0
har martdagi qator
0
toifa: Yuqori, O'rta, Normal

Ikki mart bitta ombordan olinadi.

Amaliy topshiriq 20 daqiqa

OsonMart ta'rifi: mart_oquvchilar uchun 1 paragrafli ta'rif yozing: nomi, maqsadi, foydalanuvchi, manba.
O'rtamart_oquvchilar: VIEW yarating va 2024-yil o'quvchilarini kamayish tartibida chiqaring.
Qiyinmart_yuklama: Nisbat va CASE WHEN toifali mart_yuklama yarating; 2024-yil uchun toifalar bo'yicha hududlar sonini toping.
Bonus5 ta analitik so'rov: Martlardan 5 ta so'rov yozing, kamida 2 tasi GROUP BY bilan.

Dars xulosasi

Data Mart

Soha uchun mo'ljallangan analitik qism.

VIEW

Saqlangan SELECT: murakkablikni yashiradi.

Hujjat

Mart nomi, maqsadi, foydalanuvchi, manba.

Uyga vazifa: o'z soha martingizni yaratish va 5 ta so'rov yozish.

Keyingi dars: SCD va surrogate kalitlar

Sekin o'zgaruvchi o'lchamlar: Type 1 va Type 2

6-hafta · 16-dars