SlideShare a Scribd company logo
Spring Cloud Data Flow の紹介
http://www.yahoo.co.jp/
ヤフー株式会社 浅沼 孝信
2017年7月27日
自己紹介
• 名前
• 浅沼 孝信
• 業務履歴
• 2012年新卒入社
• Hadoop周りの業務(HDFS ECの開発など)
• 最近はデータフロー
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
2
目次
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
3
• Spring Cloud Data Flow とは
• 開発された動機
• ステート管理
• まとめ
目次
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
4
• Spring Cloud Data Flow とは
• 開発された動機
• ステート管理
• まとめ
Spring Cloud Data Flow とは
• ストリーム処理とバッチ処理に関する
Springアプリケーションの統合デプロイメント
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
5
Spring Cloud Data Flow
Spring Cloud Stream Spring Cloud Task
Spring
Integration
Spring Boot Spring Batch
BatchStreaming
deploy
use use
Spring Cloud Data Flow とは
• データフローの作成
- Web UI
- UNIXプログラミング風のDSL(シェル)
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
6
http --port=12345 | filter | hdfs
Spring Cloud Data Flow とは
• データフローの作成
- Web UI
- UNIXプログラミング風のDSL(シェル)
各プロセスはSpring Bootアプリケーションとして起動
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
7
http --port=12345 | filter | hdfs
Spring Cloud Data Flow とは
• デプロイメント
さまざまなモダンなプラットフォームに対する
SPI実装が用意されている
- Cloud Foundry
- Kubernetes
- YARN
- Mesos
- local(開発用)
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
8
Spring Cloud Data Flow とは
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
9
SCDF
Server
REST-API
Deployer SPI
deploy
RDBMS
Data
Source
Data
Source
Web UI Shell
目次
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
10
• Spring Cloud Data Flow とは
• 開発された動機
• ステート管理
• まとめ
開発された動機
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
11
SCDF
Server
REST-API
Deployer SPI
Spring XD Spring Cloud Data Flow
• Spring Cloud Data Flowの前身
• 普通のサーバー上で動く
• モノリシックな設計
• Spring XDの課題を踏まえて再設計
• マイクロサービスの思想
• コンテナプラットフォームに最適化
• 2016年7月に1.0 GAがリリース
XD Admin
ZooKeeper
XD Container XD Container
M
M
M
M
目次
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
12
• Spring Cloud Data Flow とは
• 開発された動機
• ステート管理
• まとめ
ステート管理
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
13
• The Twelve-Factor App
– Herokuの中の人たちが作成
– クラウドネイティブなアプリケーションを
作るのに必要な規則・指針
VI. プロセス
アプリケーションを1つもしくは複数の
ステートレスなプロセスとして実行する
ステート管理
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
14
SCDF
Server
REST-API
Deployer SPI
deploy
RDBMS
Stateless
• Spring Cloud Data Flowが生成するSpring Bootは
ステートレスなアプリケーション
ステート管理
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
15
SCDF
Server
REST-API
Deployer SPI
deploy
RDBMS
Stateful
• ステートが発生する部分はコンテナプラットフォームの
外で管理する
データフローの定義など
データフローの解析
Spring Boot間のメッセージング
Stateless
目次
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
16
• Spring Cloud Data Flow とは
• 開発された動機
• ステート管理
• まとめ
まとめ
• Spring Cloud Data Flow とは
ストリーム処理とバッチ処理の統合デプロイメント
• マイクロサービスの思想でSpring XDを再設計
クラウドネイティブなプラットフォームに最適化されている
• コンテナプラットフォームの中では
ステートレスなアプリケーションが稼働している
ステートが発生する部分は外で管理する
Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
17

More Related Content

PDF
Apache Kafka 0.11 の Exactly Once Semantics
PDF
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
PDF
Oracle GoldenGate入門
PPTX
Hadoop -NameNode HAの仕組み-
PPTX
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
PDF
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
PDF
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
PPTX
本当は恐ろしい分散システムの話
Apache Kafka 0.11 の Exactly Once Semantics
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Oracle GoldenGate入門
Hadoop -NameNode HAの仕組み-
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
本当は恐ろしい分散システムの話

What's hot (20)

