Estoy desarrollando una aplicación web de alto volumen, donde parte de ella es una base de datos MySQL de publicaciones de discusión que necesitará crecer a más de 20 millones de filas, sin problemas.
Originalmente estaba planeando usar MyISAM para las tablas (para las capacidades integradas de búsqueda de texto completo ), pero la idea de que toda la tabla esté bloqueada debido a una sola operación de escritura me hace obturar. Los bloqueos a nivel de fila tienen mucho más sentido (sin mencionar las otras ventajas de velocidad de InnoDB cuando se trata de tablas enormes). Entonces, por esta razón, estoy bastante decidido a usar InnoDB.
El problema es ... InnoDB no tiene capacidades de búsqueda de texto completo integradas.
¿Debería optar por un sistema de búsqueda de terceros? ¿Como Lucene (c ++) / Sphinx ? ¿Alguno de los ninjas de la base de datos tiene alguna sugerencia / orientación?Zoie de LinkedIn (basado en Lucene) parece la mejor opción en este momento... habiendo sido construido alrededor de capacidades en tiempo real (lo cual es bastante crítico para mi aplicación). Dudo un poco en comprometerme pero sin una idea ...
(Para su información: estará en EC2 con plataformas de alta memoria, usando PHP para servir la interfaz)