Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

PHP + MySql stored procedures + MySql Views

[es] :: PHP :: PHP + MySql stored procedures + MySql Views

[ Pregleda: 2682 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

nezki
Miodrag Lapcevic
Beograd

Član broj: 101503
Poruke: 438
212.200.34.*

Sajt: www.websolutions.co.rs


Profil

icon PHP + MySql stored procedures + MySql Views04.06.2010. u 10:08 - pre 168 meseci
Radio sam jendu web aplikaciju koja vodi evidenciju svih uredjaja koji se koriste u jednoj firmi.
Tehnologije koje sam koristio su:
baza: Oracle
Serverska strana: PHP
Klijent strana: Ajax

Za upis u bazu i brisanje i update podataka koriscenje su procedure pozvane iz php-a. A za prikaz podataka php je selektovao podatke iz pogelda i prikazivao.

E sada treba da napravim nesto slicno, samo je baza MySql.

Pa me interesuje, neka vasa iskustva, saveti, predlozi, da li da koristim mysql poglede i procedure posto je verzija MySql >5 na serveru gde ce biti hostovana aplikacija. Mislim da li ce koriscene pogleda i procedura na serveru ubrzati rad aplikacije ili suprotno. Ili je mozda bolje da koristim klasicne mysql upite iz php-a sa JOIN varijantom?

Sta je bolje i brze od ova dva resenja?





djLapac
 
Odgovor na temu

mitke013
As Divljine
Freelancer

Član broj: 231934
Poruke: 338
178.22.216.*



+34 Profil

icon Re: PHP + MySql stored procedures + MySql Views04.06.2010. u 13:53 - pre 168 meseci
Mislim da ti je mnogo bolje koristiti obican sql upit. Procedure jesu brze, ali ako ne ocekujes milion poseta dnevno, ne vredi tog masiranja.
 
Odgovor na temu

Alexxandar
Aleksandar Jovanović
Freelancer/Part time developer
127.0.0.1

Član broj: 16375
Poruke: 84
92.244.133.*



+59 Profil

icon Re: PHP + MySql stored procedures + MySql Views05.06.2010. u 21:33 - pre 168 meseci
Pri kreiranju tabela možda ćeš se zapitati InnoDB ili MyISAM, ukratko InnoDB je ako imaš dosta INSERT, UPDATE operacija, dok je dok je MyISAM bolji za SELECT. Sada ti vidi šta ti je potrebnije, naravno ove razlike se iskažu tek pod malo većim opterećenjem ali ne škodi u startu biti pripremljen ;)
 
Odgovor na temu

Goran Rakić
Beograd

Moderator
Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: PHP + MySql stored procedures + MySql Views06.06.2010. u 12:16 - pre 168 meseci
Ne pratim brojkama ali noviji razvoj u InnoDB bi trebalo da ovu razliku ispegla. MyISAM radi zaključavanje cele tabele i ne podržava strane ključeve.

U svom iskustvu pogled sam pravio jedino kada ima smisla da takva reprezentacija podataka postoji. Izbegavam podupite i koristim spajanja normalizovanih tabela. Po osećaju ponegde kada su čitanja česta, a promene retke ostavim i neki atribut viška (na primer stanje računa da ne bih stalno premotavao tabelu transakcija).

@mitke013: imaš li neke brojke za „procedure jesu brze“?

http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
Odgovor na temu

nezki
Miodrag Lapcevic
Beograd

Član broj: 101503
Poruke: 438
*.dynamic.sbb.rs.

Sajt: www.websolutions.co.rs


Profil

icon Re: PHP + MySql stored procedures + MySql Views06.06.2010. u 12:32 - pre 168 meseci
Generalno imam vise SELECT upita ali ja uvek koristim InnoDB, evo jednog posta gde se dobro vidi da je InnoDB puno bilji od MyIsam.
http://www.mysqlperformanceblo...m-vs-falcon-benchmarks-part-1/
Ali ono sto mene interesuje je da li je bolje da ako imam, na primer, vise tabela koje treba da joinujem, da li je bolje da u bazi napravim pogled i onda uradim select iz tog pogleda, ili da direktno iz php-a u query upit stavim sql kod.
Na primer:
Da li je bolje da u bazi napravim jedan pogled
Code:

CREATE ALGORITHM=TEMPTABLE VIEW vtracker AS 
  select 
    device.ID AS ID,
    from ((device left join assignment on(((device.ID = assignment.DEVICE) and (assignment.COMPLETED = 0))))
    left join reservation on((device.ID = reservation.DEVICE)))
    order by device.Date desc;

