Buenas noches amigos
Siempre he querido hacer una web como estas pero con otro enfoque
Conozco muy poco sobre bases de datos, se lo basico en cuanto administracion joins, select, update y en cuanto al MER lo basico
Imaginense un sitio de estos con 20 millones de productos y 1 millon de busquedas al dia, como se le hace?
si hacemos una busqueda con el tipico select, en cada busqueda tenemos que rrecorrer 20 millones de registros, si se hacen 1 millon de busquedas se reccorrerian 20,000,000,000,000 veinte billones de registros
Esto lo veo asi porque no se mucho sobre bases de datos
He visto que las tablas en mysql se pueden particionar, tambien se que se pueden programar tareas al hacer un insert por ejemplo, ahorita estoy viendo una base de datos llamada cassandra, en fin
En amazon buscas algo y en menos de 2 segundos tienes resultados y eso que ah de tener como 500 millones de productos y se han de hacer unas 1500 busquedas cada segundos(mas de 100 millones al dia)
Como le hacen?
He pensado en combinar cassandra y mysql
un indice en cassandra pues es extremadamente veloz
el contenido en mysql
ejemplo
ingresamos en el buscador "pintura"
buscamos en cassandra y nos devuelve
pintura=>12,34,56,90
esos son los ids de las siguientes categorias
12 pinturas construccion
34 pinturas arte
56 pinturas maquillaje
90 pinturas automotivas
esos id los utilizo para generar una consulta en mysql
que opinan?
Saludos