Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Stream_PipelineのSelf_Service化の心得共有.pdf
Search
Siyuan Liu
January 29, 2025
Programming
34
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Stream_PipelineのSelf_Service化の心得共有.pdf
Siyuan Liu
January 29, 2025
Other Decks in Programming
See All in Programming
ジョジョの世界をXRで再現する
mofurune
0
160
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
430
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
170
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
590
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
5.2k
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
220
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
190
ChromeでローカルLLM
ryu1013
0
140
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
270
AIに “答え“を書かせるのを やめてみた
___akari11
0
120
Featured
See All Featured
A Soul's Torment
seathinner
8
3.8k
New Earth Scene 8
popppiees
4
2.7k
Side Projects
sachag
456
43k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
380
30 Presentation Tips
portentint
PRO
1
430
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
540
A designer walks into a library…
pauljervisheath
211
25k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
710
GitHub's CSS Performance
jonrohan
1033
470k
Optimising Largest Contentful Paint
csswizardry
37
4k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
Transcript
1 Confidential Stream PipelineのSelf Service化の心得共有 - Data Platform - 2025/01/24
@siyuan.liu
2 Confidential 自己紹介 氏名:Liu Siyuan ニックネーム: シエン 出身:中国北京 趣味:ジムでの筋トレ、アウトドアスポーツ(最近あまり動かない)
経歴: • 前職ではAirflowを利用し、 分析システムのバックエンド開発を経験した。 • 2023年5月メルカリに入社し、 CDC PipelineのViewのコードリメーク、 Stream Pipelineのコスト削減、 Stream PipelineのSelf-Service化など を経験した
3 Confidential Agenda • 背景と課題 ◦ Stream Pipelineの過去の状況
◦ 過去の状況における課題 ◦ Stream PipelineのSelf Service化とは • 解決方法 ◦ 課題1の解決方法 ◦ 課題2の解決方法 • プロジェクトの効果 • 今後の作業
4 Confidential Stream Pipelineの過去の状況 これまで、Stream Pipelineの構築と管理はData Platformチームによって中央管理方式で行わ れていて、これらのアプリケーションは主にData Platformチームが管理するNamespaceで稼働 しています。
5 Confidential 過去の状況における課題 課題1:リソース集中による管理者の負担増 課題2:手作業による管理者の負担増 • リソースはData Platformチームが管理している Namespaceに集中しています。そのため、他のチームが リソースを管理する際には、Data
Platformチームを介さ なければなりません。これにより、Data Platformチーム の負担が大きくなっています。 • Data Platformチームは、他のチームからのリクエストに 対して手動で設定を行う必要があるため、作業負担が 大きくなっています。 • さらに、事業の拡大に伴いリクエストの数が増え続けて おり、それに伴ってData Platformチームの作業量も増 加し続けています。 Stream PipelineのSelf Service化による課題解決
6 Confidential Stream PipelineのSelf Service化とは Stream Pipelineを構築、管理、運営するプロセスを、プラットフォームエンジニアに依存せずに、 各事業部のエンジニアなど、技術的な専門知識がなくても行えるようにする取り組みを指しま す。
一般的に、Self Serviceには以下の要素が必要です: 1. アーキテクチャーの分散設計とリソースの分散管理 2. 自動化ツールにより環境やインフラの構築の自動化 3. 利用者向けの関連ドキュメントの整備
7 Confidential 課題1(リソース集中による管理者の負担増 )の解決方法 — 過去のシステムのアーキテクチャー
8 Confidential 課題1(リソース集中による管理者の負担増 )の解決方法 リソースを各チームが管理するNamespaceにマイグレーションすることで、Data Platformチームの負担が減少しています。
9 Confidential 課題2(手作業による管理者の負担増 )の解決方法 — 方法1:Terraform Moduleによる自動化 これまで、Stream Pipelineを構築するためには、以下のリソースを手動で各マイ クロサービスに設定しなければなりませんでした。
• Service Account Permissions ◦ Secret Manager Access Permission ◦ Bucket Access Permission • GCS Bucket Resources ◦ Flink Checkpoint, Savepoint, HA Bucket • SecretManager ◦ Datadog Api Key ◦ Confluent Schema Registry Key
10 Confidential 課題2(手作業による管理者の負担増 )の解決方法 — 方法1:Terraform Moduleによる自動化 Terraform Moduleの開発により、Terraform ModuleをImportするだけで、全ての
リソースが自動的に作成できるようになりました。使い方は以下の通りです。
11 Confidential 例えば、 過去には、10チームからリクエストがあった場合、設定回数は10 x 5 = 50 回
現在では、10 x 1 = 10回にまで減少し、以前と比べて5倍の減少となっていま す。 課題2(手作業による管理者の負担増 )の解決方法 — 方法1:Terraform Moduleによる自動化
12 Confidential 課題2(手作業による管理者の負担増 )の解決方法 — 方法2:Github Action UIによる自動化 これまで、Stream Pipelineを構築するすためには、十数個の設定ファイルを手動
で作成する必要がありましたが、自動化ツールの開発により、全てのファイルを Github ActionのUIを通じて自動的に作成できるようになっています。
13 Confidential 課題2(手作業による管理者の負担増 )の解決方法 — 方法2:Github Action UIによる自動化 十数個の設定ファイル 自動生成
14 Confidential 課題2(手作業による管理者の負担増 )の解決方法 — 方法3:ドキュメント整備による Self Service化 これまで、Data Platformチームの担当者はリクエスト対して、自ら手動で設定を
行う必要がありましたが、
15 Confidential 課題2(手作業による管理者の負担増 )の解決方法 — 方法3:ドキュメント整備による Self Service化 ドキュメント整備により、このドキュメントに参照するとことで、誰でも自分で設定 を行えるようになっています。
16 Confidential プロジェクトの効果 1. Stream Pipelineの構築依頼に関して、Data Platformチームの作業が不要 になりした。 2.
各チームは自らStream Pipelineの設定を変更ができ、リリースも自分で行う ことができます。 3. リソースが分散管理できるようになるため、各チームのNamespaceでリソー スの使用量や費用の確認も簡単になります。
17 Confidential 今後の作業 • 既存のPipelineを引き続きSelf Serviceの環境に移行します。 • 自動化率をさらに上げます。
◦ Schemaの自動Import ◦ Platform Client Version自動更新 ◦ sbt releaseプロセスの改善
18 Confidential ご清聴ありがとうございました 2025/01/24 @siyuan.liu