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
AppSync入門! GraphQL APIを作ってみた!
Search
Nao Masuya
October 26, 2023
Technology
1.2k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AppSync入門! GraphQL APIを作ってみた!
AppSync,GraphQLの簡単な紹介です!
Nao Masuya
October 26, 2023
More Decks by Nao Masuya
See All by Nao Masuya
久しぶりのAWS!JAWS!初めてBedrockを触ってリハビリ!
masuchoku
0
44
AWS Summit 2025 の見どころを振り返る!
masuchoku
0
510
AWS TransferFamilyを使ってみた!
masuchoku
0
610
AWSを触ってきた数年間を振り返る!
masuchoku
1
500
Step Functionsと少し仲良くなってみた
masuchoku
1
760
API Gatewayと少し仲良くなってみた!
masuchoku
0
1.3k
スライド作りから LTを楽しもう! エンジョイ、 エンジニアライフ!
masuchoku
1
790
APCのAWS認定マスターたちに聞いてみた
masuchoku
0
260
AWSとJenkinsおじさん で学んできたCI_CD
masuchoku
1
1.6k
Other Decks in Technology
See All in Technology
複雑な業務システムを高速でつくるため、チーム全員をつくれる人へ
ayakurabuchi
0
120
新卒エンジニア、 介護士になる
ryu1013
1
660
Deep Data Security 機能解説
oracle4engineer
PRO
3
980
構造で守らせる データ・法務・セキュリティ・開発チームとつくる AI時代のデータガバナンスとデータ基盤のリアル
legalontechnologies
PRO
3
710
Agent Loopを組み込んだ アンビエントなAI機能を実現する / Ambient AI fetures with Agent Loop
nekorush14
0
120
eBPF 簡介 2026 版
shunghsiyu
0
120
視野はAIに、視座は人に / ai-for-breadth-humans-for-perspective
nkzn
6
2.7k
re:Inventで、人生は変わったのか? / growth-builders-hub-1-reinvent-2026
mhrtech
2
190
新米を「売り越さない」、Aurora DSQLで作る在庫ゼロ死守の限定ドロップEC
yama3133
0
130
Autonomous AI Lakehouse - Live AI Hubから始めるセキュアなAIデータ活用 -
oracle4engineer
PRO
2
180
なぜAI時代に技術記事を書くのか?どう書くのか? 〜bunの場合〜
kworkdev
PRO
0
3.3k
AIエージェント時代、Kaggleにどう取り組むか
takanao
2
460
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
500
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
970
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
310
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.7k
Between Models and Reality
mayunak
4
540
エンジニアに許された特別な時間の終わり
watany
109
250k
Thoughts on Productivity
jonyablonski
76
5.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
The Curse of the Amulet
leimatthew05
3
16k
Building an army of robots
kneath
307
47k
Practical Orchestrator
shlominoach
192
12k
Transcript
AppSync入門! GraphQL APIを 作ってみた! 2023/10/25 JAWS UG 朝会 APCommunications 升谷直緒
Self Introduction 所属 株式会社エーピーコミュニケーションズ @apc_tweet
Self Introduction 株式会社 エーピーコミュニケーションズ システム基盤サービス事業本部 クラウド事業部 IaC技術推進部 升谷直緒 • 2020年新卒入社
• SIerとして4年目 • AWSは使い始めて3年目 • CI/CDの導入支援 • Webアプリの改善運用 • リモートワーク @masuchoku
JAWSに参加してみて 今年の3月ごろから月1ペースでJAWSに参加、LTは4回目です。 社外の人と関われる貴重な機会、 普段使わないAWSサービスに触れる、 アウトプットと向き合うことができる、 初心者にすごく優しいコミュニティ …な点がいいなと感じております!
本日は、、 GraphQL APIはこんなに簡単にAWSで作れるのか!? をお伝えしたいです! ぜひ今日お時間があれば作ってみてください...!
App Sync とは サーバレスにGraphQLを使用し、データベースに接続で きるサービス。 1 つの GraphQL API エンドポイントから
1 つ以上の データソースのデータにアクセスする。
クエリ言語とスキーマ言語で構成された Web APIの規格。 サーバーにデータを問い合わせることができる。 RESTの場合、必要のないデータまで取得してしまうため、大量 のデータを処理する必要があったため、 GraphQLが開発され た。 Facebook社によって2012年に開発がスタートし、 2015年にオー
プンソース化された。 GraphQL とは
REST と GraphQL REST GraphQL クエリ { user(id: 1) {
name } } レスポンス { "data": { "user": { "name": "Nao Masuya" } } } GETリクエスト GET /users レスポンス [ {"id": 1, "name": "Nao Masuya"}, {"id": 2, "name": "Simba"} ] 「単一のURLエンドポイント」にク エリを行えば、クエリに応じた データを返すことができる。
RESTを使う User API Gateway Lambda RDS ドラキュラはこういうユーザー • アプリケーションの規模が小さく、データがそれ ほど複雑ではない
• すべてのクライアントが同じように使用するデー タと操作がある • 複雑なデータクエリの必要がない https://aws.amazon.com/jp/compare/the-difference-between-graphql-and-rest/
DynamoDBの 参照・削除・更新がしたい クエリを書くだけ GraphQLを使う User App Sync DynamoDB ゾンビはこういうユーザー •
帯域幅に制限があり、リクエストとレスポンスの数を最小限に抑えたい • 複数のデータソースがあり、それらを 1 つのエンドポイントにまとめたい • クライアントのリクエストが大きく異なり、求められるレスポンスも大きく異なる https://aws.amazon.com/jp/compare/the-difference-between-graphql-and-rest/
AppSyncの実装はとても簡単 DynamoDBを選択 API名を決める クエリの要素を入力
クエリを実行 DynamoDBで確認
認証方法 API_KEY AWS_LAMBDA AWS_IAM OPENID_CONNECT AMAZON_COGNITO_USER_POOLS から選べます!
IAMを使った認証方法 IAM Policyを作成してUserに紐付ける { "Version": "2012-10-17", "Statement": [ { "Effect":
"Allow", "Action": [ "appsync:GraphQL" ], "Resource": [ "作成したAPIのarn:aws/*" // やりたい放題 "作成したAPIのarn:aws/types/Query/*” // 取得 "作成したAPIのarn:aws/types/Mutation/*” // 挿入更新削除 "作成したAPIのarn:aws/types/Subscription/*” // 監視 ] } ] }
CREDITS: This presentation template was created by Slidesgo, including icons
by Flaticon, infographics & images by Freepik Thank you! AppSync,GraphQLの簡単な紹介でした! Happy Halloween!
Resources • GraphQLとRESTの比較 ◦ https://hasura.io/learn/ja/graphql/intro-graphql/graphql-vs-rest/ • AWS AppSync の概要 ◦
https://docs.aws.amazon.com/ja_jp/appsync/latest/devguide/what-is-appsync.html • GraphQLとは?RESTとの違いや導入事例を紹介 ◦ https://udemy.benesse.co.jp/development/system/graphql.html • GraphQL と REST の違いは? ◦ https://aws.amazon.com/jp/compare/the-difference-between-graphql-and-rest/ • 承認と認証 ◦ https://docs.aws.amazon.com/ja_jp/appsync/latest/devguide/security-authz.html