Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
吉田_LT大会_20240226.pdf
Search
ShinyaYoshidaO
February 26, 2024
0
80
吉田_LT大会_20240226.pdf
ShinyaYoshidaO
February 26, 2024
Tweet
Share
More Decks by ShinyaYoshidaO
See All by ShinyaYoshidaO
吉田_LT大会_20241028.pdf
shinyayoshidao
0
44
吉田_LT大会_20230815.pdf
shinyayoshidao
0
150
Featured
See All Featured
Scaling GitHub
holman
458
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
390
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
A Tale of Four Properties
chriscoyier
156
23k
Designing for Performance
lara
604
68k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
32
1.8k
Transcript
AWSにおけるストリーム データ処理サービス概要 Amazon MSK / Amazon KDS 2024/02/26 (株)セゾン情報システムズ 吉田
慎弥
自己紹介 氏名:吉田 慎弥 所属:(株)セゾン情報システムズ 経歴:Webアプリケーション開発(2022.01~2023.03) • リアルタイムデータ活用エンジン開発(2023.04~) 直近の目標: AWS Certified
SysOps Administrator – Associate取得 1
アジェンダ ストリームデータ ストリームデータ処理サービス Amazon MSK Amazon Kinesis Data Streams 相違点
Amazon MSK ハンズオン 所感 まとめ 2
ストリームデータ 低レイテンシー処理を目的とした (多数のデータソースから)継続して 大量に送信されるデータ ✓リアルタイムデータ分析 ✓IoT アプリケーション ✓金融分析 ✓リアルタイムレコメンデーション 3
ストリームデータ処理サービス 処理の全体像 データの流れ ✓データの保持 ✓他サービスへのデータ連携 etc 4 データ発生 取込 変換
分析 アクション 保存 Producer Consumer
Amazon MSK 5 Amazon Kinesis Data Streams
Amazon MSK 6 特徴 説明 Apache Kafkaベース オープンソースのストリーム処理プラット フォームであるApache Kafkaを基盤にしている
セットアップ・運用の柔軟性 カスタマイズが可能で、Apache Kafkaに精通 しているユーザーには適している Kafkaエコシステムの利用 Kafka StreamsやKafka Connectなど、 Kafkaのエコシステムを活用できる 開発者がネットワークや ストレージを設定 クラスタを作成する際に、ネットワークや ストレージを手動で設定が必要 フルマネージドで可用性が高く、セキュアなApache Kafka サービス
Amazon Kinesis Data Streams 7 特徴 説明 AWSネイティブ AWSが独自に提供するストリーム処理プラット フォーム
より簡単なセットアップ・運用 AWSの管理が詳細に及び、セットアップや運用が 容易 AWSサービスとの連携 AWS Lambda, Amazon S3, Amazon Redshiftなど、 他のAWSサービスとの親和性が高い 完全マネージド型サービス ネットワークやストレージなど、設定や運用が自 動化され、ユーザーの手間を省ける AWSネイティブなサーバーレスストリーミングデータサービス
相違点 8 Amazon MSK Amazon Kinesis Data Streams Apache Kafkaベース
AWSネイティブ セットアップ・運用の柔軟性 より簡単なセットアップ・運用 Kafkaエコシステムの利用 AWSサービスとの連携 開発者がネットワークや ストレージを設定 完全マネージド型サービス
Amazon MSK ハンズオン アーキテクチャ(右図) 構築の手間 ✓VPC(マルチAZ構成) ✓セキュリティグループ 運用の手間 ✓手動スケーリング ⇒サーバレスの優位性
9
所感 MSKの役割 ✓システム間のハブとして共通機能を提供するプラットフォーム PJでMSKが採用された理由 ✓ストリーム処理を実施するフレームワークがサポートしている ✓利用実績、運用負荷、構築期間が優秀 今後の展望 ✓他の技術要素も、特徴や役割・採用理由をPJナレッジとしてまとめる ✓お客様がシステムにより実現したいことに適う提案や開発活動を目指す 10
まとめ お客様のニーズや目的に応じて 最適なストリームサービスを選ぶことが重要 ✓運用コストも大きな検討要素のひとつ 参画するPJの技術要素を題材に学ぶススメ ✓直接的に業務に活かせ、生きた知識となる ✓お客様と会話する際に説得力が高まる 11
ご清聴ありがとうございました 12
参考資料 ストリーミングデータとは - AWS https://aws.amazon.com/jp/what-is/streaming-data/ 【AWS Black Belt Online Seminar】Amazon
Managed Streaming for Apache Kafka (Amazon MSK) – YouTube https://www.youtube.com/watch?v=q5loJWz-uiY&t=618s 「疎結合」を実現するメッセージングサービスの選択と利用 - AWS DevAx::Connect On-demand https://pages.awscloud.com/rs/112-TZM- 766/images/DevAx_connect_season1_Day2_MessagingService_%E9%85%8D %E5%B8%83.pdf AWSのストリーム処理向けメッセージングサービスKDS(Kinesis)・ MSK(Kafka)・SQSの特徴 – Qiita https://qiita.com/sigmalist/items/1a65b0b0456516e2056b 13
メッセージングサービス メリット ✓ パフォーマンス向上 ✓ 信頼性向上 ✓ 精度の高い(独立的な)拡張性 ✓ 分散したシステム構築
モデル ✓ キュー(SQS) ✓ ストリーム(MSK / Kinesis) ✓ トピック(SNS) ✓ バス(EventBridge) • 有する機能 ✓ メッセージの永続化 ✓ キューの冗長化 ✓ 分散処理 ✓ メッセージの管理 ✓ ルーティング ✓ セキュリティ ✓ 認証など 14
Apache Kafka 全体図: データの流れ ✓Zookeeper:トピック・パーテーション(分散キュー)のメタ情報を管理 ✓Broker(ブローカー):Message(メッセージ)の受信・配信 ✓トピック:メッセージを種別で管理 ✓パーテーション:ブローカー上に配置され、トピックのメッセージを格納する 運用負担の大きさが課題 ✓Kafkaクラスターの環境構築
✓ブローカーやZookeeperの運用、スケールの管理・監視など 15 Producer Kafka Cluster Consumer Message Message Broker Broker Broker Zookeeper
Amazon MSK(サーバレス) Kafkaクラスターのスケーリングを自動で最適化 ✓ストレージ(=垂直) ✓ブローカー数(=水平) ✓ブローカーサイズ(=垂直) ※プロビジョンドでは手動で設定する必要があり、ブローカーサイズを除き拡張のみ可能。 ※水平スケーリング時に、パーテーションの再割り当てが必要。 ⇒運用負担を最小限にすることが可能 16