Cloud-Nativeなデータ分析基盤におけるPrestoの活用 / Cloud-Native Data Infrastructure with Presto

Cloud-Nativeなデータ分析基盤におけるPrestoの活用 / Cloud-Native Data Infrastructure with Presto

Hadoop / Spark Conference Japan 2019で話した資料です。
http://hadoop.apache.jp/hcj2019-program/

Eea30a4dd0c47b143eb3b55bb40f6a3e?s=128

satoshihirose

March 14, 2019
Tweet

Transcript

  1. 2.
  2. 3.
  3. 4.
  4. 6.

    • 当時の構成 ◦ MapReduce(mrjob) + MongoDB • 課題 ◦ 集計処理が必要になるたびに

    MapReduce処理を追加する必要が あった ◦ 見たいデータを追加するたびに可視 化のためのウェブアプリを修正する必 要があった ◦ データを気軽に分析できる環境では なかった 2014年当時のSmartNewsデータ基盤の構成と課題 in-house visualization web application
  5. 7.

    Hadoop Conference in Japan 2014 • Facebookが公開したSQL Query Engine •

    大規模データセットに対してもイ ンタラクティブなレスポンスを返 す • Presto自身はデータストレージ を持っていない • 複数のデータソース(Hive, Cassandra, MySQL, etc…)に 対して一度に集計を実行するこ とができる https://tug.red/entry/2014/07/10/150250/
  6. 8.

    Presto/Hiveの導入 • 変更後の構成 ◦ S3 + Presto + Hive •

    コンセプト ◦ ETLバッチ処理はHive, リアルタイム データ集計はPresto ◦ ストレージとコンピューテーションリソー スを分離 ◦ SQLを書ければ誰でもデータ分析がで きるようにする BI Tools, CLI, Data Application
  7. 9.

    EMR+S3によるCloud-Nativeなデータ分析基盤 [メリット] • Less Maintenance: マネージドサービスを 活用することで運用を少なく • Elasticity: long

    runningなHadoopクラスタ の他にも、必要に応じてtransientなHadoop クラスタを活用できる。ワークロードに応じて クラスターの規模を増減できる • DevOps: 用途やチームに応じてクラスター を使い分けることで、依存性が局所化され、 チームがownershipを持てる 広告配信 チーム Hive MetaStore multi EMR clusters S3 Buckets ニュース配信 チーム multi EMR clusters S3 Buckets Hive MetaStore
  8. 14.

    • PrestoやHiveのバージョンアップに追従する仕組みの整備 ◦ 検証環境の整備など • 監視の強化 ◦ 問題のあるクエリの実行検知 ◦ ETL処理結果のvalidation

    ◦ SLI/SLOの設定 • データフォーマットや設定の最適化 ◦ RCFile から ORC への移行など • Streaming Processingの拡充 SmartNewsデータ分析基盤の課題と今後
  9. 15.

    Presto Software Foundationの設立 • 2019年1月にPrestoの開発コミュニ ティをサポートするためStarburst Data, Arm Treasure Data,

    Qubole などのengineerにより設立 • 今後はこれまでのprestodb/presto (2019/3時点最新バージョンが 0.217)がprestosql/presto(2019/3時 点最新バージョンが305)に分岐し、開 発が進んでいく