Cet article a été rédigé par Greg Desmarais (Caris Life Sciences), Christian Frech (Caris Life Sciences), Anuj Patel, Mark Azadpour, Yusong Wang
Lors du traitement des données génomiques pour des patients atteints de cancer, le temps est un facteur crucial. Caris Life Sciences, une entreprise pionnière en médecine de précision et en technologies BioTech à l’AI de nouvelle génération, a dû faire face à cette réalité lorsqu’elle a entrepris de traiter des données de séquençage de transcriptome entier provenant de plus de 400 000 cas pour alimenter ses projets de recherche.
Ce qui prenait traditionnellement des mois grâce à une infrastructure classique, Caris l’a réalisé en seulement 2,5 jours en utilisant AWS. Cette avancée leur a permis d’analyser 23 000 gènes RNA par échantillon tout en gérant une base de données multimodale immense de plus de 40 pétaoctets.
À travers cet article, nous vous dévoilerons les coulisses de cet exploit remarquable. Vous découvrirez comment Caris a utilisé une gamme de services AWS, tels qu’AWS Batch, Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Compute Cloud (Amazon EC2) Spot Instances, et AWS HealthOmics Sequence Store pour construire une solution hautement évolutive capable de traiter des centaines de milliers d’échantillons tout en maintenant une efficacité économique grâce à une utilisation stratégique des Spot Instances.
Une opportunité à saisir
Caris a évalué que l’analyse de séquençage RNA pour 400 000 échantillons sur leur infrastructure traditionnelle aurait pris environ trois mois.
Pour une entreprise à l’avant-garde de la médecine de précision, ce délai ne représentait pas seulement un chiffre – il symbolisait des insights retardés pouvant impacter la recherche sur le cancer et les opportunités d’affaires. Caris devait accélérer considérablement ses capacités de traitement sans sacrifier son efficacité en matière de coût.
Une solution sur mesure
Au lieu d’opter pour un pipeline d’analyse RNAseq tout prêt, Caris a conçu une solution personnalisée alliant la puissance de Nextflow à AWS Batch et Amazon EC2. Leur infrastructure était capable d’utiliser environ 200 000 vCPUs Amazon EC2 Spot concurrents, répartis sur plusieurs zones de disponibilité. La solution reposait principalement sur des instances EC2 de différentes familles : basées sur des performances générales (M-type), optimisées pour le calcul (C-type) et optimisées pour la mémoire (R-type). À pleine capacité, l’infrastructure a pu évoluer jusqu’à 4 000 instances tout en maintenant des coûts faibles grâce à la stratégie d’allocation optimisée des Spot Instances dans AWS Batch.
Pour garantir des performances optimales, Caris a également mis en œuvre une stratégie d’évolutivité progressive. Ils ont commencé avec des lots de 100 échantillons, augmentant progressivement jusqu’à 500, puis 1 000 échantillons en parallèle. Cette approche méthodique a prouvé son efficacité lors de leur première phase de test, où ils ont réussi à traiter 10 000 échantillons en utilisant 30 000 vCPUs en seulement 10 heures.
Une soumission dédiée via Nextflow a géré chaque cellule de flux génomique, contenant environ 100 échantillons RNA. Chaque échantillon nécessitait entre 10 et 20 tâches, exécutées sur 5 à 10 conteneurs Docker dotés d’outils bioinformatiques spécialisés. Les exigences computationnelles étaient diversifiées, certaines tâches s’accomplissant en quelques minutes tandis que d’autres pouvaient prendre jusqu’à 4 heures.
Les besoins en ressources étaient tout aussi variés, les demandes vCPU variant de 1 à 64 cœurs (moyenne autour de 24) et les exigences en mémoire allant de 4 Go à 64 Go. Par exemple, le composant d’alignement STAR nécessitait une utilisation de mémoire élevée de 50 Go, alors que les composants de contrôle de qualité fonctionnaient efficacement avec des allocations de mémoire et de CPU plus faibles.
Un élément crucial qui a accéléré leur traitement a été le passage de l’envoi de travaux AWS Batch individuels à des travaux de tableau, ce qui a permis de dépasser certaines limites de transactions par seconde (TPS) rencontrées. Cette fonction a considérablement amélioré le débit de soumission des tâches et l’efficacité de leur exécution. Un autre élément important pour atteindre l’échelle et la rapidité de l’analyse a été le stockage de leurs fichiers FASTQ dans AWS HealthOmics Sequence Store, qui a fourni une base solide pour leur pipeline de traitement.

