投稿日: Nov 21, 2022

本日、Amazon EMR では、耐障害性を高めるために Amazon S3 または HDFS でチェックポイントを使って、Trino エンジン (Project Tardigrade) で実行時間が長く耐障害性の高い SQL クエリを実行できるようになったことを発表しました。Project Tardigrade は、ETL 形式のワークロードの使用時に、Trino で長時間実行されリソースを大量に使用するクエリのユーザーエクスペリエンスを向上させることを目的としています。Project Tardigrade では、Amazon S3 を使用してバッファリングされた中間データのチェックポイントを作成します。Amazon EMR 6.9 リリースでは、パフォーマンスが重要で長時間実行される SQL ワークロードのために、HDFS でのチェックポイント作成も追加されています。

長時間実行される ETL ワークロードを、費用対効果の高い方法で確実に Trino で実行することは簡単ではありません。なぜなら、失敗したクエリを最初からやり直すとクラスターのリソースを無駄にすることになり、反復クエリ機能がない場合は大規模なクラスターで多大な費用がかかる可能性があるためです。Project Tardigrade は耐障害性の高い新しい実行メカニズムを導入しました。このメカニズムにより、Trino クラスターでは、S3 に収集された中間交換データを使用して、失敗したクエリを再試行することで、クエリの失敗を軽減できます。Amazon EMR チームでは、この機能を HDFS でのチェックポイント作成まで拡張し、Trino クエリのパフォーマンスをさらに向上させました。耐障害性が高く、長時間実行されるクエリのサポートにより、Amazon EMR のユーザーは ETL ワークフローを確実に実行しながら、インタラクティブなタスク実行によるパフォーマンスの向上とコストの削減を実現できるようになりました。Amazon EMR コンソール、CLI、API のいずれかで Trino 設定分類を使用して、Amazon EMR Trino クラスターで耐障害性を高めることができます。

この機能は、Amazon EMR Trino が提供されているすべてのリージョンで使用できます。この機能の詳細については、ドキュメントを参照してください。