Recuperar grandes selecciones de MySQL de manera eficiente con fragmentación
El manejo de grandes conjuntos de datos en MySQL a menudo puede generar problemas de memoria durante la recuperación de datos. Para resolver esto, la fragmentación ofrece una solución eficaz.
Técnica de fragmentación
La fragmentación implica dividir una consulta de selección grande en subconjuntos más pequeños. Al hacerlo, puede procesar los datos en porciones manejables, evitando limitaciones de memoria.
Considere este ejemplo:
SELECT * FROM MyTable ORDER BY whatever LIMIT 0,1000;
Esta consulta recupera las primeras 1000 filas de MyTable. Para recuperar los siguientes 1000, deberá incrementar el desplazamiento LÍMITE:
SELECT * FROM MyTable ORDER BY whatever LIMIT 1000,1000;
Mantener el orden de las filas
Para garantizar que se mantenga el orden de las filas, cree una tabla temporal como una instantánea de la tabla original:
CREATE TEMPORARY TABLE MyChunkedResult AS ( SELECT * FROM MyTable ORDER BY whatever );
Esta tabla temporal contendrá los datos ordenados mientras fragmentas los resultados:
SELECT * FROM MyChunkedResult LIMIT 0, 1000;
Incrementa el desplazamiento LIMIT para fragmentos posteriores .
Consideraciones
Al implementar Con esta técnica de fragmentación, puede recuperar eficazmente grandes resultados seleccionados de MySQL en fragmentos, evitando problemas de memoria y mejorando el rendimiento.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3