Pelajaran 1Mereka bentuk model dimensi untuk analitik: pemetaan fakta dan dimensiTeroka pemodelan dimensi untuk analitik. Anda akan memetakan proses perniagaan kepada jadual fakta, mentakrifkan dimensi dan butir, mengendalikan hubungan banyak-ke-banyak, dan mereka bentuk skema yang menyokong BI swa-hidup dan pertanyaan berprestasi tinggi.
Mengenal pasti proses perniagaan dan faktaMemilih butir jadual faktaMereka bentuk dimensi seragamMengendalikan hubungan banyak-ke-banyakKompromi skema bintang vs kepingan saljiPelajaran 2fact_user_activity: medan skema (event_id, user_id, course_id, event_type, timestamp, duration, device, session_id, ingestion_metadata)Model jadual fact_user_activity untuk analitik tingkah laku. Kami mentakrifkan setiap medan, memilih butir acara, menangkap sesi dan peranti, menyimpan metadata penyerapan, dan menyokong corong, penglibatan, dan pelaporan pengekalan.
Mentakrifkan butir peringkat acaraMemodel event_type dan taksonomiPengaitan sesi dan perantiMenggunakan medan ingestion_metadataMenyokong corong dan pengekalanPelajaran 3Metrik terbit dan agregasi: pengguna aktif harian (DAU), pengguna aktif sesahaja kursus, kadar siap sesahaja negara, hasil sesahaja kursus dan kohortPelajari membina metrik terbit dan agregasi dari jadual fakta. Kami mengira DAU, aktiviti sesahaja kursus, kadar siap, dan hasil kohort, menekankan definisi boleh diulang dan corak materialisasi cekap.
Mentakrifkan DAU dan MAU secara konsistenMetrik pengguna aktif sesahaja kursusKadar siap mengikut segmen dan negaraHasil mengikut kursus dan kohortMaterialisasi agregat dalam gudangPelajaran 4Mengendalikan dimensi berubah perlahan (SCD Jenis 1/2) dan perjalanan masa/versiPelajari cara mengurus dimensi berubah perlahan dan perjalanan masa. Kami membandingkan SCD Jenis 1 dan Jenis 2, mereka bentuk julat tarikh berkesan, menyimpan metadata versi, dan menggunakan ciri gudang untuk pertanyaan keadaan dimensi sejarah.
Bila menggunakan SCD Jenis 1 vs Jenis 2Tarikh berkesan dan bendera semasaMelaksanakan SCD dalam SQL dan dbtMenggunakan ciri perjalanan masa gudangMenguji betul dimensi sejarahPelajaran 5Kefreshan data dan strategi windowing untuk KPI hampir masa nyataReka strategi kefreshan untuk KPI hampir masa nyata. Kami liputi bajet latensi, tanda air, windowing untuk metrik streaming, pengendalian data tiba lewat, dan pemantauan kefreshan untuk mengekalkan papan pemuka boleh dipercayai dan boleh diambil tindakan.
Mentakrifkan sasaran kefreshan dan latensiTanda air dan pengendalian data lewatTingkap berguling, gelongsor, dan sesiPengiraan KPI hampir masa nyataPemantauan dan amaran kefreshanPelajaran 6Langkah pembersihan data: pemprosesan, paksa jenis, normalisasi tera masa, nyahduplikasi, pengayaanPelajari cara membersihkan data mentah secara sistematik sebelum pemodelan. Kami liputi pemprosesan medan semi-berstruktur, menguatkuasakan jenis data, menormalkan tera masa merentasi zon masa, nyahduplikasi rekod, dan mengkaya dataset dengan data rujukan dan pandu.
Memproses JSON, CSV, dan medan bersarangPaksa jenis dan pengesahan skemaNormalisasi zon masa dan standardStrategi nyahduplikasi rekodSambungan data rujukan untuk pengayaanPelajaran 7dim_course: medan skema (course_id, title, author_id, category, price, published_date)Reka dimensi dim_course untuk menyokong analitik kursus. Kami mentakrifkan setiap medan, berbincang kunci pengganti, mengendalikan perubahan harga dan kategori, dan memodel tarikh penerbitan untuk melaporkan sejarah dan katalog yang tepat.
Maksud perniagaan setiap medan dim_courseKunci semula jadi vs pengganti course_idMengendalikan perubahan harga dan kategori kursusMemodel keadaan diterbitkan dan tidak diterbitkanIndeks dim_course untuk pertanyaan BIPelajaran 8dim_user: medan skema (user_id, email_hash, signup_date, country, subscription_status, cohort)Reka dimensi dim_user untuk analitik pengguna dan segmentasi. Kami mentakrifkan setiap medan, hash data sensitif, jejak pendaftaran dan kohort, dan model status langganan untuk menyokong pelaporan pertumbuhan, pengekalan, dan monetisasi.
Pengenal pasti pengguna dan kunci penggantiHash e-mel dan kawalan privasiMemodel tarikh pendaftaran dan kohortKitaran hidup subscription_statusAtribut negara dan lokalisasiPelajaran 9Corak transformasi: ELT vs ETL, transformasi tambahan, transformasi batch vs streamFahami corak transformasi teras dan bila menggunakannya. Kami membandingkan ETL dan ELT, mereka bentuk saluran tambahan, dan bandingkan transformasi batch dan streaming, memberi tumpuan kepada kos, latensi, kebolehlihatan, dan kompromi operasi.
Membanding seni bina ETL dan ELTMereka bentuk transformasi tambahanKelebihan dan kekurangan pemprosesan batchCorak streaming dan mikro-batchMemilih corak mengikut SLA dan kosPelajaran 10Alat untuk transformasi: dbt, Spark/Databricks, Beam/Flink, rangka kerja transformasi berasaskan SQLTinjau alat transformasi utama dan cara memilih di antara mereka. Kami membandingkan dbt, Spark, Databricks, Beam, Flink, dan rangka kerja SQL, memberi tumpuan kepada skalabiliti, orchestrasi, ujian, dan integrasi dengan stack data moden.
dbt untuk transformasi berpusat SQLSpark dan Databricks untuk data besarBeam dan Flink untuk kerja streamingRangka kerja transformasi berasaskan SQLKriteria pemilihan alat dan kompromiPelajaran 11fact_payments: medan skema (payment_id, user_id, course_id, amount, currency, payment_method, status, timestamp, invoice_id)Model jadual fact_payments untuk analitik hasil. Kami mentakrifkan setiap medan, berbincang penyerapan idempoten, pengendalian mata wang, status pembayaran, bayaran balik, dan cara menghubungkan pembayaran kepada pengguna, kursus, dan invois untuk pelaporan hiliran.
Butir dan kunci utama fact_paymentsMemodel status pembayaran dan kitaran hidupMengendalikan jumlah pelbagai mata wangMenghubungkan pembayaran kepada pengguna dan kursusMenangkap bayaran balik dan caj balik