Nuestra empresa está trabajando en un proyecto que requiere una base de datos con 30-50 millones de filas de datos de productos. Estas filas contienen texto que debe buscarse al mismo tiempo miles de veces por segundo. Además, cada búsqueda debe tomar menos de un segundo para ejecutarse.Base de datos masiva con búsqueda de texto completo - Sphinx, Lucene, Cassandra, MongoDB, CouchDB
Así que, en general, tenemos una base de datos de filas de 50M que debe buscarse miles de veces por segundo. Tenga en cuenta que estas son búsquedas de texto completo. Sé que MySQL o cualquier base de datos relacional por sí sola no pueden manejar este tipo de trabajo. Por lo tanto, estamos buscando a alguien que pueda diseñarnos la configuración correcta y ayudarnos a implementarla, por el precio que especifique.
En primer lugar, nos gustaría saber cuáles son nuestras mejores opciones aquí. Personalmente he estado investigando cosas como Sphinx, Lucene, Cassandra, MongoDB, CouchDB, Solr, etc., pero realmente no sé cuál debería usarse junto con otra para darnos la configuración más eficiente posible.
Por lo tanto, si alguien pudiera simplemente darnos un consejo, o aceptar nuestra oferta de trabajo, sería muy apreciado.
Puede ponerse en contacto conmigo a través de PM aquí, y le daré mi correo electrónico/IM/número de teléfono para seguir debatiendo.
Gracias!
Hey, Gracias por la respuesta! Y sí, olvidé mencionar que son búsquedas de texto completo. La razón por la que descarto MySQL es por el bloqueo de la tabla. Las funciones de texto completo requieren myisam, que bloquea las tablas y, por lo tanto, perjudicaría las miles de búsquedas simultáneas que necesitaríamos realizar cada segundo. Además, las búsquedas de texto completo son más lentas que otras alternativas. Espero que el emparejamiento de MySQL con Sphinx pueda resolver estos dos problemas, pero no estoy seguro, por eso publiqué aquí :) ¡Gracias de nuevo! –