Wyszukiwarka
Love google. Ich tajemna receptura na udane i szybkie wyszukiwanie jest tajemnicą wartą 190 mld dolarów. Jak wymyślić coś podobnego mając 19zł w kieszeni, podczas niskiego notowania złotówki po godzinie 22? H.G.W..
Długo zastanawiałem się jaki algorytm zastosować w wyszukiwarce, aby wyszukiwanie było bardzo szybkie. Nie wiem czy mechanizm, który zastosowałem jest poprawny ale działa zdecydowanie szybciej niż ten stosowany do tej pory.
Mamy bazę danych z firmami, które w opisie mają ofertę.
W tabeli słowa kluczowe przechowujemy słowa oraz przypisane im numery, mamy także tabelę z relacją firma_id->slowo_id
Wygląda to tak:
1. szukamy słowa “pizza”
2. system przeszukuje tabele, w której są słowa kluczowe i przypisane do tych słów liczby
3. znajduje słowo pizza, które ma numer np. 19
3b. szuka relacji firma->słowo w postaci: firma_id -> slowo_id (w tym przypadku slowo_id = 19) i zwraca wyniki
4. system nie znajduje słowa pizza – przeszukuje więc wszystkie rekordy (oferty) w poszukiwaniu słowa pizza
4b. dodaje nowe słowo do tabeli słów kluczowych i tworzy mu numer
4c. dodaje relację id_firmy->id_słowa
5. wyświetla nam szukane firmy dla słowa pizza
Czy ta metoda jest skuteczna? Jak można ją poprawić. Czekam na opinie.
Filed under: php | 1 Comment
Szukaj
-
Przeglądasz archiwa bloga i'm render it.
Taa o fotach to ja mogę wydawać opinie :) ale nie o skryptach ;p choć powiem, że brzmi mądrze ;]