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
serverless.pdf
Search
Makky12
February 27, 2020
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
serverless.pdf
Makky12
February 27, 2020
More Decks by Makky12
See All by Makky12
Atlassian Cloudサポート業務でのAIエージェント活用事例
smt7174
0
1.2k
「休む」重要さ
smt7174
17
17k
Amplify Gen2でbackend.tsにCDKを定義する/しない事によるCDKの挙動の違いとユースケース
smt7174
1
700
AI全盛の今だからこそ、あえてもう一度振り返るAPIの基礎
smt7174
3
250
AIエージェントを構築して感じた、AI時代のCDKとの向き合い方
smt7174
1
430
JAWS DAYS 2026でAIの「もやっと」感が解消された話
smt7174
1
220
AWS CDK「読めるけど書けない」を脱却するファーストステップ
smt7174
3
500
ブログの作成に音声AIツールを使って音声入力しようとした話
smt7174
1
330
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
250
Other Decks in Programming
See All in Programming
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
250
The Good Stuff, Not the Slop: Engineering High-Quality Android Apps with Modern AI Tooling
danybony
1
250
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
120
AIエージェント時代のコードレビューを設計する
nogu66
6
2.7k
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
2.3k
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
700
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
350
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
1.9k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
120
新卒PdEのリアル
ryu1013
1
500
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
360
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
460
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
510
From π to Pie charts
rasagy
1
370
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
240
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
490
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
The untapped power of vector embeddings
frankvandijk
2
1.9k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
470
Transcript
AWS × Serverless Framework ×QuickSightで IoTデータを可視化する Author: Masaki Suzuki @makky12
本日お話しすること • きっかけ~作成アプリ~サーバーレスアプリの問題点(の一例) • サーバーレスアプリの問題点の解決 • Infrastructure as Code(IaC) •
Serverless Framework • AWSでの収集データの分析・可視化 • Amazon Athena & Amazon QuickSight(※) • Amazon Neptune(参考資料) (※) • 自己紹介&告知 ※以後、製品名の「Amazon」は省略して記載します
資料&サンプルアプリ • 本日の発表資料&作成アプリは、以下の場所で公開してます • 登壇資料 • 登壇資料URL(SpeakerDeck or SlideShare) •
作成アプリ(GitHub) • https://github.com/smt7174/nature-remo
きっかけ • 大平さんのツイート(→) • 大平さんはAzureで実行 • じゃあ、僕はAWSでやってみよう! • AWSなら、Athena→QuickSightに 流してグラフ表示したら、BIっぽくて
いい感じじゃない?
作ったアプリの構成 Lambda CloudWatch DynamoDB Simple Storage Service(S3) Athena QuickSight Lambda
Lambda リソースが多い… API Gateway ※今回は未使用
サーバーレスアプリの問題点(の一例) • リソース作成が大変 • コンソール上で1つ作るだけでも、結構手間 • コンソールの使い勝手が不十分…などの問題も • コンソールでは完結できない…という場合も •
管理はもっと大変 • 作成リソース/作業手順/設定などを覚えなければならない • 手順書を残すにしても、その作成が手間だったり… • 作成担当者=作成経験者とは限らない • 人為的ミスが発生しやすくなる • 過去リソース作成担当者でも、時間が経てばミスが発生しやすくなる • (作業者により)品質が変わる/作業の俗人化などの問題 →リソース作成を楽にできる機能が欲しい!
Infrastructure as Code(IaC)とは • インフラ構成・定義・構築を、コードから行うプロセスのこと • 「インフラ」とあるが、実際は各種リソースの作成・設定も合わせて実施 • コード(=定義ファイル)を作成し、デプロイするだけでOK •
CloudFormation(AWS)/Azure Resource Manager(Azure) など • IaCを導入することで、下記のメリットがある • 安定した品質の保証 • 結果は毎回同じ(=冪等性(※)の確保) • 作業者の知識・スキル・経験に依存しない(=属人化解消) • 管理コストの削減 • 定義はすべて定義ファイル内で完結 • 細かい作業も不要(デプロイを行うだけ) • 開発者が「開発」にのみ注力できる ※冪等性(べきとうせい):「ある作業を何度行っても、毎回必ず同じ結果が得られる」性質のこと
Serverless Frameworkとは • サーバーレスアプリの構築・開発・運用管理をサポートするOSS • 公式URL: https://serverless.com/ • IaCによるリソースデプロイにも対応 •
AWS/Azure/GCPを始め、数多くのクラウドに対応 • 一番サポートが手厚いのはAWS • その他、テスト/CI・CD/モニタリングなども対応 • 特に、テストはCloudWatchログを出力出来たりと便利 • 各クラウドでの定義ファイルを共通のフォーマットで書ける • クラウドごとにフォーマットを覚え直す必要がない(=学習コストが少ない) • JSON/YAMLに対応 • その他、JavaScriptでの(動的な)値の設定なども可能
IaC(Serverless Framework)を使うと… Lambda DynamoDB Simple Storage Service(S3) Athena QuickSight Lambda
Lambda ここまでServerless Frameworkで作成できる! ※Athenaは「保存クエリ」の作成のみ対応 CloudWatch API Gateway ※今回は未使用
Athenaついて • S3のファイル内の大量データの分析を簡易化するツール • S3ファイル内のデータを、RDBのようにテーブル/SQLで扱える • QuickSightと統合することで、データを簡単に可視化できる • QuickSightを始め、各種BI(※)ツールとの相性がいい •
BIツール以外にも、ログファイルなどの解析にも便利 • JSON/CSVを始め、多くのファイル形式に対応 • JSONは一手間かかる。手っ取り早く行うならCSVがおすすめ • 正確には「ネスト」「構造体」などのデータがあると少々面倒 ※BI:Business Intelligence(企業が膨大な蓄積データを分析し、その結果を経営意思決定に活用する事)
QuickSightについて • AWSのクラウド駆動BIツール • 分析データなどの各種データをグラフなどで可視化できる • 企業などの迅速な意思決定などをサポートする • 堅牢なインメモリエンジン(SPICE)を使用 •
容量制限あり。不要なら無理に使わなくてもよい • 分析データのソースはAthena・RDS・S3など多岐にわたる • GitHub/Twitterなどにも対応 • BI用途でなくても、収集データの可視化などが容易に行える • (例)ログ解析/集計データの可視化… etc • まさに今回がコレ
QuickSightで表示した結果 • 色々あったけど、無事QuickSightでグラフ表示することができた
まとめ • サーバーレスアプリのリソース管理には、IaCが便利 • リソースの管理コストの削減 • 冪等性による、属人化・スキル依存の解消 • IaCのツールとして、Serverless Frameworkが便利
• 複数のクラウドに対応 • 特にAWSはサポートが手厚い • Athenaを使うと、収集データをRDBのように扱えて便利 • テーブル/ビュー/SQL etc. • QuickSightで、収集データをグラフで可視化できる • BIツールとして、容易に導入しやすい • BI用途以外にも、ログ解析など
【参考】Neptuneについて • フルマネージドなグラフ型データベース • 「ノード・エッジ型」の構造を持つ(右下図) • 「テーブル型」が弱い「データ間の関係性/依存性」の保持も可能 • Twitterの「フォロー/フォロワー」 •
ECサイトの「一緒に買われてる商品(サジェスチョン)」etc. • 今回は下記の理由で利用せず • 収集データ間に具体的な「関係性/依存性」がない • コストの問題(「無料枠」がない) • AWS公式URL:https://aws.amazon.com/jp/neptune/ 本1 作者:A ジャンル:IT 本2 作者:B ジャンル:IT 本3 作者:A ジャンル:ゲーム 作者が同じ ジャンルが同じ 一緒に 買われてる
自己紹介 • 名前:鈴木 正樹 (Masaki Suzuki) • 在住:愛知県半田市 • 職業:フリーランスエンジニア(4月に法人化予定)
• 業務:サーバーレスアプリのアーキテクチャ構築/設計/開発 など • 技術: • AWS/Azure/Serverless Framework/IaC全般 • 各種イベント・SNS・ブログでのクラウド普及活動(個人的に) • Power Platform(Power Apps/Power Automate)/MS系全般 • SNS http://makky12.hatenablog.com/ https://github.com/smt7174 @makky12 (Masaki Suzuki@フリーランスクラウドエンジニア) 名古屋市 豊橋市 中部国際空港 (セントレア) 半田市
【おまけ】愛知県半田市について • 有名なもの • 「ごんぎつね」の作者、新美南吉の生誕地 • お酒(日本酒。「國盛」「半田郷」など) • お酢(「ミツカン」の本社があるのが半田市) •
山車 • 市内で合計31台の山車がある • 5年に一度、「はんだ山車まつり」という市内の山車が勢揃いする祭りがある • 知多半島全体が「知多娘」という萌えキャラで町おこしをしている • 公式URL: http://www.chita-musume.com/character/ • 半田市にはキャラクターが2人いる • 半田 酔子(左) • 広小路 クララ(右)
告知(Serverless Meetup Nagoyaについて) • Serverless Meetup Nagoyaを開催します! • 日時:2020/4/11(土) 13:00~
(予定) • 場所:ワンダープラネット株式会社様 名古屋本社 ※オンライン開催になる可能性あり • 私がオーガナイザーを担当します • 今のところ、5名のスピーカーが登壇予定です • 大平 かつみさん/私も登壇します! • 参加お待ちしてます! …と言ってもなかなか難しいと思うので、知人やSNSで拡散お願いします ※イベントURL(まだ未公開): https://connpass.com/event/168807/
以上です ご清聴ありがとうございました