feel
18.06.2003, 13:39:15
Zadanie brzmi: stworzyć wyszukiwarke plikow formatu microsoftowego (.doc , .xls itp.) obslugiwana przez przegladarke
Problem: pliki umieszczone sa na tym serwerze co strona z wyszukiwaniem. Plikow tych jest sporo, a niektore sa bardzo dlugie - jak zorganizowac baze danych z ktorej korzystac bedzie ta wyszukiwarka, zeby to dzialalo w przyzwoitym tempie? Mozna oczywiscie dla kazdego pliku zrobic rekord skladajacy sie z pola z zawartoscia pliku i pola z nazwa pliku (ewentualnie jeszcze adresem) ale to bedzie strasznie duza baza. Mozna tez otwierac pliki po kolei i je przeszukiwac ale to bedzie jeszcze dluzsze... Czy jest jakis lepszy sposob na wyszukiwanie plikow ktore zawieraja dane slowo?
pozdrawiam,
feel
[Regis]
18.06.2003, 13:48:48
Generalnie bazy danych, nawet te wielkie (ktos chyba kiedys to podawal jakies wyniki testow i mowil o pracy na bazie z kilkoma milionami rekordow, jesli mnie pamiec nie myli...) sa dosc szybkie, a na pewno zdecydowanie szybsze niz inne metody - polecam skatalogowanie wszystkiego w bazie i korzystanie z tej bazy!
feel
18.06.2003, 14:10:59
ok - to juz wiem ze robic za pomoca bazy. Tylko czy ta baza ma byc zorganizowana w sposob tradycyjny tzn taki jak opisalem wyzej czy jest tez jakis szybszy sposob? Czy sa pola w postgrsql lub mysql ktore moga przyjac dowolna dlugosc (takie ktore zmieszcza np zawartosc kilkudziesiecio stronicowego pliku worda)?
dragossani
18.06.2003, 14:55:41
A dlaczego chcesz wrzucać treść pliku do bazy danych? Przecież plik Worda i tak jest swoistą binarką i raczej nie ma sensu szukać czegoś po treści...
feel
18.06.2003, 15:57:40
nie chce wrzucac przeciez postaci binarnej tylko tresc tych plikow
feel
18.06.2003, 16:00:06
a te tresc bedzie skojarzona w bazie z odpowiednia nazwa pliku i jak ktos znajdzie jakies szukane slowo to mu sie ma wyswietlic w jakim to jest pliku
dragossani
18.06.2003, 16:30:51
W takim razie tworzysz strukturę najprostszą - taką jak opisałeś w pierwszym poście. MySQL od niedawna ma niezłe wsparcie dla FULLTEXTSEARCH - nie powinieneś mieć problemów. Dla podniesienia wydajności możesz zastanowić się nad mechanizmem cache'ującym wyniki zapytań - jeśli jakiś element zapytania się powtórzy, będziesz miał gotowe odpowiedzi.
feel
18.06.2003, 16:44:56
dzieki - to juz prawie jestem w domu - pozostaje tylko kwestia: jaki typ pola uzywa sie do przechowywania tekstu o nieograniczonej dlugosci?
[Regis]
18.06.2003, 20:24:37
O kurcze, a mozna? Jak tak, to ja tez jestem ciekaw - ja znam tylko blob-a
wojtek
18.06.2003, 21:28:25
LONGTEXT - pole to moze przechowywac 4 294 967 295 bajtów, czyli powinno wystarczyc :)
DeyV
14.07.2003, 15:21:26
ale dziś naszło mnie na porządki ... temat przeniesiony z PRO
uboottd
14.07.2003, 18:30:08
A jak czesto sie zmieniaja te pliki ?
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.