SCD Type 1 va Type 2, surrogate kalit, tarix saqlash, joriy qator
10-sinfBI & ML6-hafta · 16-darsDimension o'zgaradi
Tarix saqlash
Nega kerak
VIEW ma'lumotni saqlaydimi?
Dimension o'zgaradi
UPDATE dim_maktab
SET direktor = 'B. Aliyev'
WHERE maktab_id = 101;
-- Natija: faqat 'B. Aliyev'. 'A. Karimov' yo'q bo'ldi.
Type 1 da eski qiymatga nima bo'ladi?
Tarix saqlash
UPDATE dim_maktab
SET tugadi = '2024-09-01', joriy = 0
WHERE maktab_id = 101 AND joriy = 1;
INSERT INTO dim_maktab (maktab_id, nomi, direktor, boshlandi, tugadi, joriy)
VALUES (101, '5-maktab', 'B. Aliyev', '2024-09-01', '9999-12-31', 1);
Type 2 da joriy qatorni qaysi ustun ko'rsatadi?
joriy bayrog'i va tugadi = 9999-12-31.Nega kerak
SELECT m.direktor, f.yil, f.oquvchilar
FROM fakt f
JOIN dim_maktab m ON m.maktab_key = f.maktab_key
ORDER BY f.yil;
-- A. Karimov | 2023 | 640
-- B. Aliyev | 2024 | 655
WHERE joriy = 1 yozing, aks holda bir maktab bir necha marta chiqadi.Type 2 da birlamchi kalit nima?
Tarix kerak bo'lsa — Type 2.
Sekin o'zgaruvchi dimension
Yangi qator bilan tarix saqlash
Omborning sun'iy kaliti
Manbadagi identifikator
Tarix hisobotga kerakmi?
Yo'q: Type 1; ha: Type 2.
JOIN bilan eski yilni tekshiring.
| Belgi | Type 1 | Type 2 |
|---|---|---|
| Tarix | yo'q | bor |
| Qator | bitta | versiya bo'yicha |
| Murakkablik | oddiy | o'rtacha |
| Qachon | xatoni tuzatish | tarix muhim bo'lsa |
| Kalit | natural yetadi | surrogate shart |
Pastga bosing: tekshirish
dim_maktab ga bitta qator qo'shing.
UPDATE dim_maktab SET direktor = 'B. Aliyev'
WHERE maktab_id = 101;
UPDATE dim_maktab SET tugadi = '2024-09-01', joriy = 0
WHERE maktab_id = 101 AND joriy = 1;
INSERT INTO dim_maktab (...) VALUES (...);
Type 2 da har natural kalitga bitta joriy qator.
dim_maktab ni yarating.B. Aliyev ga o'zgartiring.2024-09-01 sanasida almashtiring.fakt bilan JOIN qilib har yil direktorini chiqaring.Type 1 — ustiga yozish; Type 2 — yangi qator.
boshlandi, tugadi, joriy; UPDATE + INSERT.
Surrogate kalit versiyani ajratadi.
Uyga vazifa: direktor almashinuvi uchun Type 1 va Type 2.
tushuncha, arxitektura, afzalliklari
6-hafta · 17-dars