415 Views
August 27, 18
スライド概要
https://yj-meetup.connpass.com/event/96526/stream processing,paas,bigdata
2023年10月からSpeaker Deckに移行しました。最新情報はこちらをご覧ください。 https://speakerdeck.com/lycorptech_jp
StreamPaaSのご紹介 Shingo Furuyama 2018/08/23 Yahoo! JAPAN MEETUP -データサイエンス&プラットフォーム-
1. 自己紹介 2. そもそもストリーム処理ってなに? 3. StreamPaaSについて
1. 自己紹介 2. そもそもストリーム処理ってなに? 3. StreamPaaSについて
自己紹介 2007 Simplex Technology で金融まわりのいろいろ 2011 ノーチラステクノロジーズで業務バッチ on Hadoop -- ここからYahoo! JAPAN 2014 金融まわりのエンジニア&BD/DDなどいろいろ 2016 データプラットフォーム周りの部長などいろいろ 2018 データプラットフォーム周りのリサーチなどいろいろ http://jp.linkedin.com/in/shingofuruyama
自己紹介 2007 Simplex Technology で金融まわりのいろいろ 2011 ノーチラステクノロジーズで業務バッチ on Hadoop -- ここからYahoo! JAPAN 2014 金融まわりのエンジニア&BD/DDなどいろいろ 2016 データプラットフォーム周りの部長などいろいろ 2018 データプラットフォーム周りのリサーチなどいろいろ http://jp.linkedin.com/in/shingofuruyama
1. 自己紹介 2. そもそもストリーム処理ってなに? 3. StreamPaaSについて
そもそもストリーム処理ってなに? • ストリーム処理とは • ストリーム処理のイメージ図 • ストリーム処理の使いどころ
ストリーム処理とは • • • http://www.mmds.org • https://www.manning.com/books/big-data Continuous processing on data that is continuously produced 溜めてから処理するモデル(バッチ処 理)と比べて、低レイテンシ・低ス ループットになりやすい その筋で有名な”Mining of Massive Datasets”も触れられているが、 sketchなどアルゴリズムの検討寄りな 話題が多い(この筋だと「オンライン 処理」と呼ばれることも) ここでの話はシステムアーキテクチャ やミドルウェア寄りで、”Principles and best practices of scalable realtime data systems” とかの方が 近い
ストリーム処理のイメージ図 ストリーム処理 • アプリケーション ストリーム処理 ストレージ Source • • 継続的に発生する データの生成元 フロントエンドサー バーのログとか tweetとかセンサー データとか • • • 処理のためにある程 度の保持期限でデー タをためておく 直接処理すると耐障 害性が事実上絶無に なるのでその対策 Kafkaとか ストリーム処理 実行エンジン • • データを読んで結果 となるデータを変換 する StormとかFlinkとか 実行エンジン上で動 作するアプリケー ション Sink • • • 結果をおいておくス トレージ Redis/Cassandra/R DBMSなど Kafkaにして別アプ リケーションの入力 にすることも
ストリーム処理の使いどころ アルゴリズムやMLに フレッシュなデータを渡す 低レイテンシで 人間に干渉 • • • • • 証券取引:時間優先の原則により利益に直結 不正検知:不正の発生から対策までの時間を短く する その他いろんな機械学習:広告など。アルゴリズ ム vs データのフレッシュネス的な話題はある アナリティクス:はやく結果がわかると判断の効 率が上がる可能性がある Push:いい感じのタイミングでPush通知してリテ ンションに繋げる
1. 自己紹介 2. そもそもストリーム処理ってなに? 3. StreamPaaSについて
StreamPaaSについて • 解きたかった問題 • Architecture overview - Application deployment • Architecture overview - Dataflow
解きたかった問題 • • https://research.fb.com/publications/realtime-data-processing-at-facebook/ • • https://www.slide share.net /A mazonWeb Service s/netfl ix -key stone -sp aas -realt ime- stream -proce ss ing- as -a- service-a bd32 0-re invent -20 17 既存PFのユーザー/オペレーターに話 を聞いたり技術調査などをした結果、 デプロイメントにつらみが集約されて いるという見立てでストリーム処理の PaaSであるStreamPaaSを設計 ちょうど検討が終わったくらいの頃に FBから出た論文で“Ease of Deployment”という良い言葉を使って いて、これがやりたかったこと NetflixのKeystone SPaaSとはだいぶ 近い(名前見たときはかぶっててうー んとなったが気にしないことにした) ちなみにだいたい設計が終わった頃に この辺りの情報がpublicになってきた ので、初期の頃は参考にしてない
Architecture overview - Application deployment Build system Application can be replicated ScrewDriver Source Artifactory Stream processor API Sink Github Web UI Deploy, start, stop, and delete application Stream processor
Architecture overview - Dataflow Source - Extract data required by user application - Load output of user application into many kind of sink - Cassandra/RDBMS/File System Kafka for delivery Storm/NiFi HDFS Kafka for delivery for stream processing Sink Other Application Storm/Flink for stream processing
おわりに
その後… • 部長になりStreamPaaSに直接関与することはなくなった けど、組織・PaaS機能・アプリケーション・実行環境はそ れぞれいい感じにスケールしている • 最近はSysML的な流れもあり(実際のところミドルウェア もハードウェアもそれなりにボリュームがあるので色々な つらみがある)、StreamPaaSの特性を使ってストリーム 処理アプリケーションのAuto Tuningとかをやりたいと画 策中
Attribution-ShareAlike 2.0 Generic (CC BY-SA 2.0) https://creativecommons.org/licenses/by-sa/2.0/ https://www.flickr.com/photos/pictoquotes/23555254519/
EOP