Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 2.285 pregleda

Najnovija ↓

Šta je bolja praksa? 15.07.2014. u 13:42 · pre 149 meseci #1
Recimo da imam dvije "bitne" tabele koje nisu direktno povezane (user i sport_event), već se nalazi 2-3-4 tabele "između" njih koje se referiraju na jednu ili drugu.
E sad, treba mi npr. koji user prisustvuje nekom događaju i ja to mogu da dobijem tako što spojim 3 ili 4 tabele između po FK, ali me zanima da li je ipak bolje da stavim u tabelu sport_event direktno user_id i zdravo?
Potpis
Beneath civilization's fragile crust, cold chaos churns...
Re: Šta je bolja praksa? 15.07.2014. u 14:46 · pre 149 meseci #2
To o čemu govoriš naziva se denormalizacija podataka i definitivan odgovor na tvoje pitanje ne postoji, jer zavisi od dosta stvari.

http://en.wikipedia.org/wiki/Denormalization

Da li već imaš probleme sa performansama upita?

Da li si analizirao query planove problematičnih upita?

Da li si iscrpeo mogućnosti indeksiranja?

itd
Re: Šta je bolja praksa? 15.07.2014. u 15:13 · pre 149 meseci #3
Baza je tek u dizajn fazi, tako da je odgovor na sva pitanja odrečan :-)
Pitam unapred baš da bih izbjegao eventualne probleme koji po defaultu mogu iz toga proizaći. Svi indeksi su postavljeni kako treba (bar ja mislim), biće tu i keširanja ovoga-onoga, ali me zanimao baš neki generalni odgovor.
Ne samo iz perspektive performansi, već i sa praktične strane.
Potpis
Beneath civilization's fragile crust, cold chaos churns...
Re: Šta je bolja praksa? 15.07.2014. u 16:33 · pre 149 meseci #4
Skolski odgovor je da ides na normalizaciju, normalne forme i dizajn bez redudanse.

Iskustveni je da denormalizacija cesto pomaze :). S'druge strane, ako ne moras, drzi se normalizovane baze, a na denormalizaciju odvoj vreme za refactoring kad (i ako) ti bude trebala.
Potpis
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
Re: Šta je bolja praksa? 15.07.2014. u 17:21 · pre 149 meseci #6
Citat:
Tyler Durden:
Baza je tek u dizajn fazi, tako da je odgovor na sva pitanja odrečan :-)

Onda definitivno ne dupliraj podatke.

Prerana optimizacija je zaista ogroman problem - pričam iz svog iskustva.

Nemoj se bojati upita sa više JOIN-ova. Na kraju krajeva uvek možeš da pojednostaviš upite pisanjem VIEW-ova (nadam se da ih MySQL ima). A kad jednom otvoriš kutiju sa crvima zvanu denormalizacija, nema nazad. :)
Re: Šta je bolja praksa? 15.07.2014. u 17:59 · pre 149 meseci #7
Super za odgovore, jer tako sam i krenuo od početka. I sad radim pregled čitavog modela prije nego krenem sa kodom, i ovo mi je zapalo za oko pa sam htio da provjerim.
Potpis
Beneath civilization's fragile crust, cold chaos churns...
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme