![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Witam,
Mam taka tabele w bazie danych | id | token | spamcount | hamcount | gdzie id to wiadomo id ![]() token to slowo wystepujace w wiadomosci e-mail spamcount - liczba wystapien danego slowa w wiadomosci ktora jest spamem hamcount - liczba wystapien danego slowa w wiadomosci ktora jest ok - tzw. ham No i teraz kwestia wyglada tak mam sobie powiedzmy 1000 wiadomosci e-mail No i teraz kazda wiadomosc e-mail dziele na slowa i wrzucam do tej bazy ktora jest wyzej. dla kazdego slowa skrypt przelatuje przez wszystkie istniejace juz wpisy w bazie danych i sprawdza czy nie ma juz takiego slowa, jesli jest to uzupelnia odpowiednio 'spamcount' - jesli to slowo jest w liscie spam lub hamcount jesli slowo jest w liscie ham. Problem jest taki ze po wrzuceniu ok 60 listow do tabeli powstalo mi ok 3 tys rekordow. No i teraz za kazdym razem jak wrzucam nowy list do tabeli - tzn dla kazdego slowa z tego listu musi przeleciec przez cala tabele i sprawdzic czy juz nie istnieje to slowo. Po wrzuceniu na poczatku 5 listow na raz czas aktualizacji bazy wyniosl ok 10 sec. Gdy w bazie bylo juz ok 3tys rekordow czas ten doszedl do ok 100sec. Gdy mialem 7 tys rekordow to bylo kolo 180 sec ! 7 tys rekordow otrzymalem po wrzuceniu ok 80 listow do tabeli. A musze ich jeszcze wrzucic kilka tysiecy, wiec w tabeli bedzie kilkaset tysiecy rekordow, w takim wypadku update bazy trwalby wieki.....! Czy da sie cos zrobic zeby szybciej updatowalo tabele ? Ten post edytował Wolfie 31.10.2009, 13:23:13 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
Oczywiście, id Ci jest nie potrzebne, rzuć primary key na token, i powinno pomóc. Albo rzuć index'a na token.
Ten post edytował cojack 31.10.2009, 14:45:57 -------------------- cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Wywalilem id, rzucilem indexa na token i widac znaczna poprawe, dzieki
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 07:56 |