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
Rails産でないDBを Railsに引っ越すHACK - Omotesando.rb #110
Search
lni_T
June 05, 2025
Programming
290
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rails産でないDBを Railsに引っ越すHACK - Omotesando.rb #110
Omotesando.rb #110 のLT資料です
「Rails産でないDBをRailsに引っ越すHACK」
lni_T
June 05, 2025
More Decks by lni_T
See All by lni_T
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
3
1.1k
ruby.wasmとWebSocketで遊ぼう!
lnit
0
290
ActiveRecordの力でDBのメタデータを迅速に解析する
lnit
6
3.2k
ruby.wasm × Service Workerでサーバーのいらないモックサーバーを作る
lnit
0
470
Railsアプリの仕様書を一瞬で作りたい話 - Omotesando.rb #99
lnit
1
450
ruby.wasm 最前線 2024 - wasmでMockServerをつくる #rubykaigi
lnit
2
4.5k
Turbolinksアレルギー患者に捧げるTurbo & Stimulusでの時短実装術 / Kaigi on Rails 2023
lnit
4
6.3k
ruby.wasmでブラウザを酷使してみよう / 2023-MatsueRubyKaigi
lnit
0
2k
ブラウザで「今すぐ」gemを読み込む方法 / Load-gem-from-browser-JUST-NOW
lnit
0
1.6k
Other Decks in Programming
See All in Programming
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
990
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
53
35k
LLMは4年分のCompose移行を再現できるのか?実プロダクト279件のXMLで探る自動化の境界線
makun
0
390
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
4.3k
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
4
2.8k
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
2
100
Swift愛好会と私(ウホーイ) / Swift Fan Club and Uhooi
uhooi
0
130
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
220
初めての模倣学習とVLA
natsutan
0
480
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
250
Flow は今どうなっているか
mizdra
PRO
0
920
ソフトウェアラスタライザ
fadis
1
790
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
650
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
How to Think Like a Performance Engineer
csswizardry
28
2.8k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
520
Tell your own story through comics
letsgokoyo
1
1.1k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
Six Lessons from altMBA
skipperchong
29
4.5k
Everyday Curiosity
cassininazir
0
310
Code Reviewing Like a Champion
maltzj
528
40k
The Cult of Friendly URLs
andyhume
79
7k
Transcript
3BJMT࢈Ͱͳ͍%#Λ 3BJMTʹҾͬӽ͢)"$, 0NPUFTBOEPSC !-OJ@5ϧχ
ࣗݾհ w5XJUUFS 9 *%!MOJ@5 ϧχ w.FE1FFS ג ͷ3BJMTΤϯδχΞ w+BWBΛ3BJMTʹϦϓϨΠεͨ͠Γ
1)1Λ3BJMTʹϦϓϨΠεͨ͠Γɹͯ͠ੜܭΛཱͯΔ ʘΑΖ͘͠Ͷʗ
None
None
͡Ίʹ
ຊͷςʔϚ 3BJMT
ຊͷςʔϚ "DUJWF3FDPSE
"DUJWF3FDPSE ͍ͬͯ·͔͢ʁ
"DUJWF3FDPSE .7$ΞʔΩςΫνϟͷ.PEFM෦ .PEFM ॲཧ 7JFX දࣔ $POUSPMMFS ೖྗୡ
ڧྗͳ03.BQQFS ϓϩάϥϛϯάݴޠͷΦϒδΣΫτͱ3%#.4Λଓ͢Δٕज़ ΦϒδΣΫτͷଐੑؔ࿈ΛఆٛͰ͖Δ 42-Λهड़ͤͣɺอଘऔಘ͕Ͱ͖Δ
ศརʂ 3BJMTΤϯδχΞ 42-͕ॻ͚ͳ͍ʂ
ҰํͰ
ن͕ఆΊΒΕ͍ͯΔ
͍Ζ͍Ζͳن ςʔϒϧ໊Ϟσϧ໊ͷෳܗTOBLF@DBTF #PPL$MVCCPPL@DMVCT αϩήʔτΩʔ ػցతͳओΩʔ ͷར༻
Կࢦఆ͠ͳ͚ΕJEΧϥϜ͕ࣗಈੜ͞ΕΔ ֎෦Ωʔͷ໋໊୯ܗͷςʔϒϧ໊@JEύλʔϯ
͍Ζ͍Ζͳن ςʔϒϧ໊Ϟσϧ໊ͷෳܗTOBLF@DBTF #PPL$MVCCPPL@DMVCT αϩήʔτΩʔ ػցతͳओΩʔ ͷར༻
Կࢦఆ͠ͳ͚ΕJEΧϥϜ͕ࣗಈੜ͞ΕΔ ֎෦Ωʔͷ໋໊୯ܗͷςʔϒϧ໊@JEύλʔϯ "DUJWF3FDPSEͷڧྗ͞ͷԸܙΛड͚Δʹ %#ઃܭΛنʹ߹ΘͤΔඞཁ͕͋Δ
ઃఆΑΓن💪
͔͠͠
3BJMTͰͳ͍αʔϏεͷ%#ʁ
ຊͷςʔϚ ଞͷݴޠͷ8FCαʔϏεΛ3BJMTʹϦϓϨΠε͢Δͧʂ %#ؔ࿈ͷͭΒ͍ࣄྫͱճආࡦ
લఏ݅
લఏ݅ %#ߏΛ࠶ฤ͢ΔҠߦํͰͳ͘ʜʜ
લఏ݅ ӡ༻தͷ%#ʹଓͯ͠ঃʑʹҠߦ͍ͯ͘͠ํʂ
ຊฤ
໋໊نҧͷରࡦ
໋໊نҧͷରࡦ ςʔϒϧ໊ࢦఆUBCMF@OBNF ֎෦Ωʔ໊ࢦఆGPSFJHO@LFZ IUUQTSBJMTHVJEFTKQBDUJWF@SFDPSE@CBTJDTIUNM໋໊نΛ্ॻ͖͢Δ
3BJMTنΛ্ॻ͖Ͱ͖Δ ͳΜͩࣗ༝ߴ͍͡ΌΜ 😁😁😁
ͱࢥ͍͖ʜʁ
%BOHFSPVT"UUSJCVUF&SSPS "DUJWF3FDPSE%BOHFSPVT"UUSJCVUF&SSPS 3BJMTͰ༧ࡁͷΧϥϜ໊͑ͳ͍ IBTI NPEFM@OBNF PCKFDU@JEͳͲͳͲʜʜ
"DUJWF3FDPSEͷΠϯελϯεϝιου໊ͱಉ໊͡લͷΧϥϜ͕ طଘ%#ͷςʔϒϧʹ࡞ΒΕ͍ͯΔͱ065
ରࡦʁ
ͦͷ໊લΛΘͳ͍
ӡ༻தͷΧϥϜͷ 3FOBNFӨڹൣғେ Ͱ͖ͨΒ ۤ࿑͠ͳ͍
ۤͷࡦ ΧϥϜ໊ҡ࣋
JHOPSFE@DPMVNOT "DUJWF3FDPSEΦϒδΣΫτ͔Β ແࢹ͞ΕΔ ͷࢀরઃఆͰ͖ͳ͍ औΓٸ͗ΤϥʔΛফ͍ͨ͠߹͜Ε
σʔλಡΈऔΓ
(FOFSBUFE$PMVNO 3%#.4ͷʮ(FOFSBUFE$PMVNOʯ ੜྻ ػೳ͕͑Δ߹͋Γ .Z42- 1PTUHSF42- 42-JUF͋ͨΓͰ͑ͦ͏
ΧϥϜͷ͕ɺΧϥϜఆٛͷʮࣜʯʹΑͬͯܭࢉ͞ΕΔ
(FOFSBUFE$PMVNO ༧ࡁͰͳ໊͍લͷੜྻΛՃ͢Δ͜ͱͰ 3BJMT͔ΒΛࢀরͰ͖ΔΑ͏ʹͳΔ
σʔλॻ͖ࠐΈ
جຊ%#ϨΠϠʔͰΔ
σϑΥϧτ σϑΥϧτఆٛʹܭࢉࣜΛઃఆ͓ͯ͘͠ */4&35࣌ʹ%#͕ΛೖΕͯ͘ΕΔʂ
53*((&3 ςʔϒϧʹରͯ͠ಛఆͷΠϕϯτ͕ൃੜ͢Δͱ࣮ߦ͞ΕΔ 61%"5&࣌ʹ%#͕ΛೖΕͯ͘ΕΔʂ
ཧ͕ͱͯͭΒ͍
ۤଓ͘
ׂ%#ରࡦ
ςʔϒϧ͝ͱʹॴଐ%#͕ҟͳΔ %#͕ෳଘࡏ͢Δ߹͕͋Δ
ෳ%#ରԠ DPO fi HEBUBCBTFZNMͰ%#ଓΛෳఆٛ͢Δ͜ͱ͕Մೳ
DPOOFDUT@UP Ͳͷ%#ʹଓ͢Δ͔ΛϞσϧʹఆٛͰ͖Δ
DPOOFDUT@UP جఈΫϥεΛෳ࡞ͯ͠Ϟσϧ ςʔϒϧ ʹΑ͍͚ͬͯ
ΊͰͨ͠
͑ʂʁ%#Λ·͍ͨͰ 5SBOTBDUJPOॲཧ͍ͨ͠ʁ
ͳͥ%#ׂ͞ΕͯΔʜʁ
ଟॏUSBOTBDUJPO USBOTBDUJPOϒϩοΫΛଟॏʹ͢Δ͜ͱͰ࣮ݱՄೳ ʮσʔλϕʔείωΫγϣϯ୯ҐʯͰτϥϯβΫγϣϯॲཧ͞ΕΔ
ଟॏUSBOTBDUJPO ϩʔϧόοΫ͍ͤͨ͞߹ʹཁҙ "DUJWF3FDPSE3PMMCBDLɹUSBOTBDUJPOΛஈ͔͠ग़Ͱ͖ͳ͍
ଟॏUSBOTBDUJPO ϩʔϧόοΫ͍ͤͨ͞߹ʹཁҙ "DUJWF3FDPSE3PMMCBDLɹUSBOTBDUJPOΛஈ͔͠ग़Ͱ͖ͳ͍ ר͖Δ
ଟॏUSBOTBDUJPO ϩʔϧόοΫ͍ͤͨ͞߹ʹཁҙ "DUJWF3FDPSE3PMMCBDLɹUSBOTBDUJPOΛஈ͔͠ग़Ͱ͖ͳ͍ ר͖Βͳ͍
ଟॏUSBOTBDUJPO શͯͷUSBOTBDUJPOϒϩοΫΛඈͼग़͍ͯ͜͠͏ 3PMMCBDLҎ֎ͷྫ֎Ͱ͋Εग़Մೳ
ऻ͍དྷΔ-FHBDZͨͪ
.Z42-;FSP%BUF ɹͷଘࡏ .Z42-Ͱ݄Λڐ༰͢Δ /05/6--੍ͷΧϥϜͰɺ/6--ͱՁͰ͋Γɺ/6--Ͱͳ͍ *4/6--ͰϚον͢Δ
*4/05/6--ͰϚον͢Δ
ରࡦʁ
Θͳ͍
42-Ϟʔυ 42-Ϟʔυ 42-ߏจͷڍಈΛΓସ͑ΒΕΔΦϓγϣϯͷΑ͏ͳͷ ʮ42-ϞʔυʯʹΑΓ;FSP%BUFېࢭͰ͖Δ جຊతʹ
҆͝৺͍ͩ͘͞ .Z42-Ҏ߱Ͱ;FSP%BUFېࢭ͕σϑΥϧτ
Λ طʹ͍ͬͯΔ ݸͷςʔϒϧͰ EFGBVMUʹར༻ ͔͠͠
ۤͷࡦ
3BJMTʹೝࣝ͞Εͳ͍ 3BJMT[FSPEBUFΛOJMͱͯ͠ѻ͏ ECTDIFNBEVNQͯ͠ग़ྗ͞Εͳ͍ʂ EFWFMPQ UFTUڥͰ%#ߏ͕࠶ݱͰ͖ͳ͍ʜʜ
ؾ߹ϞϯΩʔύον "DUJWF3FDPSEͷ4DIFNB%VNQFSʹؾ߹ͷύονΛͯΔ
*OWBMJEEFGBVMUWBMVF σϑΥϧτ͕;FSPEBUFͷΧϥϜΛؚΉςʔϒϧʹରͯ͠ "-5&35"#-&Λൃߦ͢Δͱ*OWBMJEEFGBVMUWBMVFΤϥʔͱͳΔ
42-Ϟʔυมߋ EBUBCBTFZNMͰʮݫີͳ42-ϞʔυʯΛGBMTFʹͯ͠ճආ ฐ͕େ͖͗͢ΔͷͰਅࣅ͠ͳ͍Α͏ʹʂ
͜ͷষਅࣅ͠ͳ͍Α͏ʹ ຊʹ
·ͱΊ
ՔಇதͷαʔϏεɾσʔλΛकΔ ϦϓϨΠεΔ
େม
γεςϜҠߦେม ࠓՔಇ͍ͯ͠ΔϏδωεɾϢʔβʔɾσʔλΛकΔͷ͕େલఏ ϨΨγʔίʔυͳΒ͵ɺϨΨγʔσʔλߏվળฒߦ͢Δඞཁ͋Γ ͦͷଞͷͭΒ͍ࣄྫɺΑ͖ղܾํ๏Λ͝ଘͷํ ͓͠·͠ΐ͏ʂ