Tenemos una tabla que actualmente tiene una columna de TEXTO y la longitud promedio de la columna es de aproximadamente 2.000 caracteres. Queríamos ver cuál sería el rendimiento de las consultas que seleccionarían esa columna si el promedio fuera 5k, 10k, 20k, etc.El tiempo de consulta de MySQL crece exponencialmente cuando los datos en la columna TEXT crecen linealmente
Configuramos una prueba aislada y encontramos que a medida que la longitud de la columna TEXT aumentaba linealmente, el tiempo de consulta aumentó exponencialmente.
Alguien tiene alguna idea rápida de por qué esto podría ser. Puede proporcionar más información, pero bastante sencillo.
¿Ha usado un índice de texto completo en combinación con 'match against'. Esta es la forma recomendada de buscar las columnas de texto. – Johan
No estamos buscando en la columna TEXTO, simplemente seleccionándolo.SELECCIONAR * FROM t DONDE t.id <50; etc. –
SELECCIONAR * es muy malo, solo selecciona los campos que realmente necesitas. Porque está (potencialmente) enviando muchos datos innecesarios a través del cable. Además, si estás usando InnoDB, estás eliminando la oportunidad de usar índices de cobertura, también ten en cuenta la respuesta de @Mchl. – Johan