Lecția 1Obiecte magazin și locație: Store_ID, Store_Name, Region, Country, ChannelDefiniți obiectele de dimensiune magazin și locație pentru analiza retail. Învățați cum să modelați identificatorii de magazin, nume, regiuni, țări și canale, și cum aceste atribute susțin raportarea performanței geografice și pe canale.
Store_ID as the store business keyStore_Name standards and cleansingRegion and country hierarchiesChannel classification and mappingLocation attributes for filteringLecția 2Chei, join-uri și alias-uri: tehnici pentru dimensiuni conforme și multiple join-uri la aceeași tabelăModelați cheile, join-urile și alias-urile pentru a suporta dimensiuni conforme. Învățați cum să uniți dimensiuni partajate cu multiple fapte, să evitați buclele și să utilizați alias-uri de tabele pentru a reprezenta roluri sau căi diferite în schema universului.
Natural versus surrogate keys in designInner and outer join choicesCreating and using table aliasesResolving join loops with contextsValidating join paths with sample queriesLecția 3Obiecte univers de bază: Sales_Revenue (sum), Units_Sold (sum), Gross_Margin (sum), Discount_Amount (sum)Proiectați măsurători de fapt vânzări de bază pe care utilizatorii le folosesc. Învățați cum să modelați veniturile, unitățile, marja și reducerile ca măsurători aditive, să definiți comportamentul de agregare și să documentați regulile de afaceri din spatele fiecărei metrici în univers.
Business definition of Sales_RevenueUnits_Sold measure and aggregation rulesGross_Margin calculation and validationDiscount_Amount sourcing and logicMeasure formatting and number scalingLecția 4Obiecte derivate și calculate: variabile pentru Margin_Pct, Stock_Turnover, Days_of_Inventory, Slow_Mover_FlagCreați obiecte derivate și calculate care încapsulează logica de afaceri. Învățați cum să construiți procentul marjei, rotația stocului, zilele de inventar și indicatoarele de mișcări lente menținând formulele ușor de întreținut și bine documentate.
Margin_Pct formula and rounding rulesStock_Turnover calculation optionsDays_of_Inventory business definitionSlow_Mover_Flag thresholds and logicValidating derived metrics with samplesLecția 5Obiecte univers suplimentare: Selling_Price (detail), Cost_of_Goods_Sold (detail), Stock_Level (snapshot), Stock_Value (calculated)Modelați măsurători suplimentare de detaliu și snapshot care îmbogățesc analiza. Învățați cum să expuneți prețul de vânzare, costul bunurilor vândute, nivelul de stoc și valoarea stocului, și înțelegeți când să utilizați obiecte de detaliu versus agregate în rapoarte.
Selling_Price as a detail objectCost_of_Goods_Sold sourcing and rulesStock_Level as a snapshot measureStock_Value as a calculated measureChoosing detail versus aggregated objectsLecția 6Gestionarea multiplor tabele de fapt: tipuri join, contexte și alias-uri pentru prevenirea capcanelor fan și chasmGestionați în siguranță multiple tabele de fapt într-un singur univers. Învățați strategii de join, contexte și alias-uri pentru a evita capcanele fan și chasm, asigurând că rapoartele combinate vânzări și stoc returnează rezultate precise, neduplicate.
Identifying fan and chasm trap patternsJoin strategies for multiple fact tablesUsing contexts to isolate fact combinationsAliases to separate incompatible joinsTesting combined sales and stock queriesLecția 7Obiecte dimensiune: Product_ID, SKU, Product_Category, Product_Subcategory, BrandProiectați obiecte de dimensiune produs robuste pentru analiză. Învățați cum să expuneți ID-urile, SKU-urile, categoriile, subcategoriile și mărcile, să gestionați atribute schimbătoare lent și să asigurați rollup-uri consistente ale produselor în toate tabelele de fapt.
Product_ID as primary business keySKU granularity and uniquenessProduct_Category hierarchy designProduct_Subcategory relationshipsBrand attributes and reporting useLecția 8Evitarea dublelor numărări: definirea grain clar, utilizarea contextelor aggregate-aware, explicație măsurători semi-aditiveÎnțelegeți cum să preveniți dublele numărări în rapoartele agregate. Învățați să definiți un grain clar al faptelor, să utilizați obiecte și contexte aggregate-aware și să gestionați corect măsurătorile semi-aditive precum stocurile și soldurile în timp.
Defining a clear and consistent fact grainAggregate-aware measures and objectsDesigning and using universe contextsSemi-additive measures across timeTesting reports for hidden double countingLecția 9Obiecte timp: Calendar_Date, Fiscal_Year, Fiscal_Period, Week, Month_To_Date_FlagProiectați obiecte de dimensiune timp pentru analiza flexibilă pe perioade. Învățați cum să expuneți datele calendaristice, anii fiscali, perioadele fiscale, săptămânile și indicatoare precum month-to-date, permițând filtre și comparații consistente bazate pe timp.
Calendar_Date as the base time keyFiscal_Year and Fiscal_Period mappingWeek and month attributes for groupingMonth_To_Date_Flag logic and usageHandling holidays and special periodsLecția 10Grain fapt și modelare: definirea fapt vânzări nivel tranzacție vs fapt snapshot stoc, implicații grainDefiniți și documentați grain-ul faptelor pentru fiecare tabel. Învățați diferența dintre faptele vânzări la nivel de tranzacție și faptele snapshot stoc, și cum alegerile de grain afectează agregările, căile de drill și performanța rapoartelor.
Transaction-level sales fact definitionStock snapshot fact grain and timingGrain alignment across related factsImpact of grain on aggregationsDocumenting grain for report designersLecția 11Identificarea domeniilor de subiect: fapt vânzări, fapt stoc, master produs, master magazin, dimensiune calendarDefiniți domeniile de subiect de afaceri care conduc proiectarea universului. Învățați cum datele vânzări, stoc, produs, magazin și calendar se mapează la tabele de fapt și dimensiune, și cum această separare susține raportarea flexibilă și consistentă.
Sales fact subject area definitionStock fact subject area definitionProduct master as a conformed dimensionStore master and location coverageCalendar dimension business requirementsLecția 12Câmpuri audit și lineage: Data_Source, Load_Timestamp, Record_Status pentru depanare și reconciliereIntroduceți câmpuri de audit și lineage în univers. Învățați cum Data_Source, Load_Timestamp și Record_Status susțin depanarea, reconcilierea și încrederea utilizatorilor, și cum să le expuneți fără a confunda utilizatorii finali.
Purpose of Data_Source in reportingUsing Load_Timestamp for recency checksRecord_Status for active or deleted rowsDesigning audit objects for power usersReconciliation techniques using audit data