Conclusion d'abord : pour la compression par lots de 10000 fichiers en entreprise, le plan central est le triptyque « file d'attente de tâches + compression parallèle + reprise après interruption ». SmartSlim Édition Réseau distribue les tâches via la file Celery, traite en parallèle avec 12 concurrences, enregistre les points de reprise dans MySQL. Une bibliothèque de 500 Go a été compressée à 82 Go en 4 heures, taux de compression 83,6 %. Ce guide détaille les défis, l'architecture, le cas pratique et les options de déploiement.
Si vous n'êtes pas encore familier avec la sélection d'outils de compression par lots en ligne de commande/GUI/API, nous vous conseillons de lire d'abordSélection d'outils de compression par lots : CLI vs GUI vs API。
I. Les trois défis de la compression par lots en entreprise
La compression par lots en entreprise et la compression personnelle sont deux problèmes d'ordre de grandeur différent. Un particulier compressant 100 fichiers peut le faire en quelques minutes par glisser-déposer GUI ; une entreprise compressant 10000 fichiers fait face à un triple défi d'échelle, de formats et de sécurité. Comprendre les défis permet de concevoir la bonne solution.
| Dimension du défi | Scénario personnel | Scénario d'entreprise | Différence clé |
|---|---|---|---|
| Volume de fichiers | De quelques dizaines à quelques centaines | 10000 et plus | Échelle 100x, traitement sériel infaisable |
| Diversité des formats | 1 à 3 formats principaux | 10 catégories, 40+ formats mélangés | Stratégie de compression par format |
| Sécurité et conformité | Local suffit | Privatif + audit + MLPS | Données dans le domaine, traçabilité des opérations |
| Exigence de stabilité | Échec = recommencer | Pas d'interruption, reprise nécessaire | Échec d'un fichier ne bloque pas l'ensemble |
| Capacité de concurrence | Mono-thread | 12+ concurrences | Utilisation des ressources multi-cœurs |
| Capacité d'ordonnancement | Déclenchement manuel | Planifié + déclenchement par événement | Intégration dans l'automatisation des processus métier |
Le volume de fichiers et la stabilité sont les plus critiques. 10000 fichiers traités séquentiellement, même à 10 secondes par fichier, nécessiteraient 28 heures — clairement inacceptable. La compression parallèle réduit ces 28 heures à 2–4 heures, mais introduit des complexités d'ordonnancement, de compétition de ressources et d'isolation des exceptions. La reprise après interruption est la ligne de fond de la stabilité : une tâche de 500 Go qui s'effondre à la 2ème heure sans reprise devrait tout recommencer.
II. Architecture du plan de compression par lots d'entreprise
Le plan de compression par lots de niveau entreprise de SmartSlim Édition Réseau (Enterprise) adopte une architecture à cinq couches : couche de présentation frontale → couche de passerelle API → couche de logique métier → couche d'algorithme central → couche de stockage de données. Les capacités clés se concentrent sur la file d'attente de tâches de la couche logique métier et la compression parallèle de la couche d'algorithme central.
| Capacité clé | Implémentation technique | Problème résolu | Paramètre clé |
|---|---|---|---|
| Découpage des tâches | File d'attente Celery | Grand volume découpé en petits lots | 50 fichiers par lot par défaut |
| Compression parallèle | Multi-processus + moteur Rust | Exploiter la concurrence multi-cœur | 12 concurrences (configurable) |
| Reprise après interruption | Enregistrement d'état MySQL | Récupération après interruption | Écriture d'état en millisecondes |
| Isolation des exceptions | try-catch par fichier | Échec d'un fichier ne bloque pas | 3 nouvelles tentatives automatiques |
| Journaux d'audit | Journaux structurés | Traçabilité des opérations | Opérateur/temps/hachage enregistrés |
| Gestion du stockage | Stockage d'objets MinIO | Stockage de gros fichiers | Limite 10 Go par fichier |
Le découpage des tâches est le préalable au parallélisme. Les 10000 fichiers ne sont pas soumis en une seule fois au moteur de compression, mais sont divisés par la file d'attente Celery en 200 lots (50 par lot), consommés en parallèle par 12 processus Worker. Chaque lot est soumis indépendamment, son état est enregistré indépendamment, et l'échec d'un lot n'affecte pas les autres.
Principe de la reprise après interruption : avant la compression de chaque fichier, l'état « à traiter » est écrit dans MySQL ; une fois la compression terminée, l'état « terminé » est écrit avec le volume compressé et le hachage. Au redémarrage du service, la table d'état est scannée, les fichiers « terminés » sont ignorés, et le traitement reprend depuis la file « à traiter ». Ce mécanisme a été validé dans le cas de 500 Go — reprise après interruption à la 2ème heure, seulement 12 minutes de surcoût.
Trois modes de déploiement, à choisir selon la taille et le budget de l'entreprise.
| Mode de déploiement | Échelle applicable | Capacité de concurrence | Complexité de déploiement | Besoins en ressources |
|---|---|---|---|---|
| Docker Compose mono-machine | 10000 fichiers/jour | 12 concurrences | Faible (9 services en un clic) | 8 cœurs 16 Go |
| Cluster Kubernetes | 50000 fichiers/jour | 36–120 concurrences | Moyen (HPA 3-10 réplicas) | 3 nœuds × 8 cœurs |
| Machine physique privatisée | Environnement sensible/Xinchuang | 12 concurrences/machine | Élevé (déploiement sur site) | Configuration à la demande |
La plupart des entreprises peuvent satisfaire leurs besoins avec un déploiement Docker Compose mono-machine — serveur 8 cœurs 16 Go, 12 concurrences, traitement quotidien de 10000 fichiers. Au-delà de cette échelle, un cluster K8s devient nécessaire. Les environnements sensibles ou Xinchuang nécessitent un déploiement privatif sur machine physique, les données ne sortant pas de l'intranet.
III. Cas pratique : compression d'une bibliothèque de 500 Go à 82 Go
Une entreprise manufacturière devait archiver et compresser sa bibliothèque de documents historiques. La bibliothèque contenait 500 Go de fichiers, environ 12000 au total, couvrant les formats PDF (35 %), images (25 %), documents Office (30 %), vidéo (5 %), autres (5 %). Les fichiers compressés devaient être stockés sur un serveur d'archivage et conservés 3 ans. SmartSlim Édition Réseau a été utilisé, déployé via Docker Compose sur un serveur 8 cœurs 32 Go, avec 12 concurrences.
Paramètres d'exécution :
| Paramètre | Valeur configurée | Description |
|---|---|---|
| Forme de déploiement | Docker Compose mono-machine | Orchestration de 9 conteneurs de services |
| Nombre de concurrences | 12 | Nombre de processus Worker Celery |
| Découpage des tâches | 50 fichiers par lot | 12000 fichiers découpés en 240 lots |
| Niveau de compression | high | 3ème niveau sur 4 |
| Niveau de sécurité | MEDIUM | Niveau par défaut |
| Backend de stockage | MinIO | Stockage d'objets, limite 10 Go par fichier |
| Niveau de journalisation | INFO + audit | Opérateur/temps/hachage enregistrés |
Durée et évolution du volume par phase :
| Phase | Durée | Volume cumulé | Taux de compression | Opération clé |
|---|---|---|---|---|
| Scan et classification | 40 minutes | 500GB | 0% | Identification du format, stratégie par type |
| Compression PDF | 1 heure 10 minutes | 305GB | 39% | Sous-échantillonnage des images intégrées + conversion JPEG |
| Compression d'images | 55 minutes | 195GB | 61% | Distribution par type, photos converties en JPEG |
| Compression Office | 35 minutes | 112GB | 78% | Extraction et compression des ressources intégrées + réassemblage |
| Compression vidéo | 10 minutes | 85GB | 83% | Transcodage H.264 + réduction du débit |
| Vérification et archivage | 30 minutes | 82GB | 83.6% | Vérification par hachage + écriture vers l'archive |
Résultat : 500 Go compressés à 82 Go, taux de compression 83,6 %, temps total 4 heures. Une interruption s'est produite à la 2ème heure 10 minutes en raison de fluctuations de la mémoire du serveur, la reprise après interruption a pris 12 minutes, pour un temps total final de 4 heures 12 minutes. Tous les fichiers ont passé la vérification par hachage, les journaux de compression enregistrent intégralement l'opérateur, l'horodatage, le hachage du fichier et les paramètres de compression, satisfaisant aux exigences d'audit d'archivage d'entreprise. La vidéo et les documents Office ont les taux de compression les plus élevés (83 %/78 %) car les ressources intégrées offrent un grand espace de compression ; le PDF a un taux de 39 % car certains PDF étaient déjà des scans optimisés.
IV. Recommandations par échelle et scénario
Le plan de compression par lots d'entreprise n'est pas forcément meilleur en plus grand, il doit correspondre à l'échelle réelle. Le tableau ci-dessous donne les recommandations par volume de fichiers et scénario.
| Taille d'entreprise | Volume de fichiers quotidien | Plan recommandé | Mode de déploiement | Investissement estimé |
|---|---|---|---|---|
| PME | 1000 et moins | API Édition Serveur | Service unique Docker | Licence Standard |
| Entreprise moyenne | 1000–10000 | Édition Réseau mono-machine | Docker Compose | Licence Professional |
| Grande entreprise | 10000–50000 | Cluster Édition Réseau | K8s HPA 3 réplicas | Licence Enterprise |
| Groupe/Gouvernement | 50000 et plus | Cluster Édition Réseau + multi-nœuds | K8s HPA 10 réplicas | Enterprise + sur mesure |
| Unité sensible | Variable | Édition Réseau privatisée | Déploiement sur site sur machine physique | Plan sur mesure |
Recommandation : en dessous de 1000 fichiers/jour, l'API Édition Serveur suffit (licence Standard, 4 concurrences), au coût le plus bas ; entre 1000 et 10000 fichiers, l'Édition Réseau mono-machine (licence Professional, 12 concurrences) offre le meilleur rapport qualité-prix ; au-delà de 10000 fichiers, un cluster K8s devient nécessaire. Les unités sensibles, quel que soit le volume, doivent obligatoirement utiliser un déploiement privatif, les données ne sortant pas de l'intranet.
Pour les exigences de conformité des scénarios gouvernementaux et sensibles, voirCompression de documents dans les systèmes OA gouvernementaux : plan de traitement par lots OFD/PDF. Pour plus de détails techniques sur la conception de la file d'attente des tâches, voirConception détaillée de la file d'attente des tâches de compression。
V. FAQ
Q1 : Quelle solution pour la compression par lots de 10000 fichiers en entreprise ?
Nous recommandons SmartSlim Édition Réseau (Enterprise), basé sur une architecture de file d'attente de tâches + compression parallèle + reprise après interruption. Les 10000 fichiers sont distribués via la file d'attente Celery, traités avec 12 concurrences, avec stockage MinIO et cache Redis. La version serveur mono-machine (12 concurrences) peut traiter jusqu'à environ 50000 fichiers par jour ; au-delà, utilisez un cluster K8s avec HPA 3-10 réplicas pour une extension horizontale. Une bibliothèque de 500 Go a été compressée à 82 Go en 4 heures lors des tests, soit un taux de compression de 83,6 %.
Q2 : Combien de temps pour compresser une bibliothèque de 500 Go à 82 Go ?
Temps testé : 4 heures, avec SmartSlim Édition Réseau, 12 tâches concurrentes, déployé sur un serveur 8 cœurs 32 Go. Trois phases : scan et classification 40 minutes, compression parallèle 2 heures 50 minutes, vérification et archivage 30 minutes. Taux de compression 83,6 % (500 Go → 82 Go), environ 29 secondes par Go compressé. En passant à 24 concurrences, le temps estimé pourrait être réduit à 2,5 heures. Une interruption en cours de traitement, la reprise après interruption n'a coûté que 12 minutes supplémentaires.
Q3 : Que faire en cas d'interruption de la compression par lots ?
SmartSlim Édition Réseau prend en charge la reprise après interruption. L'état de chaque fichier avant et après compression est écrit dans MySQL, la file d'attente enregistre la progression. Après un redémarrage, le système lit automatiquement le point de reprise, continue avec les fichiers non traités et ne retraite pas les fichiers déjà compressés. Lors d'un test, la tâche de 500 Go a été interrompue à la 2ème heure, la reprise a continué depuis le point d'interruption, pour un temps total de 4 heures 12 minutes (dont 12 minutes de coût de reprise). Cette capacité est indispensable pour les scénarios de niveau entreprise.
Q4 : Comment le plan de compression garantit-il la sécurité des données en entreprise ?
Quatre couches de garantie : premièrement, déploiement privatif, les données ne sortent pas de l'intranet de l'entreprise et ne passent par aucun serveur tiers ; deuxièmement, 5 niveaux de sécurité (DISABLED/LOW/MEDIUM/HIGH/MAXIMUM), MEDIUM par défaut ; troisièmement, 7 capacités de sécurité, incluant validation des paramètres de commande, vérification de l'intégrité des fichiers, scan de code malveillant, journaux d'audit, limitation de débit, gestion sécurisée des fichiers temporaires, limitation de la taille des fichiers ; quatrièmement, audit des journaux de compression, chaque compression enregistre l'opérateur, l'horodatage, le hachage du fichier et les paramètres de compression, satisfaisant aux exigences de conformité MLPS 2.0.
Conclusion
Le cœur de la compression par lots en entreprise est le triptyque « file d'attente de tâches + compression parallèle + reprise après interruption », qui résout les problèmes d'échelle, d'efficacité et de stabilité. SmartSlim Édition Réseau, basé sur la file d'attente Celery et le moteur de compression Rust, a compressé une bibliothèque de 500 Go à 82 Go en 4 heures, taux de compression 83,6 %, la reprise après interruption ne coûtant que 12 minutes supplémentaires. Le plan est stratifié par échelle : PME avec API Édition Serveur, entreprise moyenne avec Édition Réseau mono-machine, grande entreprise avec cluster K8s, unité sensible avec déploiement privatif obligatoire.
Trois points à retenir pour la sélection : premièrement, le volume de fichiers quotidien détermine la forme de déploiement (mono-machine/cluster/privatif) ; deuxièmement, les exigences de sécurité et de conformité déterminent le niveau de sécurité (MEDIUM par défaut, MAXIMUM pour les unités sensibles) ; troisièmement, le besoin de journaux d'audit (obligatoire selon MLPS 2.0). Avec le bon plan, la compression par lots de 10000 fichiers n'est plus un cauchemar d'exploitation.
Articles connexes
Besoin de compresser des fichiers ? Essayez SmartSlim
Construit sur un moteur de compression Rust auto-développé, prenant en charge 10 catégories et plus de 40 formats, dont PDF, images, vidéo, Office et OFD, avec une compression locale qui garde vos données sur place.