Amazon EMR での Presto
特徴と利点
お客様の成功事例
Netflix のお客様事例
Netflix では、ビッグデータ向けの、ANSI-SQL に準拠したインタラクティブなクエリエンジンとして Presto を選択しました。Presto はオープンソースで、拡張性に優れており、Netflix のビッグデータウェアハウス環境の基盤である Hive Metastore や Amazon S3 と連携できます。Netflix では、永続的な Amazon EMR クラスターで Presto を実行し、最大 25 PB の Amazon S3 データストア全体でクエリを迅速かつ柔軟に実行しています。Netflix は Presto に積極的に貢献しており、Amazon EMR を使用して、Presto の独自のビルドを Amazon EMR クラスターで実行する柔軟性を実現しています。平均して、Netflix では Presto クラスターで 1 日あたり最大 3,500 のクエリを実行しています。
Jammp のお客様事例
Jampp は、高度な広告リターゲティング技術を使用してターゲットのユーザーをアプリケーションに誘導するモバイルアプリケーションマーケティングプラットフォームです。Jampp では、独自のコンバージョンベースのリアルタイム入札 (RTB) エンジンを介し、モバイルメディアインベントリを購入することでこれを実現しています。このエンジンでは、18 の RTB エクスチェンジと 150 を超えるモバイル広告ネットワークでインベントリに動的に入札します。Jampp は Amazon EMR で実行されている Presto を活用して、アドバンストアドホックログ分析、複数のソースのデータ結合、複雑なリターゲティングセグメントの計算を行います。Jampp のユーザーベースが 600% 増加したため、複雑な分析クエリの需要も増加しました。Jampp は複雑なマルチコア Python アプリケーションを MySQL で実行するのをやめ、Presto に移行しました。結果的に、パフォーマンスが 12 倍になりました。現在、Jampp では Amazon EMR の Presto を使用して、1 日あたり 40 TB のデータを処理しています。
Cogo Labs のお客様事例
Cogo Labs はスタートアップインキュベーターとして、投資対象の企業や内部チームが使用するマーケティング分析やビジネスインテリジェンス用のプラットフォームを運用しています。急速なイノベーションに対応する OLAP 環境をサポートするために、SQL を標準としてデータの操作を行うことにしました。Cogo Labs は、リアルタイムのクエリパフォーマンス、ANSI-SQL のサポート、Amazon S3 から直接データを処理できることを理由に Presto を選択しました。Amazon EMR で実行される Presto により、100 人以上のデベロッパーとアナリストが、Amazon S3 に保存された 500 TB を超えるデータに対して、データ調査、アドホック分析、レポート作成のための SQL クエリを実行できます。Cogo Labs では、一時的なクラスターと永続的なクラスターを組み合わせて使用しています。また、Amazon EMR とスポットインスタンスの連携を利用してコストを削減しています。
OpenSpan のお客様事例
OpenSpan はオートメーションとインテリジェンスソリューションを提供し、ユーザー、プロセス、技術をつなげて、従業員の生産性に関する詳細情報を取得し、従業員と顧客のやり取りを簡素化します。OpenSpan では、HBase から、Amazon S3 にデータを保存する Amazon EMR の Presto に移行しました。OpenSpan では、SQL インターフェイスと、Amazon S3 からリアルタイムで直接データにクエリを実行できる点を理由に Presto を選択しました。Presto により、膨大な量のデータをすばやく検索し、新しいデータ製品に対しても迅速に繰り返し処理を実行できます。OpenSpan では Parquet ファイル形式を使用しています。Presto への接続には PrestogreSQL を使用しています。OpenSpan は、顧客から日々受け取るギガバイト単位のデータを優れた費用対効果で処理するために、Amazon EMR と Amazon S3 を選択しました。
Kanmu のお客様事例
Kanmu は、日本の金融サービス業界のスタートアップ企業です。消費者のクレジットカード利用状況に基づいて、カードに関連するサービスを提供しています。Kanmu では、Presto の反復的な予備解析を Amazon S3 において優れたインタラクティブスピードとパフォーマンスで実行できる点と、大きなデータセットに対してクエリを実行できるスケーラビリティを理由として、Hive から Amazon EMR の Presto に移行しました。Kanmu では Fluentd-plugin-s3 を使用してデータを Amazon S3 にプッシュします。これは、データを保存し、shib (SQL クエリを実行するための node.js ベースのウェブクライアント) を使用するための、最適化された行列 (ORC) 形式です。