Ich entwickle eine hochvolumige Webanwendung, in der ein Teil davon eine MySQL-Datenbank mit Diskussionsbeiträgen ist, die reibungslos auf über 20 Millionen Zeilen anwachsen muss.
Ich hatte ursprünglich vor, MyISAM für die Tabellen zu verwenden (für die integrierten Volltextsuchfunktionen ), aber der Gedanke, dass die gesamte Tabelle aufgrund eines einzelnen Schreibvorgangs gesperrt wird, lässt mich schließen. Sperren auf Zeilenebene sind viel sinnvoller (ganz zu schweigen von den anderen Geschwindigkeitsvorteilen von InnoDB beim Umgang mit großen Tabellen). Aus diesem Grund bin ich ziemlich entschlossen, InnoDB zu verwenden.
Das Problem ist ... InnoDB verfügt nicht über integrierte Volltextsuchfunktionen.
Sollte ich mit einem Suchsystem eines Drittanbieters arbeiten? Wie Lucene (c ++) / Sphinx ? Hat einer von euch Datenbank-Ninjas Vorschläge / Anleitungen?Der Zoie von LinkedIn (basierend auf Lucene) scheint im Moment die beste Option zu sein... da ich auf Echtzeitfunktionen aufgebaut bin (was für meine Anwendung ziemlich wichtig ist), zögere ich ein wenig, mich noch ohne Einsicht zu verpflichten ...
(Zu Ihrer Information: Ich werde mit High-Memory-Rigs auf EC2 sein und PHP als Frontend verwenden.)