PDF
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
PPTX
Spring CloudとZipkinを利用した分散トレーシング
PDF
Ingress on Azure Kubernetes Service
PDF
Akkaとは。アクターモデル とは。
PPTX
Amazon EKS によるスマホゲームのバックエンド運用事例
PDF
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
PDF
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
PDF
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
PDF
分散トレーシング技術について(Open tracingやjaeger)
PDF
Amazon Aurora - Auroraの止まらない進化とその中身
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
PPTX
マイクロサービスにおける 結果整合性との戦い
PDF
イミュータブルデータモデルの極意
PPTX
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
PPTX
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PPTX
大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
PDF
Dockerからcontainerdへの移行
PDF
Apache Hadoop YARNとマルチテナントにおけるリソース管理
PPTX
Apache Avro vs Protocol Buffers
PDF
マルチテナント化で知っておきたいデータベースのこと
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
Spring CloudとZipkinを利用した分散トレーシング
Ingress on Azure Kubernetes Service
Akkaとは。アクターモデル とは。
Amazon EKS によるスマホゲームのバックエンド運用事例
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
分散トレーシング技術について(Open tracingやjaeger)
Amazon Aurora - Auroraの止まらない進化とその中身
アーキテクチャから理解するPostgreSQLのレプリケーション
マイクロサービスにおける 結果整合性との戦い
イミュータブルデータモデルの極意
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
Dockerからcontainerdへの移行
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Apache Avro vs Protocol Buffers
マルチテナント化で知っておきたいデータベースのこと
Ad

Similar to Spring Cloud Data Flow の紹介 #streamctjp (20)

PPTX
Spring Cloud Data Flow で構成される IIJ IoTサービス
PDF
SpringベースのCloud Native Application
PDF
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
PPTX
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
PPTX
SpringOne Platform Replay -Pivotal Cloud Foundry-
PPTX
Circle of Code with Cloud Foundry
PPTX
SpringOne 2015 報告会 - Lattice + Spring Cloud Netflix
PDF
Cloud Foundry Summit 2017 Recap
PDF
Apache NiFi の紹介 #streamctjp
PDF
Cloud Native Hadoop #cwt2016
PDF
What happens in Spring Cloud Netflix
PDF
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
PDF
State of the art Stream Processing #hadoopreading
PPTX
OCP, Kubernetes ハイパースケールアーキテクチャ 導入の道のり - OpenStack最新情報セミナー(2016年7月)
PDF
Hadoop Summit 2016 San Jose ストリーム処理関連の報告 #streamctjp
PDF
データが覗いたOpenStack Summit Vancouver
PPTX
Flumeを活用したAmebaにおける大規模ログ収集システム
PPTX
JJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めた
PDF
Serverless services on_aws_dmm_meetup_20170801
PDF
CNCF Updates 2019 Winter version and Knative
Spring Cloud Data Flow で構成される IIJ IoTサービス
SpringベースのCloud Native Application
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
SpringOne Platform Replay -Pivotal Cloud Foundry-
Circle of Code with Cloud Foundry
SpringOne 2015 報告会 - Lattice + Spring Cloud Netflix
Cloud Foundry Summit 2017 Recap
Apache NiFi の紹介 #streamctjp
Cloud Native Hadoop #cwt2016
What happens in Spring Cloud Netflix
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
State of the art Stream Processing #hadoopreading
OCP, Kubernetes ハイパースケールアーキテクチャ 導入の道のり - OpenStack最新情報セミナー(2016年7月)
Hadoop Summit 2016 San Jose ストリーム処理関連の報告 #streamctjp
データが覗いたOpenStack Summit Vancouver
Flumeを活用したAmebaにおける大規模ログ収集システム
JJUG CCC 2017 Spring Seasar2からSpringへ移行した俺たちのアプリケーションがマイクロサービスアーキテクチャへ歩み始めた
Serverless services on_aws_dmm_meetup_20170801
CNCF Updates 2019 Winter version and Knative
Ad

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

