Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Integracja wyszukiwania na stronie, której backend to MYSQL

Aby zająć się swoimi punktami:

  1. Używanie %input% jest bardzo złe . Spowoduje to skanowanie całej tabeli przy każdym zapytaniu. Przy dowolnym obciążeniu lub nawet zdalnie dużym zbiorze danych Twój serwer DB może się zadławić.

  2. Sam RDBMS nie jest do tego dobrym rozwiązaniem. Szukasz we właściwym miejscu, szukając osobnego rozwiązania do wyszukiwania. Coś, co może dobrze komunikować się z twoim RDBMS, jest dobre; coś, co działa wewnątrz RDBMS, nie zrobi tego, czego potrzebujesz.

  3. Wyszukiwanie pełnotekstowe w MySQL działa w przypadku bardzo podstawowych wyszukiwań słów kluczowych, nic więcej. Zakres użyteczności jest bardzo ograniczony - potrzebujesz wysoce przewidywalnego modelu użytkowania, aby wykorzystać wbudowane wyszukiwanie. Nazywa się to „wyszukiwaniem”, ale tak naprawdę nie jest to wyszukiwanie w sposób, w jaki myśli o tym większość ludzi. W porównaniu z jakością wyników wyszukiwania, której oczekujemy od Google i Bing, nie ma to porównania. W tym sensie słowa „szukaj” jest to coś innego – jak Notatnik kontra Word. Oba są rzeczami do wpisania, ale to wszystko.

Jeśli chodzi o oddzielne systemy do obsługi wyszukiwania, Lucene wypada bardzo dobrze. Lucene działa zasadniczo tak, jak chcesz. Możesz wchodzić z nim w interakcję programowo, aby wstawiać dokumenty, które można indeksować. Podobnie Google Appliance (nie Wyszukiwarka niestandardowa Google ) mogą otrzymać bezpośrednie meta-kanały, które ujawniają wszystko, co chcesz zindeksować, na przykład dane bezpośrednio z bazy danych.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Włączenie wartości przyrostowej do tego sql

  2. Błąd 2002 Połączenie odrzucone na PHP łączącym się z MySQL działającym na MAMP

  3. Dodać indeks PEŁNOTEKSTOWY w Doctrine 2 za pomocą adnotacji?

  4. Zapytanie MySQL nie znika po zabiciu

  5. Lazy load z bazy danych, gdy użytkownik przewija stronę w dół (podobnie do Twittera i Facebooka)