| Version 2 (modified by , 5 days ago) ( diff ) |
|---|
Напредна тема - партиционирање
Членови на тим:
- Aлександар Тодороски 231153
- Антонио Трајковски 231156
- Вељко Аџиќ 231267
Табелата DUEL има многу податоци и таа е една од наважниите и најголемите табели во нашиот систем. Барањето податоци ни неа е бавен процес и поради тоа искористивме партиционирање. Оваа ни помага да имаме многу добри перформанси при пребараување на податоци низ оваа табела, и кога користиме прашалници да не ја изминнуваме целата табела, туку дел кој е потребен.
Партиционирање на табелата
Прво и основно, ние хористиме range партиционирање бидејќи имаме време кога се оддржал дуелот па најдобро е да правиме според тоа.
Вењќе имаме DDL и податоци пополнети во нашиот систем ќе креираме нова табела каде ќе ставиме по што да партиционираме, затоа имаме PARTITION BY RANGE(duel_date).
Потоа мора да направиме поделби за секоја партиција од кога до кога да биде. Затоа тука креираме нова табела DUEL_YEARS_RANGES и ќе ги генерираме датумите на опсезите. Потоа со циклус ќе ги креираме генерираните партициите на NEW_DUEL со додделено име во формат'new_duel_' + year.
Мигрирање податоци во NEW_DUEL
Одкако ги креираме партициите, ќе треба да се мигрираат податоците од старата табела во новата. Тоа го извршуваме со кверито подолу.
Бидејќи ги копираме сите податоци од една табела во друга, вклучувајќи го и id кое е декларирано како SERIAL, секвенцата на id во нова табела не се ажурира и потребно е да се мигрира секвенцата. Тоа се извршува на следен начин:
Табелите TEAM_ROSTER, REFEREEING_DUEL и SCORE ја референцираат табелата DUEL треба и нив да ги мигрираме. Затоа ги имаме креирано следниве табели:
Овие табели исто треба да се мигрираат на следниот начин:
По ова, со помош на ALTER TABLE ќе ги поставиме старите ограничувања на новите табелите.
Тестирање погледи
...
Attachments (33)
- new_duel.png (17.9 KB ) - added by 5 days ago.
- duel_year_ranges.png (68.7 KB ) - added by 5 days ago.
- new_duel_migrate.png (33.8 KB ) - added by 5 days ago.
- new_duel_sequence.png (19.0 KB ) - added by 5 days ago.
- new_tables.png (29.7 KB ) - added by 5 days ago.
- migrate_tables.png (69.5 KB ) - added by 5 days ago.
- new_score_sequence.png (19.6 KB ) - added by 5 days ago.
- constraints.png (125.1 KB ) - added by 5 days ago.
- new_upcoming_duels.png (64.7 KB ) - added by 5 days ago.
- upcoming_analyze.png (15.8 KB ) - added by 5 days ago.
- upcoming_result.png (27.0 KB ) - added by 5 days ago.
- new_upcoming_analyze.png (16.0 KB ) - added by 5 days ago.
- new_upcoming_result.png (27.1 KB ) - added by 5 days ago.
- new_upcoming_index.png (20.1 KB ) - added by 5 days ago.
- new_upcoming_index_result_1.png (20.4 KB ) - added by 5 days ago.
- new_upcoming_index_result_2.png (5.9 KB ) - added by 5 days ago.
- upcoming_index_result_1.png (27.4 KB ) - added by 5 days ago.
- upcoming_index.png (36.6 KB ) - added by 5 days ago.
- upcoming_index_result_2.png (4.4 KB ) - added by 5 days ago.
- season_standing.png (122.6 KB ) - added by 5 days ago.
- new_season_standing_1.png (70.5 KB ) - added by 5 days ago.
- new_season_standing_2.png (109.1 KB ) - added by 5 days ago.
- new_season_standing_3.png (109.1 KB ) - added by 5 days ago.
- season_standing_analyzis_1.png (16.6 KB ) - added by 5 days ago.
- season_standing_analyzis_2.png (7.1 KB ) - added by 5 days ago.
- new_season_standing_analyzis_1.png (126.8 KB ) - added by 5 days ago.
- new_season_standing_analyzis_2.png (7.2 KB ) - added by 5 days ago.
- season_standing_index_result_1.png (16.5 KB ) - added by 5 days ago.
- season_standing_index_result_2.png (6.8 KB ) - added by 5 days ago.
- new_season_standing_index.png (54.4 KB ) - added by 5 days ago.
- new_season_standing_index_result_1.png (151.1 KB ) - added by 5 days ago.
- new_season_standing_index_result_2.png (6.9 KB ) - added by 5 days ago.
- season_standing_index.png (50.9 KB ) - added by 5 days ago.
Download all attachments as: .zip








