Mailinglisten-Archive |
Hi Hans-Juergen, also mal konkret: eine Tabelle besteht nur aus CREATE TABLE texte ( autor int(11) NOT NULL default 0, thema int(11) NOT NULL default 0, zitat text NOT NULL default '', INDEX autor (autor), INDEX thema (thema) ) Type=MyISAM; da sind jetzt so um die 100.000 Zitate drin, die man auch nach Teilstrings durchsuchen koennen soll. z.B.: - finde 'in ich um den schlaf gebra' - finde 'weihnacht' - finde 'oster' Da faellt mir nur LIKE, und keine Optimierung ein, Vielleicht hast Du ja dazu eine Idee ? m. b. G. Norbert _____________________ normal: 02292-681769 Notruf: 0177-2363368 --------------------- e.o.m. ----- Original Message ----- From: "Hans-Jürgen Schwarzer" <hjs@schwarzer.de> To: <mysql-de@lists.4t2.com> Sent: Tuesday, December 17, 2002 1:20 PM Subject: AW: MySql FullText Hallo Norbert > also mal im Ernst, > wenn ein Select wirklich zu lange dauert, > wird es mit verketteten Tabellen auch nicht schneller. Der Vorteil der Methode mit einer separaten Worte-Tabelle ist um so GRÖSSER, je MEHR Texte es gibt und je stärker der Suchbegriff einschränkt. Und selbstverständlich ist auch eine "like"-Suche gegeben. Bei 200000 Texten und 5000 verschiedenen Worten schon lohnt sich das Verfahren. Wenn nur vier Worte zum Suchbegriff passen, können die zugehörigen Texte über die Text/Item-ID sehr schnell zugegriffen werden. Natürlich kann man Performance zum Teil auch durch mehr Speicher bewirken. Ich tendiere dazu BEIDES zu tun. optimale Algorithmen UND großzügige Ressourcenzuteilung Okay. Ich gebe zu, daß die Optimierung per Algo. mein Hobby ist. Daher bin ich nicht ganz neutral. Beste Grüße, Hans-Jürgen -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive