Rafał Nauka

Rafał Nauka Software Engineer
(Java)

Temat: Zend_Search_Lucene czy Myisam i fulltext

Witam,
Mam pytanie czego uzyc? Potrzebuje na kilku kolumnach typu text zrobic wyszukiwanie. Wole korzystac z innodb, chocby ze wzgledu na cascade. Moge ta jedna tabele miec na myisam ale to chyba niezbyt dobre rozwiazanie. Co radzicie?

1) przejsc na myisam
2) zmienic jedna tabele na myisam
3) uzyc lucene
4) inne propozycje.
Krzysztof Trojanowski

Krzysztof Trojanowski programista .NET
(c#)

Temat: Zend_Search_Lucene czy Myisam i fulltext

Ostatnio miałem podobny problem, zdecydowaliśmi sie wtedy aby stworzyc "cache" na myisamie i tam zrobic fulltext.
Rafał Nauka

Rafał Nauka Software Engineer
(Java)

Temat: Zend_Search_Lucene czy Myisam i fulltext

aha, ale caly projekt byl na myisam? ten cache to rozumiem po stronie administracji baza?

konto usunięte

Temat: Zend_Search_Lucene czy Myisam i fulltext

Cześć Rafale!

Jakiś czas temu projektując wyszukiwarkę do CMS-a wymyśliłem takie rozwiązanie:
- tabelka do wyszukiwania myisam (cały projekt na innodb)
- do samego wyszukiwania służyło jedno pole, w którym były skonkatenowane dane z różnych pól (bo wiadomo dla różnych tabel chcemy wyszukiwać z różnych pól)
- podczas dodawania/aktualizacji/usuwania danych z tabel, z których wyszukiwałem robiłem odpowiednią aktualizację w tabelce myisam'owej.
- samą aktualizację tych pól wykonuje się na dwa sposoby, albo trigger z bazy, albo przeciążone metody insert,update,delete z Zend_Db_Table_Abstract

Jedyną niedogodnością jest to, że trzeba w jakiś sposób trzymać odwołanie do tabeli(modułu lub strony) z której dane do wyszukiwania pochodzą. Bo, że odwołanie do PK musimy mieć to chyba logiczne :)

Pozdrawiam ;)
...
Rafał Nauka

Rafał Nauka Software Engineer
(Java)

Temat: Zend_Search_Lucene czy Myisam i fulltext

Witam :)

Dzieki za rade i pozdrawiam.

konto usunięte

Temat: Zend_Search_Lucene czy Myisam i fulltext

Krzysztof Trojanowski:
Ostatnio miałem podobny problem, zdecydowaliśmi sie wtedy aby stworzyc "cache" na myisamie i tam zrobic fulltext.

My przy pewnym projekcie zrobiliśmy dokładnie tak samo i śmiga aż miło ;) z Lucene miałem kilka razy parę problemów, np. nie udało mi się tego odpalić na home.pl i byłem zmuszony zrobić wyszukiwarkę na zwykłych WHERE costam LIKE

Temat: Zend_Search_Lucene czy Myisam i fulltext

O ile nie chcesz przeszukiawć plików (typu doc, ppt, txt, pdf) na serwerze to rozwiązanie z tabelą myisam jest jak najbardziej ok, w przeciwnym wypadku polecam lucynke ;) Owszem, ma sporo jeszcze niedociągnięć (np. problemy z polskim kodowaniem) jednak jak już zaczyna śmigać to konkretnie :)
Bartosz Ratajczyk

Bartosz Ratajczyk MS SQL Developer

Temat: Zend_Search_Lucene czy Myisam i fulltext

Artur Grzybowski:
- do samego wyszukiwania służyło jedno pole, w którym były skonkatenowane dane z różnych pól (bo wiadomo dla różnych tabel chcemy wyszukiwać z różnych pól)

Jak realizowałeś wyszukiwanie? Zwykły WHERE ... LIKE, czy full text search?
Czy bez problemu obsługiwało frazy - np. "zielony samochód hybrydowy" w tekście "(...) w kolorze zielonym. Samochód z napędem hybrydowym (...)" czy wymagało większej gimnastyki?
Bartłomiej Ogryczak

Bartłomiej Ogryczak Backend Developer @
Layar

Temat: Zend_Search_Lucene czy Myisam i fulltext

4) inne propozycje.

Sphinx. http://sphinxsearch.com
Ładnie się integruje z MySQLem.Bartłomiej Ogryczak edytował(a) ten post dnia 24.03.10 o godzinie 16:00
Rafał Nauka

Rafał Nauka Software Engineer
(Java)

Temat: Zend_Search_Lucene czy Myisam i fulltext

uzylem sphinxa... szybko chodzi... czasami przestaje dzialac ale to juz chyba kwestia ustawien. No i trzeba wziasc po uwage ze dane nie beda zawsze aktualne.. bo indexowanie jest uruchamiane z crona. Nie uzywalem tak jak wspominasz tej wersji "nakładki na mysql" tylko demona. Sphinx jest o wiele prostszy i szybszy niz lucene. Zobaczymy jak to bedzie chodzic. Narazie mam czasami problem z sortowaniem, tak jakby czasami nieuwzglednial tego... Po kilkju sekundach wraca do normy. Podziele sie wrazeniami za kilka miesiecy.

Następna dyskusja:

Czy ktos moglby polecic fir...




Wyślij zaproszenie do