Changes between Version 4 and Version 5 of AdvancedConcepts
- Timestamp:
- 06/10/26 23:04:59 (5 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AdvancedConcepts
v4 v5 3 3 Напредната тема имплементира напреден аналитички (OLAP) слој врз трансакциски податоци за инвентар, користејќи TimescaleDB и pg_cron. Главната идеја е да се овозможи брза анализа на големи количини на податоци преку податочни cubes, наместо директно читање од сурови трансакции. Со ова се подобрува перформансата на извештаи, се намалува комплексноста на SQL кверињата и се овозможува скалабилна аналитика во реално време. 4 4 5 {{ Креирање на hypertables}}5 {{{ Креирање на hypertables }}} 6 6 Во првиот дел се трансформираат класичните табли во TimescaleDB hypertables. Табелите inventory_transactions и inventory_movements се партиционираат по created_at во месечни chunk-ови. Ова овозможува значително побрзо читање и скалирање на временски базирани податоци. 7 7 8 {{ cube_movements_daily}}8 {{{ cube_movements_daily }}} 9 9 Овој дел креира материјализиран view кој агрегира движења по ден, производ, бренд и магацин. Податоците се поделени на outbound и inbound логика за да се следи протокот на роба од и кон магацини. Резултатот е дневен аналитички слој кој значително ја намалува потребата од сложени join операции во реално време. 10 10 11 {{ cube_movements_monthly}}11 {{{ cube_movements_monthly }}} 12 12 Овој куб ги агрегира дневните податоци во месечни резимеа. Наместо директно да работи со сурови податоци, системот сега користи веќе пресметани дневни вредности. Ова овозможува побрзи извештаи на месечно ниво и подобра скалабилност. 13 13 14 {{ cube_movements_monthly}}14 {{{ cube_movements_monthly }}} 15 15 Овој материјализиран view ги поврзува варијантите на производи со нивните атрибути (како боја, големина итн.). Се чуваат и агрегирани информации за број на атрибути по производ. Ова овозможува брзо филтрирање и сегментација во аналитички извештаи. 16 16 17 {{ Автоматско освежување}}17 {{{ Автоматско освежување }}} 18 18 Во овој дел се дефинираат continuous aggregate политики за автоматско ажурирање на дневниот и месечниот куб. Системот периодично ги пресметува новите податоци без рачна интервенција. Ова обезбедува податоците секогаш да бидат релативно свежи и конзистентни. 19 19 20 {{ Cron Job}}20 {{{ Cron Job }}} 21 21 Со pg_cron се закажува дневно освежување на cube_product_attributes. Ова осигурува дека атрибутите на производите се синхронизирани со најновите промени. Се користи за задачи кои не бараат континуирано ажурирање, туку периодично. 22 22 23 {{ Извештаи}}23 {{{ Извештаи }}} 24 24 -Топ 25% производи по продажба 25 25
