Publié le: Oct 27, 2022

Amazon EMR prend en charge PrestoDB et Trino pour l'exécution d'analyses SQL interactives sur de larges jeux de données en provenance de sources de données multiples. Aujourd’hui, nous sommes ravis d’annoncer les dernières mises à jour en date de PrestoDB et Trino intégrées dans la version 6.8 d’EMR.

Avec PrestoDB et Trino sur EMR 6.8, les utilisateurs bénéficient d'un paramètre de configuration, appelé mode strict, qui permet d'éviter les dépassements de coûts dus à l'exécution de requêtes de longue durée. Les clients nous ont indiqué que certaines requêtes SQL mal écrites peuvent parfois s'exécuter pendant de longues périodes, et consommer les ressources d'autres charges de travail primordiales pour l'entreprise. Afin d’aider les administrateurs à gérer ce genre de requêtes, nous mettons en place le mode strict qui permet d’alerter ou rejeter certains types de requêtes. Il s'agit par exemple de requêtes sans prédicats sur des colonnes partitionnées qui entraînent des balayages de table importants, ou de requêtes qui impliquent des jointures croisées entre de grandes tables, et/ou de requêtes qui trient un grand nombre de lignes sans limite. Vous pouvez mettre en place une configuration en mode strict lors de la création du cluster et également remplacer le paramètre en utilisant les propriétés de la session. Vous pouvez appliquer les vérifications en mode strict aux types de requêtes Select, Insert, Create table as select et Explain analyze.

Nous sommes également heureux d'annoncer que Amazon EMR PrestoDB/Trino a ajouté une nouvelle fonctionnalité pour gérer les interruptions ponctuelles qui permet d'exécuter vos requêtes de manière rentable et fiable. Les instances Spot dans Amazon EMR vous permettent d'exécuter des charges de travail de big data sur la capacité Amazon EC2 libre à un coût réduit par rapport aux instances à la demande. Cependant, Amazon EC2 peut interrompre les instances Spot avec une notification de deux minutes. Les requêtes PrestoDB/Trino échouent lorsque les nœuds de spots sont terminés. Cela signifie que les clients n'ont pas été en mesure d'exécuter de telles charges de travail sur des instances Spot et de profiter de coûts réduits. Dans EMR 6.7, nous avons ajouté une nouvelle capacité au moteur PrestoDB/Trino pour détecter les interruptions spot et déterminer si les requêtes existantes peuvent être complétées en deux minutes sur ces nœuds. Si les requêtes ne peuvent pas se terminer, l’échec intervient rapidement et les requêtes sont relancées sur des nœuds différents. Le moteur PrestoDB/Trino d'Amazon EMR ne planifie pas non plus de nouvelles requêtes sur les nœuds spot qui sont sur le point d'être récupérés. Avec ces deux nouvelles fonctionnalités, vous obtiendrez le meilleur, une meilleure résilience avec le moteur PrestoDB/Trino sur Amazon EMR, et l'exécution de requêtes de manière économique sur des nœuds spot.

Vous pouvez utiliser ces capacités dans toutes les régions où Amazon EMR PrestoDB et Trino sont disponibles. Pour en savoir plus, référez-vous à la section Presto et Trino du guide de version Amazon EMR.