Successfully reported this slideshow.
Your SlideShare is downloading. ×

SparkをRESTfulに利用できるApache Livyを導入した話 #hcj2019 #ApacheSpark #ApacheLivy

SparkをRESTfulに利用できるApache Livyを導入した話 #hcj2019 #ApacheSpark #ApacheLivy

Download to read offline

2019年3月14日開催された Hadoop / Spark Conference Japan 2019 のライトニングトークで発表した資料です。
Apache SparkをAPI経由でRESTfulに利用できるApache Livyをプロダクション環境に導入した話になります。
Apache Livyを入れることで、jupyterやAirflowなど他のシステムとの連携も簡単にすることが可能になります。
https://hcj2019.eventbrite.com/

2019年3月14日開催された Hadoop / Spark Conference Japan 2019 のライトニングトークで発表した資料です。
Apache SparkをAPI経由でRESTfulに利用できるApache Livyをプロダクション環境に導入した話になります。
Apache Livyを入れることで、jupyterやAirflowなど他のシステムとの連携も簡単にすることが可能になります。
https://hcj2019.eventbrite.com/

More Related Content

More from Yahoo!デベロッパーネットワーク

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

SparkをRESTfulに利用できるApache Livyを導入した話 #hcj2019 #ApacheSpark #ApacheLivy

  1. 1. SparkをRESTfulに利用できる Apache Livyを導入した話 Hadoop / Spark Conference Japan 2019 ヤフー株式会社 植草 智輝
  2. 2. 自己紹介 経歴/利用技術 • 2016-2018 : コマース系データETL & OLAP基盤開発 • Hive on Tez (ETL) • Apache Kylin/Apache HBase (OLAP) • Apache Airflow (Workflow Engine) • 2018-2019 : 全社HadoopクラスタのDevOps • Apache Hadoop全般 (運用/改善) • Apache Spark (推進) • Apache Livy (検証/導入) 趣味 • 海外ドラマ鑑賞 データ&サイエンスソリューション統括本部 データプラットフォーム本部 グリッド部 HadoopDevOps 植草 智輝 @tmk_ueks 2
  3. 3. Agenda • Apache Livyの紹介 • 導入モチベーション • 冗長化(HA)の苦労話 • まとめ 3
  4. 4. Apache Livy • ClouderaとMicrosoftが開発したOSS • SparkをRESTfulに利用できるAPIサーバー • Amazon EMR, Microsoft HDInsight, IBM Cloudなどで利用可能 • REST APIを利用して柔軟にSparkの実行が可能 • 現在はApacheのincubatorプロジェクト • 最新verは0.5.0 4
  5. 5. 導入のモチベーション • もっと柔軟にSparkを利用できるようにして、外部システムとの連携性を高めたい • マルチテナント環境でSparkジョブの安全に行いたい(設定値の制限など) • Jupyter/Zeppelinなどのインタラクティブなノートブックを使いたい 5
  6. 6. Yahoo! JAPANのクラスタコンポーネント API HiveServer2 Oozie HttpFS Query Processing Hive Pig SparkSQL Execution Engine Tez MapReduce Spark Resource Management YARN File System HDFS 6
  7. 7. Yahoo! JAPANのクラスタコンポーネント API HiveServer2 Oozie Livy HttpFS Query Processing Hive Pig SparkSQL Execution Engine Tez MapReduce Spark Resource Management YARN File System HDFS 7
  8. 8. 構成 (導入検討中…) LB Livy Server HDFS Driver YARN Executor Executor Executor Executor Zookeeper Hadoopクラスタ Kerberos Livy Server Livy Server 8
  9. 9. 苦労1: 認証 LB Livy Server HDFS YARN ZookeeperKerberos Livy Server Livy Server spnego Driver Executor Executor Executor Executor 9 ✖ ✖ Hadoopクラスタ
  10. 10. 苦労2: セッション情報 LB Livy Server HDFS YARN Zookeeper Hadoopクラスタ Kerberos Livy Server Livy Server 上書き 書き込み ID:13 ID:13 ID:12 書き込み Driver Executor Executor Executor Executor 10
  11. 11. LIVY-11 11
  12. 12. LIVY-11 12
  13. 13. 結論 : 構成 LB Livy Server HDFS Driver YARN Executor Executor Executor Executor Zookeeper Hadoopクラスタ Kerberos Livy Server Ambari オートリスタート 13
  14. 14. • SparkジョブがLivy経由でされるようになった • 運用側が設定値の制限などをかけられるため、安全性が増した • 特別な設定が不要となり、クライアント側の負担が減った • ワークフローエンジンなどの外部システムとの連携もしやすくなった • 各自のJupyter/ZeppelinからSparkを利用可能になった • notebookの恩恵を受けれるようになった(データの視認性など) • 分析/検証/ジョブ開発などのサイクルが早くなった • Sparkの利用者が増えた 導入後 14
  15. 15. まとめ • SparkをRESTfulなサービスとして、柔軟な実行が可能になる • Jupyter/Zeppelinなどのnotebookの恩恵を受けれる • 頑張って冗長構成を取ろうとすると、苦労する • 公式での対応がまだされていない(時間取れたら対応します。) • 負荷分散が出来ない • (YJの環境だと)Kerberos認証周りで特殊な設定が必要だった 15

×