Si haces un buen diseño, puedes tener bases de datos muy grandes en MySQL (esta otra pregunta puede ayudarte
). Definir correctamente las claves e índices , optimizar sus consultas (EXPLAIN
es tu amigo aquí). Seleccione un buen motor de base de datos .
Hay muchas cosas que hacer para obtener lo mejor de MySQL.
EDIT:algunas ideas más...
También es muy importante la forma en que estructura sus datos y las tablas para que sea fácil escribirlos, recuperarlos o encontrar un compromiso entre ambos (según el caso de uso).
Además, si crece, puede usar un clúster , dividir sus datos entre varias bases de datos MySQL en varias máquinas (usando un esquema maestro-esclavo, por ejemplo) es otra opción.
Para mejorar el rendimiento también deberías pensar en usar algún tipo de caché para consultas repetitivas.
También hay herramientas como Vitess que ayudan a escalar una base de datos MySQL de forma similar a las bases de datos NoSQL.