Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Zend] Lucene czy serwer
Forum PHP.pl > Forum > PHP > Frameworki
Juzef
Witam
Nic odkrywczego nie napiszę, poza tym, że mam problem. Wziąłem Zend_Lucene i buduję na tym wyszukiwanie w bazie użytkowników. Jest imię, nazwisko, kilka pól tekstowych, to wszystko. Wszystko pięknie, ale przy 5000+ dokumentów w indeksie dodawanie nowych zawiesza skrypt.

Chyba nikt nie powie, że przy takiej ilości nie daje rady Lucene... Więc moje podejrzenia padają na serwer trzymany przez nazwa.pl. Ma on sporo ograniczeń, a jednym z nich jest 30sek. czas wykonywania skryptu. Tylko czemu przy większej ilości rekordów ten czas tak rośnie, skoro przy mniejszym indeksie problemu nie ma?

Struktura indeksu wydaje się poprawna - pola typu Text to tylko te, które wyświetlam w wynikach wyszukiwania, czyli imię, nazwisko, miasto. Reszta tekstu jest UnStored, ID jest Keyword. Nie wydaje mi się, by to mogło problemy stwarzać.
O co więc może chodzić, czy coś można na pewno powiedzieć?

Dodam jeszcze, że problem ten pojawia się właśnie przy dodawaniu i usuwaniu użytkowników, wyszukiwanie działa bez zastrzeżeń.
A więc, czy mój przypadek rokuje jakieś nadzieje?
pzdr
Juzwa
kosmowariat
moze przekracza maksymalny dopuszczalny rozmiar pliku ?
Juzef
Nie, to na pewno nie to. Maksymalnie pliki indeksu maja 2mb, a limit jest chyba 30mb.

Pytanie miałbym inne, do tych, którzy może używali Lucene z większymi indeksami: jak długo powinny trwać operacje na takim indeksie z 10tys. rekordów? Odnoszę wrażenie, że niezależnie ile chcę dodać rekordów, zamuł jest taki sam. Natomiast wyszukiwanie chodzi bez zarzutów.
Na lokalnym serwerze dodawanie nawet jednego rekordu do indeksu z 10k rekordów trwa u mnie 20s co najmniej. Zapewne coś robię źle, bo niemożliwe, by ta biblioteka była taka zamulna... Więc jak to powinno być?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.