PDF
ゼロから始める転移学習
PDF
継続的なモデルモニタリングを実現するKubernetes Operator
PDF
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
PDF
オンプレML基盤on Kubernetes パネルディスカッション
PDF
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
PDF
Persistent-memory-native Database High-availability Feature
PDF
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
PDF
eコマースと実店舗の相互利益を目指したデザイン #yjtc
PDF
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
PDF
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
PDF
ビッグデータから人々のムードを捉える #yjtc
PDF
サイエンス領域におけるMLOpsの取り組み #yjtc
PDF
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
PDF
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
PDF
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
PDF
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PDF
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
PDF
「新しいおうち探し」のためのAIアシスト検索 #yjtc
PDF
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ゼロから始める転移学習
継続的なモデルモニタリングを実現するKubernetes Operator
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
オンプレML基盤on Kubernetes パネルディスカッション
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
Persistent-memory-native Database High-availability Feature
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
eコマースと実店舗の相互利益を目指したデザイン #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
ビッグデータから人々のムードを捉える #yjtc
サイエンス領域におけるMLOpsの取り組み #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
「新しいおうち探し」のためのAIアシスト検索 #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc

Spring Cloud Data Flow の紹介 #streamctjp

  • 1. Spring Cloud Data Flow の紹介 http://www.yahoo.co.jp/ ヤフー株式会社 浅沼 孝信 2017年7月27日
  • 2. 自己紹介 • 名前 • 浅沼 孝信 • 業務履歴 • 2012年新卒入社 • Hadoop周りの業務(HDFS ECの開発など) • 最近はデータフロー Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 2
  • 3. 目次 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 3 • Spring Cloud Data Flow とは • 開発された動機 • ステート管理 • まとめ
  • 4. 目次 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 4 • Spring Cloud Data Flow とは • 開発された動機 • ステート管理 • まとめ
  • 5. Spring Cloud Data Flow とは • ストリーム処理とバッチ処理に関する Springアプリケーションの統合デプロイメント Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 5 Spring Cloud Data Flow Spring Cloud Stream Spring Cloud Task Spring Integration Spring Boot Spring Batch BatchStreaming deploy use use
  • 6. Spring Cloud Data Flow とは • データフローの作成 - Web UI - UNIXプログラミング風のDSL(シェル) Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 6 http --port=12345 | filter | hdfs
  • 7. Spring Cloud Data Flow とは • データフローの作成 - Web UI - UNIXプログラミング風のDSL(シェル) 各プロセスはSpring Bootアプリケーションとして起動 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 7 http --port=12345 | filter | hdfs
  • 8. Spring Cloud Data Flow とは • デプロイメント さまざまなモダンなプラットフォームに対する SPI実装が用意されている - Cloud Foundry - Kubernetes - YARN - Mesos - local(開発用) Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 8
  • 9. Spring Cloud Data Flow とは Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 9 SCDF Server REST-API Deployer SPI deploy RDBMS Data Source Data Source Web UI Shell
  • 10. 目次 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 10 • Spring Cloud Data Flow とは • 開発された動機 • ステート管理 • まとめ
  • 11. 開発された動機 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 11 SCDF Server REST-API Deployer SPI Spring XD Spring Cloud Data Flow • Spring Cloud Data Flowの前身 • 普通のサーバー上で動く • モノリシックな設計 • Spring XDの課題を踏まえて再設計 • マイクロサービスの思想 • コンテナプラットフォームに最適化 • 2016年7月に1.0 GAがリリース XD Admin ZooKeeper XD Container XD Container M M M M
  • 12. 目次 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 12 • Spring Cloud Data Flow とは • 開発された動機 • ステート管理 • まとめ
  • 13. ステート管理 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 13 • The Twelve-Factor App – Herokuの中の人たちが作成 – クラウドネイティブなアプリケーションを 作るのに必要な規則・指針 VI. プロセス アプリケーションを1つもしくは複数の ステートレスなプロセスとして実行する
  • 14. ステート管理 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 14 SCDF Server REST-API Deployer SPI deploy RDBMS Stateless • Spring Cloud Data Flowが生成するSpring Bootは ステートレスなアプリケーション
  • 15. ステート管理 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 15 SCDF Server REST-API Deployer SPI deploy RDBMS Stateful • ステートが発生する部分はコンテナプラットフォームの 外で管理する データフローの定義など データフローの解析 Spring Boot間のメッセージング Stateless
  • 16. 目次 Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 16 • Spring Cloud Data Flow とは • 開発された動機 • ステート管理 • まとめ
  • 17. まとめ • Spring Cloud Data Flow とは ストリーム処理とバッチ処理の統合デプロイメント • マイクロサービスの思想でSpring XDを再設計 クラウドネイティブなプラットフォームに最適化されている • コンテナプラットフォームの中では ステートレスなアプリケーションが稼働している ステートが発生する部分は外で管理する Copyright (C) 2016 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止 17