| Version 3 (modified by , 5 days ago) ( diff ) |
|---|
Advanced Concepts
Напредната тема имплементира напреден аналитички (OLAP) слој врз трансакциски податоци за инвентар, користејќи TimescaleDB и pg_cron. Главната идеја е да се овозможи брза анализа на големи количини на податоци преку податочни cubes, наместо директно читање од сурови трансакции. Со ова се подобрува перформансата на извештаи, се намалува комплексноста на SQL кверињата и се овозможува скалабилна аналитика во реално време.
{{Креирање на hypertables}} Во првиот дел се трансформираат класичните табли во TimescaleDB hypertables. Табелите inventory_transactions и inventory_movements се партиционираат по created_at во месечни chunk-ови. Ова овозможува значително побрзо читање и скалирање на временски базирани податоци.
{{cube_movements_daily}} Овој дел креира материјализиран view кој агрегира движења по ден, производ, бренд и магацин. Податоците се поделени на outbound и inbound логика за да се следи протокот на роба од и кон магацини. Резултатот е дневен аналитички слој кој значително ја намалува потребата од сложени join операции во реално време.
{{cube_movements_monthly}} Овој куб ги агрегира дневните податоци во месечни резимеа. Наместо директно да работи со сурови податоци, системот сега користи веќе пресметани дневни вредности. Ова овозможува побрзи извештаи на месечно ниво и подобра скалабилност.
{{cube_movements_monthly}} Овој материјализиран view ги поврзува варијантите на производи со нивните атрибути (како боја, големина итн.). Се чуваат и агрегирани информации за број на атрибути по производ. Ова овозможува брзо филтрирање и сегментација во аналитички извештаи.
{{Автоматско освежување}} Во овој дел се дефинираат continuous aggregate политики за автоматско ажурирање на дневниот и месечниот куб. Системот периодично ги пресметува новите податоци без рачна интервенција. Ова обезбедува податоците секогаш да бидат релативно свежи и конзистентни.
{{Cron Job}} Со pg_cron се закажува дневно освежување на cube_product_attributes. Ова осигурува дека атрибутите на производите се синхронизирани со најновите промени. Се користи за задачи кои не бараат континуирано ажурирање, туку периодично.
{{Извештаи}} -Топ 25% производи по продажба
Овој извештај ги рангира производите според вкупно поместена количина во даден магацин и период. Се користи NTILE за да се најдат најдобрите 25% од производите. Ова помага во анализа на најуспешни производи.
-Најслаби 25% магацини по turnover
Овој извештај ја пресметува ефикасноста на магацините според односот помеѓу движење и залиха. Магацините се рангираат во квартили за да се идентификуваат најслабите перформанси. Ова помага за оптимизација на логистиката.
-Топ црвени производи
Овој дел филтрира производи со атрибут „црвена боја“ и ги рангира според продажба. Се комбинираат атрибути и агрегирани податоци од кубот.
Ова решение овозможува брза и ефикасна анализа на големи количини податоци преку OLAP кубови наместо директни квериња од сурови трансакции. Со тоа се добиваат значително побрзи извештаи, помало оптоварување на базата и пониски инфраструктурни трошоци. Бизнисот добива подобар увид во продажба, залихи и перформанси на магацините, што овозможува брзо носење одлуки. Дополнително, автоматското освежување на податоците обезбедува секогаш актуелни и сигурни аналитики без рачна интервенција.
