sql >> Base de Datos >  >> RDS >> Mysql

¿Cuál es una mejor estrategia para almacenar datos de registro en una base de datos?

En igualdad de condiciones, las tablas inconexas más pequeñas pueden tener una ventaja de rendimiento, especialmente cuando tienen mucha escritura (como es probable que lo sean las tablas relacionadas con los registros):la mayoría de los mecanismos de base de datos están mejor ajustados para lectura mayoritaria, escritura rara vez. mesas. En términos de escritura (y actualización de los índices que deba mantener), las tablas pequeñas inconexas son una clara victoria, especialmente si hay alguna concurrencia (dependiendo del motor que esté usando para sus tablas, por supuesto, eso es bastante importante). consideración en mysql!-).

En términos de lectura, todo depende de su patrón de consultas:qué consultas necesitará y con qué frecuencia. En ciertos casos, para un patrón de uso como el que menciona, puede haber alguna ventaja de rendimiento al duplicar cierta información, p. Si a menudo necesita un total actualizado al instante de los créditos o débitos de un usuario, así como registros auditables detallados de cómo llegó a ser el total acumulado, mantener una tabla (lógicamente redundante) de totales acumulados por usuarios puede ser garantizado (así como las "tablas de registro" bien separadas sobre las diversas fuentes de créditos y débitos).