Figure 1 – Schéma d’architecture illustrant comment Caris a tiré parti de l’orchestration AWS Batch. Le flux de travail exploite AWS HealthOmics Sequence Store pour les fichiers FASTQ, distribue le traitement à travers les vCPUs Spot d’Amazon EC2, stocke les images de conteneurs bioinformatiques dans le registre de conteneurs Elastic Amazon (ECR) et les fichiers de sortie dans le service de stockage simple d’Amazon (S3). Nextflow coordonne l’exécution du pipeline tandis qu’AWS Batch optimise la soumission des travaux et l’évolutivité avec des travaux de tableau. Le suivi du temps d’exécution des tâches via un tableau de bord personnalisé Amazon CloudWatch permet d’optimiser les ressources dans cet environnement de traitement parallèle massif.
Caris a également mis en place la solution de surveillance du temps d’exécution des travaux AWS Batch, fournissant des métriques cruciales et des insights sur les modèles d’exécution des travaux et l’utilisation des ressources. Ce cadre de surveillance open-source est devenu essentiel pour gérer leur charge de travail à grande échelle, leur permettant de suivre les états des travaux, d’identifier les goulets d’étranglement et d’optimiser l’allocation des ressources à travers leur pipeline de traitement étendu.
Les défis rencontrés
Cette montée en puissance nécessitait une attention méticuleuse à divers limites techniques et goulets d’étranglement potentiels. L’équipe a collaboré étroitement avec AWS pour augmenter leur limite de vCPU Spot d’Amazon EC2 et étendre leur capacité de stockage EBS à 800 TiB. Ils ont rencontré et résolu plusieurs défis intéressants au cours de leur projet.
Par exemple, lorsqu’ils ont rencontré des limites de taux d’API lors des requêtes d’instances Spot avec des appels DescribeSpotInstanceRequests, ils ont mis en place une solution utilisant l’étiquetage des instances pour suivre les coûts sans submerger l’API EC2.
La gestion du stockage est devenue cruciale alors que le projet a absorbé une quantité stupéfiante de 18 pétaoctets de stockage S3. Ils ont optimisé leurs modèles d’accès au service de stockage simple d’Amazon (S3) en mettant en œuvre différents préfixes au niveau supérieur pour faire face aux problèmes potentiels de goulet d’étranglement, en suivant notre guide de meilleures pratiques.
L’équipe a également fait face à des défis intéressants concernant le nettoyage des conteneurs Docker lors d’opérations à fort débit. Ils ont résolu cela en ajustant les paramètres de configuration de leur service de conteneurs d’Amazon Elastic (ECS) et en mettant à niveau les types de volumes de GP2 à GP3 pour améliorer les performances d’E/S.
Le AWS HealthOmics Sequence Store a joué un rôle essentiel, nécessitant cependant une augmentation de la limite de débit d’API GetReadSetMetadata à 100 TPS. Le système a su gérer un débit de pointe de 60 Go/s, avec un débit moyen de 10 à 15 Go/s via des points d’accès.
Enfin, des mécanismes de gestion des erreurs au niveau des travaux ont été mis en place, en utilisant des tentatives automatiques pour les travaux AWS Batch.
Conclusion
En utilisant AWS, Caris Life Sciences a transformé un défi computationnel s’étalant sur plusieurs mois en une durée de quelques jours. Ce faisant, ils ont considérablement accéléré leur capacité à tirer des insights pouvant nourrir la recherche clinique sur le cancer.
Ce succès démontre le potentiel immense de l’informatique en cloud AWS dans les sciences de la vie, en particulier pour les organisations traitant des charges de travail de génomique à grande échelle. L’aboutissement de ce projet ouvre de nouvelles perspectives pour une recherche accélérée et un meilleur soin des patients grâce à un traitement efficace des données.
Notre Opinion Tech
Dans le domaine en pleine évolution des sciences de la vie, la rapidité et l’efficacité dans le traitement des données sont devenues des impératifs. L’expérience de Caris Life Sciences met en lumière l’importance des solutions cloud adaptées pour faire face aux défis complexes du séquençage génétique. À mesure que les technologies d’analytique avancent et que les volumes de données continuent d’augmenter, il est essentiel d’explorer des infrastructures évolutives et flexibles qui permettent d’accélérer les processus sans compromettre la qualité ni les coûts. Ce modèle pourrait s’avérer déterminant pour les entreprises cherchant à innover tout en améliorant leurs capacités opérationnelles.
Bon à savoir
Il est important de noter que la mise en œuvre de solutions de cloud computing comme AWS peut entraîner des coûts considérables mais offrir des bénéfices significatifs en termes d’efficacité opérationnelle, surtout pour ceux qui manipulent des volumes de données massifs. Les organisations doivent donc peser soigneusement leurs décisions d’infrastructure pour s’assurer qu’elles répondent à leurs besoins spécifiques en matière de traitement des données tout en optimisant les ressources.
Le design durable est essentiel. Chaque choix d’esthétique peut avoir un véritable impact sur notre planète. Inspirons-nous mutuellement à créer avec conscience.