Pregunta

I tiene una tabla con las columnas, un smallint, un número entero y dos flotadores. memoria esperado para cada fila es 14bytes (2 + 4 + 2 * 4). Tengo alrededor de 700.000 filas en mi mesa. He puesto no claves primarias e índices. Mientras que el tipo MyISAM toma alrededor de 10 MB (promedio de 15b para cada fila), el tipo InnoDB lleva más de 30 Mb (promedio de 44b). ¿Que me estoy perdiendo aqui? Would InnoDB tiene tanto de los gastos generales para cada fila, o son el número de estado de la tabla no es de fiar. Necesito almacenar datos que se desarrollará en GB, por lo que necesita para decidir sobre el tipo de almacenamiento pesando diferentes parámetros.

¿Fue útil?

Solución

Las tablas InnoDB ocupan más espacio en comparación con MyISAM. Si el equilibrio entre el uso de almacenamiento y las características ofrecidas por InnoDB (crash-seguridad, transacciones, y las claves externas) favorece InnoDB es algo que tendrá que decidir. Tener a mí mismo cambiaron de MyISAM a InnoDB, yo no volvería.

Vale la pena señalar que si usted va a seguir adelante y utilizar InnoDB, que sin duda tendrá que definir una clave principal (y lo ideal sería uno corto). Esto es debido a la forma de almacenamiento InnoDB se comporta WRT y otros índices. Consulte esta página .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top