153 | | |
154 | | |
| 153 | **Споредба на извршување на извештај 2 со и без индекси**// |
| 154 | // |
| 155 | Без индекси:// |
| 156 | // |
| 157 | [[Image(2-noindex.PNG)]] |
| 158 | // |
| 159 | Со индекси: |
| 160 | // |
| 161 | [[Image(2-index.PNG)]] |
| 162 | // |
| 163 | // |
| 164 | **Споредба на извршување на извештај 3 со и без индекси**// |
| 165 | // |
| 166 | Без индекси:// |
| 167 | // |
| 168 | [[Image(3-noindex.PNG)]] |
| 169 | // |
| 170 | Со индекси: |
| 171 | // |
| 172 | [[Image(3-index.PNG)]] |
| 173 | // |
| 174 | // |
| 175 | **Споредба на извршување на извештај 4 со и без индекси**// |
| 176 | // |
| 177 | Без индекси:// |
| 178 | // |
| 179 | [[Image(4-noindex.PNG)]] |
| 180 | // |
| 181 | Со индекси: |
| 182 | // |
| 183 | [[Image(4-index.PNG)]] |
| 184 | // |
| 185 | // |
| 186 | ---- |
| 187 | **Анализа на извештај 2:**// |
| 188 | Забележуваме дека извршувањето и без индекси е релативно брзо поради тоа што моментално базата нема голем број записи. Сепак, во реална примена каде што секоја аптека би имала илјадници записи и чести ажурирања на количини, индексите врз branded_medicine_id и last_changed би биле важни.// |
| 189 | // |
| 190 | **Анализа на извештај 3:**// |
| 191 | И тука се гледа дека и без индекси пребарувањата се извршуваат брзо, бидејќи податоците се малку. Но во продукциска околина, каде секој клиент би имал десетици рецепти и системот постојано би проверувал дали тие се активни, индексите врз client_id, medicine_id и valid_to би биле клучни. Со нив филтрирањето на активни рецепти и пребарувањето по пациенти би станало скалабилно и одржливо дури и при голем обем на податоци.// |
| 192 | // |
| 193 | **Анализа на извештај 4:**// |
| 194 | За извештај 4, забележуваме дека извршувањето е побрзо без индекс, бидејќи табелата во нашиот случај е релативно мала и PostgreSQL претпочита целосно последователно читање (Seq Scan) наместо да користи индекс. |
| 195 | Индекс значи дополнителен I/O lookup и кај мали табели е непотребен “overhead”.// |
| 196 | // |
| 197 | **Заклучок:**// |
| 198 | Сценарио 2 и 3: иако во тест околина индекси не носат голема добивка поради мал број записи, нивната примена е критична во реална продукциска средина каде табелите експоненцијално ќе растат.// |
| 199 | // |
| 200 | Сценарио 4: индекси теоретски се корисни, но кај навистина многу мали табели како во овој случај тие дури можат да бидат побавни. Сепак, со зголемување на бројот на интеракции (N:M релации со илјадници комбинации) индексот ќе ја покаже својата вистинска вредност.// |