Lesson 1Supporting dimension tables: provider, location, facility, code lookupsThis section explains supporting dimension tables such as provider, location, facility, and code lookups. It covers hierarchies, slowly changing attributes, and how well‑designed dimensions improve filtering, grouping, and drill‑down analyses.
Provider and specialty dimensionsLocation and facility hierarchiesClinical code and value set lookupsManaging slowly changing dimensionsLesson 2Encounter/Visit entity: admit/arrival, discharge, visit type and timestampsThis section describes the encounter or visit entity, including admission, arrival, discharge, visit type, and timestamps. It covers linking encounters to patients, locations, and payers, and supports length‑of‑stay and throughput metrics.
Encounter types and classificationsAdmission, transfer, and discharge timesLinking encounters to patientsVisit grouping and episode logicLesson 3Canonical patient entity: identifiers, demography, merges and survivorshipThis section defines a canonical patient entity for analytics, covering identifiers, demographics, merges, and survivorship rules. It explains mastering across sources, handling duplicates, and preserving historical identity changes safely.
Core patient identifiers and keysDemographic attributes for analyticsPatient matching and merge logicSurvivorship and source precedenceLesson 4Procedures and orders entities: procedure codes, order IDs, performing providerThis section covers modelling procedures and orders, including procedure codes, order identifiers, and performing providers. It explains linking orders to results, scheduling, and status, while supporting utilization, quality, and throughput analytics.
Order header and line item structureProcedure and order coding standardsLinking orders, procedures, and resultsOrder status, timing, and priorityLesson 5Keys and relationships: patient_id, encounter_id, result linking and referential integrityThis section details how patient, encounter, and result keys maintain referential integrity across clinical datasets. It covers natural versus surrogate keys, cascading rules, and strategies for handling late‑arriving or corrected records.
Patient and encounter key designResult and order linkage patternsSurrogate keys vs natural identifiersCascades, deletes, and orphan recordsLesson 6Diagnoses and problem list entities: fields, code system, severity, onset and resolutionThis section focuses on diagnoses and problem list entities, including fields for codes, status, severity, onset, and resolution. It addresses coding systems, chronic versus acute problems, and handling revisions or inactivation over time.
Core diagnosis and problem fieldsICD, SNOMED, and other code systemsOnset, resolution, and episode timingActive, historical, and resolved problemsLesson 7Lab result entity design: test code, specimen, collection time, result value, units, reference range, statusThis section details lab result entity design, including test codes, specimens, collection times, values, units, reference ranges, and statuses. It addresses abnormal flags, panels, and handling corrected or repeated results for analytics.
Test, panel, and component structureSpecimen type and collection detailsResult value, units, and reference rangeResult status, flags, and correctionsLesson 8Schematic examples: star schema for analytics and entity relationship mappingThis section introduces star schemas for clinical analytics and contrasts them with entity‑relationship diagrams. Learners see how facts, dimensions, and relationships map to EHR concepts and support performant analytic queries.
Clinical fact and dimension tablesStar vs snowflake in healthcareMapping EHR entities to factsBridging many‑to‑many clinical linksLesson 9Principles of analytics data modelling vs transactional modellingThis section compares analytic and transactional data models in healthcare. It explains normalization, denormalization, query patterns, and workload characteristics, guiding choices that balance performance, flexibility, and data quality.
OLTP vs OLAP workloads in EHRsNormalization and denormalization tradeoffsSlowly changing clinical attributesModeling for longitudinal patient views