Sto sviluppando un'applicazione web ad alto volume, dove parte di essa è un database MySQL di post di discussione che dovrà crescere fino a 20 milioni di righe, senza problemi.
Inizialmente stavo pianificando di utilizzare MyISAM per le tabelle (per le funzionalità di ricerca full - text integrate ), ma il pensiero che l' intera tabella sia bloccata a causa di una singola operazione di scrittura mi fa impazzire. I blocchi a livello di riga hanno molto più senso (per non parlare degli altri vantaggi di velocità di InnoDB quando si ha a che fare con tabelle enormi). Quindi, per questo motivo, sono piuttosto determinato a utilizzare InnoDB.
Il problema è che ... InnoDB non ha funzionalità di ricerca full-text integrate.
Devo andare con un sistema di ricerca di terze parti? Come Lucene (c ++) / Sphinx ? Qualcuno di voi ninja del database ha qualche suggerimento / guida?Zoie di LinkedIn (con sede a Lucene) sembra l'opzione migliore al momento... essendo stato costruito attorno a funzionalità in tempo reale (che è piuttosto critico per la mia applicazione.) Sono un po 'riluttante a impegnarmi ma senza qualche intuizione ...
(FYI: sarà su EC2 con rig ad alta memoria, usando PHP per servire il frontend)