| Version 4 (modified by , 6 days ago) ( diff ) |
|---|
Database Creation
Во оваа фаза се прикажани DDL скриптата за креирање на базата, python скриптата за креирање на податоци за полнење на базата и погледите за приказ на често потребни податоци.
DDL скрипта за креирање на табелите
Оваа DDL скрипта претставува дизајн на релациона база на податоци за систем за поврзување на студенти и ментори. Базата е архитектурно структурирана да поддржи комплетен работен тек во една високообразовна институција, од првичниот избор на ментор, до целосна реализација на менторството.
Дизајнот обезбедува висок степен на нормализација, а табелите се поделени во неколку клучни модули:
- Системот започнува со основа за образовните институции преку табелите University, Faculty, StudyProgram и Subject. Централната табела User ги чува профилите на сите корисници (студенти, професори), додека преку Role, Permission и нивните поврзувачки табели се регулираат привилегиите за пристап.
- Табелата TopicSuggestion овозможува предлагање и следење на статусот на слободни теми. Откако темата ќе се резервира, се креира запис во Mentorship кој ги спојува студентот, менторот и темата. Динамиката на работа и напредокот на студентот се водат преку табелата Task, каде строго се следат роковите и статусот на секоја задача.
- За да се олесни соработката, базата содржи вграден модул за директно допишување. Табелите Chat и Message ја чуваат историјата на комуникација меѓу менторот и студентот. Паралелно, табелата Notification е дизајнирана навремено да ги известува корисниците за нови пораки, статуси на задачи или промени во менторството.
- За полесно пронаоѓање на идеален ментор, базата ги мапира интересите на корисниците преку Interest и User_Interest, и дополнително, преку табелата CommentOpinion, се овозможува оставање на повратни информации и оцена за менторите.
- Скриптата користи строги FOREIGN KEY ограничувања со цел да се спречат аномалии. На пример, не е возможно да се избрише корисник кој има активно менторство, ниту да се додели тема која веќе е означена како зафатена.
Python скрипта за пополнување на табелите
Оваа Python скрипта ја користи библиотеката Faker за автоматско генерирање на милиони тест-податоци во CSV формат користејќи македонски имиња на личности, предмети, факултети, универзитети и слично. Нејзината главна намена е брзо и масовно полнење на сите табели во базата со огромно количество податоци (до 10 милиони редови по табела), со што се овозможува реална проверка на перформансите на системот.
Attachments (3)
- skripta_najdi_mentor.py (42.0 KB ) - added by 6 days ago.
- views_najdi_mentor.sql (13.1 KB ) - added by 6 days ago.
- ddl_najdi_mentor.sql (14.5 KB ) - added by 6 days ago.
Download all attachments as: .zip
