tener - Tamaño máximo de la tabla para una base de datos MySQL
tamaño de base de datos mysql (4)
Una vez trabajé con una base de datos MySQL muy grande (Terabyte +). La mesa más grande que tuvimos fue, literalmente, más de mil millones de filas.
Funcionó. MySQL procesó los datos correctamente la mayor parte del tiempo. Aunque fue extremadamente difícil de manejar.
Solo hacer una copia de seguridad y almacenar los datos fue un desafío. Tomaría días restaurar la tabla si lo necesitáramos.
Tuvimos numerosas mesas en el rango de 10-100 millones de filas. Cualquier unión significativa a las tablas consumía mucho tiempo y tomaría para siempre. Así que escribimos procedimientos almacenados para ''recorrer'' las tablas y procesar las uniones en rangos de ''id''. De esta forma, procesamos los datos de 10 a 100 000 filas a la vez (se unen contra los números de identificación de 1 a 100 000 y 100,001 a 200 000, etc.). Esto fue significativamente más rápido que unirse contra toda la tabla.
Usar índices en tablas muy grandes que no están basadas en la clave primaria también es mucho más difícil. Mysql almacena los índices en dos partes: almacena índices (distintos del índice principal) como índices de los valores de las claves primarias. Por lo tanto, las búsquedas indexadas se realizan en dos partes: First MySQL va a un índice y extrae los valores clave principales que necesita encontrar, luego realiza una segunda búsqueda en el índice de clave principal para encontrar dónde están esos valores.
La red de esto es que para tablas muy grandes (1-200 millones más filas) indexar contra tablas es más restrictivo. Necesita menos índices, más simples. Y hacer incluso simples declaraciones selectivas que no están directamente en un índice puede que nunca vuelvan. Donde las cláusulas deben golpear índices u olvidarse de eso.
Pero dicho todo eso, las cosas realmente funcionaron. Pudimos usar MySQL con estas tablas muy grandes y hacer cálculos y obtener respuestas correctas.
¿Cuál es el tamaño máximo para una tabla MySQL? ¿Son 2 millones a 50GB? 5 millones a 80 GB?
En el extremo superior de la escala de tamaño, ¿debo pensar en comprimir los datos? ¿O tal vez dividir la mesa si creció demasiado?
Acerca de su primera pregunta, el tamaño máximo efectivo para la base de datos generalmente está determinado por el sistema operativo, específicamente el tamaño del archivo que MySQL Server podrá crear, no por el propio servidor MySQL. Esos límites juegan un papel importante en los límites de tamaño de la mesa . Y MyISAM funciona de forma diferente a InnoDB. Entonces cualquier tabla dependerá de esos límites.
Si usa InnoDB, tendrá más opciones para manipular tamaños de tabla, cambiar el tamaño del tablespace es una opción en este caso, por lo que si planea redimensionarlo, este es el camino a seguir. Eche un vistazo a La tabla es la página de error completo .
No estoy seguro de que la cantidad de registro real de cada tabla proporcione toda la información necesaria (sistema operativo, tipo de tabla, columnas, tipo de datos y tamaño de cada uno, etc.). Y no estoy seguro de si esta información es fácil de calcular, pero He visto una tabla simple con alrededor de 1bi registros en un par de casos y MySQL no se dio por vencido.
Ver esto http://www.clb4u.com/2013/10/scalability-and-limits-of-mysql.html
Soporte para grandes bases de datos. Utilizamos el servidor MySQL con bases de datos que contienen 50 millones de registros. También sabemos de los usuarios que usan MySQL Server con 200,000 tablas y alrededor de 5,000,000,000 de filas.
Este artículo debería responder algunas como sus preguntas. Se trata de youtube y su uso de MySQL:
http://mysqldatabaseadministration.blogspot.com/2007/04/youtube-and-mysql.html