I onda da samo uradim:
Code:

mysql_query("select * from vtracker");

Ili je bolje da direktno iz php-a stavim:
Code:

$sql = "select device.ID AS ID,
    from ((device left join assignment on(((device.ID = assignment.DEVICE) and (assignment.COMPLETED = 0))))
    left join reservation on((device.ID = reservation.DEVICE)))
    order by device.Date desc";
mysql_query($sql);

Ili je mozda bolje da uradim vise select upita prema bazi.
djLapac
 
Odgovor na temu

Goran Rakić
Beograd

Moderator
Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: PHP + MySql stored procedures + MySql Views06.06.2010. u 12:37 - pre 168 meseci
Mislim da query cache radi svoj posao u oba slučaja.

Pogled kao TEMPTABLE ne omogućava update/delete. Može biti nezgodno u aplikativnoj logici objasniti CRUD operacije nad pogledom ako isti nije dobro definisan po dekomponovanim domenima.
http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
Odgovor na temu

nezki
Miodrag Lapcevic
Beograd

Član broj: 101503
Poruke: 438
*.dynamic.sbb.rs.

Sajt: www.websolutions.co.rs


Profil

icon Re: PHP + MySql stored procedures + MySql Views06.06.2010. u 13:03 - pre 168 meseci
Ja sam radio jednu aplikaciju gde je baza bila Oracle, i ceo development aplikacije se razvijao na sledeci nacin:
Developeri baze su za svaki UPDATE, DELETE, INSERT upit pravili procedure, a svaki SELECT upit se vrsio iz pogleda koje su oni pravili.
Nije bilo dozvoljena manipulacija podataka direktno iz tabela.

E sada ja radim slicnu aplikaciju ali je baza mysql i interesuje me da li da se drzim iste logike ili ne?
Baza je mala nema 5-6 tabela ali glavna tabela i history tabela(u njoj se cuvaju sve akcije korisnika aplikacije) ce imati jako mnogo zapisa (vise od milion).
I pre nego pocnem da radim moram da osmislim nacin na koji cu ubrazati rad aplikacije. Jer prva verzija te aplikacije postoji i u njoj sam koristio poglede(jedan primer pogleda vtracker ste videli) i gnerealno aplikacija radi jako sporo.
query_cache nije bio ukljucen.
djLapac
 
Odgovor na temu

Goran Rakić
Beograd

Moderator
Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: PHP + MySql stored procedures + MySql Views06.06.2010. u 13:35 - pre 168 meseci
Prouči plan izvršavanja upita.
http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
Odgovor na temu

mitke013
As Divljine
Freelancer

Član broj: 231934
Poruke: 338
178.22.216.*



+34 Profil

icon Re: PHP + MySql stored procedures + MySql Views07.06.2010. u 01:49 - pre 168 meseci
Citat:
Goran Rakić
@mitke013: imaš li neke brojke za „procedure jesu brze“?


Ne, samo informacije iz druge ruke. Doduse, izvor mi nije narocito pouzdan, ali on tvrdi da je testiranjem dosao do toga da je procedura oko 2 puta brza nego obican SQL upit.
 
Odgovor na temu

nezki
Miodrag Lapcevic
Beograd

Član broj: 101503
Poruke: 438
212.200.34.*

Sajt: www.websolutions.co.rs


Profil

icon Re: PHP + MySql stored procedures + MySql Views07.06.2010. u 07:30 - pre 168 meseci
Znaci definitivno procedure i i pogledi?
djLapac
 
Odgovor na temu

agvozden
Aleksandar Gvozden
founder
Info-G
Beograd

Član broj: 37813
Poruke: 1123
*.static.isp.telekom.rs.

Sajt: www.gvozden.info


+68 Profil

icon Re: PHP + MySql stored procedures + MySql Views07.06.2010. u 08:57 - pre 168 meseci
^ Ne verujem u to dok ne testiram...
 
Odgovor na temu

vatri
Banja Luka, RS

Član broj: 68697
Poruke: 1006
*.static.stelkom.net.



+18 Profil

icon Re: PHP + MySql stored procedures + MySql Views07.06.2010. u 11:24 - pre 168 meseci
Evo ja sam nasao neke clanke:

http://www.mysqlperformanceblo...w-as-performance-troublemaker/

http://www.mysqlperformanceblo...es-problems-and-use-practices/
 
Odgovor na temu

[es] :: PHP :: PHP + MySql stored procedures + MySql Views

[ Pregleda: 2682 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.