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
Hasura.io RDBをサクサク作る方法はARやO/RMだけじゃなくなりました/hasur...
Search
OKUNOKENTARO
January 31, 2022
Technology
5
640
Hasura.io RDBをサクサク作る方法はARやO/RMだけじゃなくなりました/hasura-io
2022/1/31 日本大学文理学部情報科学科 Webプログラミング 発表会にてゲスト発表した際の資料です。
OKUNOKENTARO
January 31, 2022
Tweet
Share
More Decks by OKUNOKENTARO
See All by OKUNOKENTARO
トレタO/X アーキテクチャ移行記 Next.js App Router化への道のり / TORETA TECH UPDATE 1
okunokentaro
5
11k
Podcastを継続する技術 / refactoradio-240119
okunokentaro
1
170
Webアプリケーション設計の第一歩は ディレクトリの整理から / Encraft 1
okunokentaro
34
10k
JSONとJSON Schemaを改めて理解する / tokyo_study
okunokentaro
9
2.3k
それでもどうしてRecoilを使うのか / Harajuku.ts Meetup Recoil
okunokentaro
19
5.5k
TypeScriptは10年でこんなに進化しました / TechFeed Experts Night 11
okunokentaro
6
1.7k
コードには型アノテーションよりも要件アノテーションを増やせ!/harajukuts2
okunokentaro
14
6.3k
10年と3ヶ月でWebサービスを作った話 / Piyogrammer Conference 2021
okunokentaro
2
1k
any禁止 絶対に型付けを諦めないための便利なユーティリティ関数 / techstand6
okunokentaro
21
6.6k
Other Decks in Technology
See All in Technology
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
6
370
MIMEと文字コードの闇
hirachan
2
1.4k
OPENLOGI Company Profile for engineer
hr01
1
20k
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
13
4.1k
JavaにおけるNull非許容性
skrb
2
2.4k
LINEギフトにおけるバックエンド開発
lycorptech_jp
PRO
0
210
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
240
脳波を用いた嗜好マッチングシステム
hokkey621
0
280
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
270
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
290
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
2
1.5k
デスクトップだけじゃないUbuntu
mtyshibata
0
710
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Navigating Team Friction
lara
183
15k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Unsuck your backbone
ammeep
669
57k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
250
Mobile First: as difficult as doing things right
swwweet
223
9.4k
Why Our Code Smells
bkeepers
PRO
336
57k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Transcript
)BTVSBJP 3%#ΛαΫαΫ࡞Δํ๏ "303.͚ͩ͡Όͳ͘ ͳΓ · ͨ͠ +BO ຊେֶจཧֶ෦ใՊֶՊ8FCϓϩάϥϛϯάൃදձ !PLVOPLFOUBSP
"DUJWF3FDPSE 0CKFDU3FMBUJPOBM.BQQFS
୭ w Ԟݡଠ!PLVOPLFOUBSP w ΫϨεΣΞגࣜձࣾ w ࣗࣾαʔϏε.PUJGBSZ։ൃӡӦ w 5ZQF4DSJQUϑϩϯ τΤϯ
υ ɾ όοΫΤϯ υ
8FCΞϓϦΛ࡞ΔͨΊʹԿ͕ඞཁ ʁ w ։ൃεΩϧ w σϓϩΠઌͷڥ w σʔλϕʔε w ແݶͷ࣌ؒ
σʔλϕʔεΛαΫοͱ w ੈͷத ʮαΫοͱʯ ͱ͍͏ݴ༿ΛΧδϡΞϧʹ͏ w 3%# 3FMBUJPOBM%BUBCBTF w
3VCZPO3BJMT "DUJWF3FDPSE w /PEFKT 4FRVFMJ[F 5ZQF03. w /P42- w 'JSFCBTF$MPVE'JSFTUPSF
"DUJWF3FDPSE w 3VCZPO3BJMTʹଐ͢ΔϞσϦ ϯά ɾ ϑ ϨʔϜϫʔΫ w લʹ ʮ8FCΞϓϦέʔγϣϯΛ࡞ΔͳΒͱ
Γ͋͑ͣ3BJMTʯ ͱ͍ΘΕ࣮ͨ࣌ࡏͨ͠ࠓΒͳ͍ w 42-͕Θ͔Βͳ͘ ͯ"DUJWF3FDPSE͕ॻ͚Εσʔλϕʔε͕ૢ࡞Ͱ͖Δ
0CKFDU3FMBUJPOBM.BQQFS w 03.ͱݺΕΔ "DUJWF3FDPSE03.ͷҰछͰ͋Δ͕ɺ 3VCZҎ֎ͷݴޠͷ03.ͱҰઢΛը͍ͯ͠ΔͨΊ۠ผͯ͠͞ΕΔ͜ͱ͕͋Δ w /PEFKT͚03.ͷ߹ w
DMBTTએݴΛલఏͱ ͨ͠ϞσϦ ϯάͱϥϯλΠϜܕΞϊςʔγϣϯ ʢΦϒδΣΫ τهड़ɺ 5ZQF4DSJQU%FDPSBUPSߏจͳͲΛ͏ʣ w 42-Λॻ͔ͣͱ$36% ʢՃɺ ಡࠐɺ ฤूɺ আʣ ͕࣮Ͱ͖Δ
/P42- w 'JSFCBTF'JSFTUPSFͳͲ w ςʔϒϧϦ Ϩʔγϣϯͷ֓೦͕ͳ͍ υΩϡϝϯ τࢦ w εΩʔϚ͕ͳ͍ͨΊࣗ༝ͳΩʔͱΛ֨ೲͰ͖Δ
w αϒίϨΫγϣϯΛ͏ ͜ͱͰෳࡶͳσʔλπϦʔߏΛ֨ೲͰ͖Δ w 42-Λॻ͔ͳ͘ ͍͍ͯ
42-ॻ͖ͨ͘ ͳ͗͢͞Μ
42-ͷͭΒ͍ͱ͜Ζ w 03.ΛΘͣͱ42-ΠϯδΣΫγϣϯ͑͞ҙ͢Ε ੜͷ42-Λ υϯ υϯॻ͖͘ w 42-ࣗମॻ͚ͯΞϓϦέʔγϣϯଆͰͷՃ͕खؒ w
3%#ʹྻͱ͍͏֓೦͕ͳ͍ͨΊ +0*/ͨ͠ඇਖ਼نԽσʔλΛ+40/ͱ ͯ͠ѻ͏ʹมॲཧ͕ඞཁ w ͲͪΒ͔ͱ͍͏ ͱɺ ͭΒ͍ͷ͜ͷՃॲཧͷ࣮
͍͍ͱ͜औΓ͕͍ͨ͠ w 8SJUFॲཧ τϥϯβΫγϣϯཧͷͨΊʹ42-Λॻ͖͍ͨ w 3FBEॲཧ +40/มॲཧΛল͖͍ͨͷͰ͍͍ײ͡ʹσʔλΛऔΓ͍ͨ
None
)BTVSBJPͱ w (SBQI2-3FTPMWFS(FOFSBUPS w ࣗલͷ1PTUHSF42-αʔόʔʹରͯ͠(SBQI2-αʔόʔΛࣗಈੜ͢Δπʔϧ w ཪ1PTUHSF42-ͳͷͰ42-ʹΑΔ3FBE8SJUF͍ͭ௨ΓՄೳ w )BTVSBΛܦ༝ͯ͠(SBQI2-ͰσʔλΛऔΔͱ
࠷ॳ͔ΒߏԽ͞Εͨ+40/ͰऔΕΔ w 8SJUF(SBQI2-NVUBUJPOܦ༝ͰͰ͖Δ w ͪΐ͍͍ͳΒແྉ
(SBQI2- w (SBQI2-ʹެ։͞ΕͨΫΤϦݴޠ w 3&45GVM"1*ͷΑ ͏ʹ͍ͭ͘ͷΤϯ υϙΠϯ τΛఆٛͤͣʹ Τϯ
υϙΠϯ τ ɾ ࣗ༝ͳΫΤϦͰࣗ༝ͳߏͷσʔλ͕औಘͰ͖Δͱ͞Εͨ w ࣮ࡍཪͷ3FTPMWFSΛΊͬͪΌ࣮͢Δඞཁ͕͕͔͋ͬͯ͜͜ͳΓେมͩͬͨ w ͡Ό͋༻్ಛԽͷ+40/"1*Ͱ͑͑Μͱ·ͰݴΘΕͨ
3FTPMWFS͕ࣗಈੜ͞ΕΔࢫΈ w (SBQI2-ཧͷΫΤϦݴޠ͕ͩͬͨ 3FTPMWFS࣮ͷίε τ͕͔ͤͰಋೖΛͨΊΒ͏৫͋ͬͨ w ͜ͷίε τΛ·Δ͝ͱ)BTVSB͕ෛ୲͢Δͱ
զʑཧͷΫΤϦݴޠͷ෦͚͍͖ͩͳΓڗडͰ͖Δ
ͲΜͳը໘
(6*ϕʔεͷϚΠάϨʔγϣϯ w QIQ.Z"ENJOΈ͍ͨͳͭ w Έ͔ΕΔͱ͜ΖͰ͋Δ͕ɺ ͜͜Ͱૢ࡞͢Δͱ)BTVSB.FUBEBUB͕ߋ৽͞ΕΔ w Ϧ ϨʔγϣϯΛுΔ͝ͱʹ(SBQI2-ͷRVFSZεΩʔϚNVUBUJPOεΩʔϚ͕
ߋ৽͞ΕΔ w ੜ42-ॻ͚ΔͷͰͩ͜ΘΓͦͬͪͰ w (6*ܦ༝Ͱૢ࡞ͯ͠VQTRMͱEPXOTRM͕ࣗಈੜ͞ΕΔͷͰ(JUཧͦΕͰ
+85ΧελϜΫϨʔϜ w +85Λϔομʹ༩͢Δ͜ͱͰ ͦͷ+85ʹؚ·ΕΔ)BTVSB͚ΧελϜΫϨʔϜΛࣝผ͢Δ w ݺΔRVFSZɺ ݺͳ͍RVFSZͳͲͱ͍ͬͨઃఆ͕Մೳ w ύʔϛ
ογϣϯɺ ϩʔϧͳͲͷೝՄ֓೦͕͋Δ wʮࣗͷΤϯςΟ ςΟ ͔͠আͰ͖ͳ͍ʯ ͳͲ
τϥϯβΫγϣϯ w NVUBUJPOΛෳهड़ͨ͠߹ ճͷ(SBQI2-ΞΫηεͰτϥϯβΫγϣϯΛுͬͯ͘ΕΔ w தஅ࣌ͷϩʔϧόοΫߟྀ͞Ε͍ͯΔ w ͬͱ8SJUFͷ τϥϯβΫγϣϯΛૢ࡞͍ͨ͠ͳΒ
ͳ8SJUFͷΈ42-ܦ༝ɺ 3FBEΛ(SBQI2-ܦ༝ͳͲͷ͕ඞཁ
)BTVSBͰαΫοͱ࡞Δ w ͔ͭͯ ʮ3%#ͰαΫοͱ ͚ͨ͠Ε"303.ʯ ͷΑ ͏ʹݴΘΕ͍ͯͨ͜ͱ͋ͬͨ w )BTVSBʹΑͬͯ(SBQI2-ͷ3FTPMWFSࣗಈੜΛར༻Ͱ͖Δͱ
"3 03.Ҏ֎ͷ ʮαΫοͱʯ ͕࣮ݱͰ͖Δ w ཪͨͩͷ1PTUHSF42-ͳͷͰɺ ςʔϒϧઃܭ࣍ୈͰ͋Δ͕εέʔϧ͍ͤ͢͞
5IBOLZPV