Récupérer efficacement de grandes sélections MySQL avec le chunking
La gestion de grands ensembles de données dans MySQL peut souvent entraîner des problèmes de mémoire lors de la récupération des données. Pour résoudre ce problème, le chunking offre une solution efficace.
Technique de chunking
Le chunking consiste à diviser une grande requête de sélection en sous-ensembles plus petits. Ce faisant, vous pouvez traiter les données en portions gérables, évitant ainsi les limitations de mémoire.
Considérez cet exemple :
SELECT * FROM MyTable ORDER BY whatever LIMIT 0,1000;
Cette requête récupère les 1 000 premières lignes de MyTable. Pour récupérer les 1 000 suivants, vous devez incrémenter le décalage LIMIT :
SELECT * FROM MyTable ORDER BY whatever LIMIT 1000,1000;
Maintenir l'ordre des lignes
Pour garantir que l'ordre des lignes est conservé, créez une table temporaire en tant qu'instantané de la table d'origine :
CREATE TEMPORARY TABLE MyChunkedResult AS ( SELECT * FROM MyTable ORDER BY whatever );
Cette table temporaire contiendra les données ordonnées pendant que vous fragmentez les résultats :
SELECT * FROM MyChunkedResult LIMIT 0, 1000;
Incrémentez le décalage LIMIT pour les fragments suivants .
Considérations
En implémentant cette technique de segmentation, vous pouvez récupérer efficacement des résultats de sélection MySQL volumineux en morceaux, évitant ainsi les problèmes de mémoire et améliorant les performances.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3