Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 30.10.2005 Ostrzeżenie: (0%)
|
Witam wszystkich,
Troszke pogrzebałem po formu ale nie znalazłem nic ciekawego w tym temacie (z góry proszę jak ktoś znalazł coś podobnego p podanie linka). Mój problem jest taki: pracuję od niedawna dla pewnej firmy, która prowadzi portal i wszystko by było ładnie gdyby nie jedna rzecz. Wszelkie dane z portalu są logowane do jednej tabeli ma on już 560 tyś rekordów (ciągle rośnie) i na niej oparte są wszelkie statystyki, które codzeinnie czyta mój szef. Szef musi mieć wszystko na wczoraj wiec jak wykonanie pewnego zapytania trwa np 40 sek i jeszcze przekroczy ttl przeglądarki i nic mu nie wyświetli to się denerwuje. Ja mam pomysł żeby rozbić to wszysko na lata tzn. log_2004, log_2005, log_2006 itd. wtedy tabele były by dużo mniejsze i zapytania dla poszczególnych lat trwały by krócej tylko, że zapytanie o wszystkie lata znów by było strasznie długie Oto struktura tabeli:
Z góry dzięki za każdy pomysł. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 30.10.2005 Ostrzeżenie: (0%)
|
Wielkie dzięki dla was chłopaki (Fido i SongoQ) za pomoc.
Sprawę rozwiązałem w ten sposób: Zrobiłem tabele pośrednie gdzie podzielilem dane z tabeli z logami (5 mln rekordów a nie 500 tys zer nie doliczyłem (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif) ), czas wykonywania przecietnego zapytania spadł z 40 sekund do ok 1,5 sek. Ale, że zapytań czasem jest wiele i tak by to trwało troche dlatego z tabel pośrednich co godzinę wyciągam statystyki do pliku a potem już statyczny html na stronie. Narazie co prawda zrobiłem to tylko dla jednej rzeczy a jest ich kilkanaście ale schemat już jest i reszta to tylko wklepanie kodu z małymi zmianami. Szef się cieszył jak dziecko, że nie musiał czekać wieków na statystyki. Jeszcze raz dzięki i pozdrawiam |
|
|
|
yaaa Optymalizacja tabeli 10.01.2006, 10:27:03
FiDO Podaj jesli mozesz to zapytanie.. byc moze to wlas... 10.01.2006, 10:31:54
yaaa Cytat(FiDO @ 2006-01-10 09:31:54)Podaj jesli ... 10.01.2006, 10:54:09
yavaho Moim skromnym zdaniem problemem nie jest tu ilosc ... 10.01.2006, 11:08:34
FiDO Cytat(yaaa @ 2006-01-10 10:54:09)Tylko że ja ... 10.01.2006, 11:30:11
yaaa Cytat(FiDO @ 2006-01-10 10:30:11)To w koncu j... 10.01.2006, 13:13:44
FiDO Jesli masz dostep do crona to najlepszym pomyslem ... 10.01.2006, 14:05:30
SongoQ Lepiej jest poprawic zapytanie i czas bedzie mniej... 10.01.2006, 14:17:36
yaaa Cytat(SongoQ @ 2006-01-10 13:17:36)kolejna rz... 10.01.2006, 15:13:52
SongoQ LIKE mozesz zamienic na tabele posrednie, gdzie ja... 10.01.2006, 15:53:30 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 15:16 |