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
DataformでPythonする / dataform-de-python
Search
snhryt
July 27, 2025
Programming
0
220
DataformでPythonする / dataform-de-python
Dataform Meetup #1 登壇資料
https://dataform-jp.connpass.com/event/359348/
snhryt
July 27, 2025
Tweet
Share
More Decks by snhryt
See All by snhryt
マイベストのシンプルなデータ基盤の話 - Googleスイートとのつき合い方 / mybest-simple-data-architecture-google-nized
snhryt
0
87
ヤバい(わるい意味)データでヤバい(いい意味)ことしようとしている話 / yabai-yabai-data-yabai
snhryt
0
120
寿命の短いデータ分析コードにも、ちょっとだけ優しくしてあげたい話 / kindness-for-short-lifespan-codes
snhryt
1
91
【令和最新版】Python実行環境の選択肢 / Modern Python Env Management 20240628
snhryt
0
130
マテリアルズ・インフォマティクスの先端で起きていること / What's Happening at the Cutting Edge of Materials Informatics
snhryt
1
260
Other Decks in Programming
See All in Programming
Go言語はstack overflowの夢を見るか?
logica0419
0
610
What's new in Spring Modulith?
olivergierke
1
170
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
360
スマホから Youtube Shortsを見られないようにする
lemolatoon
27
34k
モテるデスク環境
mozumasu
3
1.3k
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
300
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
12
7.2k
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
320
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
250
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
920
Range on Rails ―「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ
rizap_tech
0
7.7k
Claude Agent SDK を使ってみよう
hyshu
0
1.4k
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Docker and Python
trallard
46
3.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Thoughts on Productivity
jonyablonski
70
4.9k
Facilitating Awesome Meetings
lara
57
6.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Designing for humans not robots
tammielis
254
26k
Statistics for Hackers
jakevdp
799
220k
Documentation Writing (for coders)
carmenintech
75
5.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Transcript
%BUBGPSNͰ1ZUIPO͢Δ %BUBGPSN .FFUVQσʔλΤϯδχΞ ݪ༔ై
1ZUIPOͰ1ZUIPO͢Δ
%BUBGPSNͰ1ZUIPO͢Δʁ🤔 ʮ%BUBGPSN42-Ͱσʔλͷ5SBOTGPSNBUJPO͢ΔπʔϧͰ͢ΑͶʁʯ ˠ ͱͯͦ͏ ʮ͍͍ຐվԵɻ༻్ʹ͋Θͤͯπʔϧ͍͚·͠ΐ͏Ͷ͆ʯ ˠ Ͳ͔ͪΒͱ͍͑ͦ͏ ʮ͔͍ͯಓͳ͘Ͷʁʯ ˠ ͦΜͳ͜ͱͳ͍
ઌʹ͓அΓ • ॳาతͳͱ͜Ζͬ͢ඈ͍͖ͯ͠ͳΓԠ༻ͷʹೖΓ·͢🙏 • ϦϦʔε͞Ε͔ͯΒ·͕ͩઙ͍χονͳػೳͷΛ͠·͢🙏
5",&"8": ຊ͝հ͢Δ%BUBGPSNͰ1ZUIPO͢Δखஈͭ %BUBGPSNͰ1ZUIPO6%'ʢϢʔβʔఆٛؔʣΛཧ͢Δ ˠ ͓͢͢Ί˒˒˒˒ˑ %BUBGPSNܦ༝Ͱ/PUFCPPLΛఆظ࣮ߦ͢Δ ˠ ͓͢͢Ί˒ˑˑˑˑ
ࣗݾհ • ݪ༔ైʢ!TOISZUEFTVʣ • σʔλΤϯδχΞ!ϚΠϕετ ˡσʔλαΠΤϯςΟετ!ΞΠσϛʔ ˡωοτϫʔΫΤϯδχΞ!/̋5 ˡभେֶ • ຊʹਓ͙Β͍͔͍͠ͳ໊͍ࣈ
• %BUBGPSNͷढറʹनΘΕ͍ͯΔਓˠ
None
None
%BUBGPSNͰ1ZUIPO6%'Λཧ͢Δ
લఏlPQFSBUJPOTzUZQFΛ͑%BUBGPSNͰ6%'ͷཧ͕Ͱ͖Δ ௨ৗͷ%.-ͱಉ༷ʹ%BUBGPSNλάΛઃఆͨ͠͏͑ͰɺϫʔΫϑϩʔ্Ͱ%%-ͷ࣮ߦ͕Մೳ
લఏ6%'Λ1ZUIPOͰॻ͚ΔΑ͏ʹͳͬͨ ैདྷͷ42- +BWB4DSJQUʹՃͯ͠1ZUIPOͰॻ͚ΔΑ͏ʹͳͬͨ 1SF(" ͪ͜Βͷ;FOOهࣄʹ ۩ମతͳ͍ํҙΛ ·ͱΊ͍ͯ·͢
1ZUIPO6%'ͷར1ZUIPOͷ๛ͳϥΠϒϥϦ܈ʹ͔͋ΕΔ 1Z1*ʹެ։͞Ε͍ͯΔϥΠϒϥϦΛΠϯετʔϧͯ͠ར༻Մೳ ˠ 42-Ͱ࣮͕͍͠Ͱ͖ͳ͍͜ͱͰ͖ΔΑ͏ʹɻՄೳੑ 𝙄𝙉𝙁𝙄𝙉𝙄𝙏𝙔 ˡ 1ZUIPO6%'Ͱ$MPVE5SBOTMBUJPO αʔϏεΛݺͼग़ͯ͠༁ͤ͞Δྫ
ϚΠϕετͰͷ׆༻ྫ 4DJ1ZͷྗΛआΓͯɺαΫοͱ౷ܭݕఆ͕Ͱ͖Δ6%'Λ࡞ɻ%BUBGPSNͰίʔυཧ͠ɺϫʔΫϑϩʔ্Ͱߋ৽ EFGJOJUJPOTPQFSBUJPOVEGTTRMY
%BUBGPSN º 1ZUIPO6%'ࡶײ • ͚ͬ͜͏͍͍ • +BWB4DSJQU6%'ΑΓѻ͍͍͢ • ࠔΓ͝ͱ •
1ZUIPOͷίʔυࣗମͷಈ࡞֬ೝ༧ΊผͷॴͰࡁ·͓ͤͯ͘ඞཁ͕͋Δ • ίʔυΛจࣈྻͱͯ͠ཧ͢ΔͷͰɺ4ZOUBY)JHIMJHIU͕ޮ͔ͳ͍ • ͘͝كʹ6%'ͷCVJMEʹࣦഊͯ͠ɺ6%'Λࢀর͍ͯ͠ΔΫΤϦ͕ࣦഊ͢Δ͜ͱ͕͋Δ • Έ͚ͱͯ͠ɺػցֶश(FNJOJͳͲ#2.-ʹҕͶΔͷ͕Αͦ͞͏
%BUBGPSNܦ༝Ͱ/PUFCPPLΛఆظ࣮ߦ͢Δ
લఏ%BUBGPSNʹॲཧͤ͞Δલஈ֊Ͱ&YUSBDU-PBE͕ඞཁ • %BUBGPSNͰσʔλΛՃ͢ΔͨΊʹɺ#JH2VFSZ#JH2VFSZ͕ ֎෦ςʔϒϧͱͯ͠ѻ͑ΔॴʢFH($4ʣʹσʔλ͕ஔ͔Ε͍ͯΔ ඞཁ͕͋Δ • &YUSBDU-PBEͷखஈେ͖͚͘Δͱͭ • σʔλιʔεʹରԠ͢ΔϨσΟϝΠυͷίωΫλ͕͋Δ&-5πʔϧ ʢFH530$$0
'JWFUSBO "JSCZUFʣΛ͏ ˠ ଟ͘ͷέʔεͪ͜ΒͰରԠՄʹͳ͖ͬͯͨ • ࣗલͰόονΛΉ ˠ ϚΠφʔͳαʔϏεɺ"1*͕ఏڙ͞Ε͍ͯͳ͍αʔϏεґવ͜Ε͕ඞཁ
%BUBGPSNºࣗલόονͷ՝ σʔλऔಘ෦ͷ࣮ࣗମੜ"*Ͱ؆୯ʹॻ͚ΔΑ͏ʹͳ͍ͬͯΔ͕ɺ࣮֎ͷ՝͕ґવͱͯ͠Δ • όονͱ%BUBGPSN͕ؒಠཱ͘͢͠ͳΔ • -PBEʹࣦഊͨ͠ͷʹ5SBOTGPSNBUJPOΛ࣮ߦ ˠ ҙਤ͠ͳ͍ςʔϒϧͷதʹʜ • 8PSLGMPXTΛ͑ղܾ͢Δ͕ɺͦͷ߹%BUBGPSN
"1*Λୟ͘Α͏ͳ ΞʔΩςΫνϟͱͳΓɺ%BUBGPSN $MPVEͷϫʔΫϑϩʔػೳʹ͔͋Εͳ͘ͳΔ • Πϯϑϥͷཧ • (PPHMF$MPVEϢʔβʔͩͱ$MPVE3VO 'VODUJPOT º $MPVE4DIFEVMFSͰ όονΛΉέʔεଟ͍ͣ ˠ ແݶʹ૿͑ଓ͚Δ$MPVE4DIFEVMFS • ϚωʔδυίϯιʔϧΆͪΆͪͰ࡞͢Δͱӡ༻͕ͭΒ͍ • ҰํͰɺ5FSSBGPSNΛͬͯ·͡Ίͳ*B$ΛΉͷͦΕͦΕͰେม • ඞͣ͠σʔλΤϯδχΞ͕ίʔυΛॻ͘ͱݶΒͳ͍ • ֘σʔλΛ৮Δ෦ॺͷਓʹϕʔεͷ࣮Λ͍ͤͨ߹͋Δ
͋ͳ͖ͨͬͱ͜͏ࢥͬͨͣͰ͢ ʮ%BUBGPSNͰ&YUSBDU-PBEͰ͖ͨΒศརͳͷʹͳ͊ʯˣΠϝʔδ
None
None
࣮ɺ%BUBGPSN͢Ͱʹ1ZUIPOͷఆظ࣮ߦʹରԠࡁ • ॳࣖͳΜ͕ͩʂ ˠ ͦΕͦͷͣ • WͷϦϦʔε࣌ʹࡶͳϦϦʔεϊʔτͱࡶͳαϯϓϧίʔυͰ ͵ΔͬͱΒ͞ΕͯҎ߱ɺެࣜυΩϡϝϯτʹಛʹهࡌͳ͠ ˡ ϦϦʔεϊʔτͷ֘Օॴશจ
IUUQTHJUIVCDPNEBUBGPSNDPEBUBGPSNSFMFBTFTUBH ˡ ެࣜͷαϯϓϧίʔυҰࣜɻিܸͷจ3&"%.& IUUQTHJUIVCDPNEBUBGPSNDPEBUBGPSNUSFFNBJOFYBNQMFTFYUSFNF@XFBUIFS@QSPHSBNNJOH
࣮ɺ%BUBGPSN͢Ͱʹ1ZUIPOͷఆظ࣮ߦʹରԠࡁ • /PUFCPPL JQZOC ܗࣜͷ1ZUIPOίʔυ͕ର • $PMBC &OUFSQSJTFʹͱͱ/PUFCPPLͷఆظ࣮ߦػೳ͋Γ • %BUBGPSN্Ͱ1ZUIPOͷڥ͕࡞ΒΕΔΘ͚Ͱͳ͘ɺ
$PMBC &OUFSQSJTFͷ1ZUIPOϥϯλΠϜΛ࣮ͬͯߦ͢Δ ˠ ཁɺ$PMBC &OUFSQSJTFͷ8SBQQFSతͳҐஔ͚ ͷཧ /PUFCPPL
۩ମతʹ͜͏͠·͢ • $PMBC &OUFSQSJTFͰ%BUBGPSNͷ࣮ߦϩέʔγϣϯͱಉ͡ϩέʔγϣϯͰ ϥϯλΠϜςϯϓϨʔτΛ࡞͓ͯ͘͠ • XPSLGMPX@TFUUJOHTZBNM ʹ͜Μͳײ͡Ͱॻ͘ ࣮ߦޙͷ/PUFCPPLΛ
ॻ͖ग़͢($4όέοτ $PMBCͷϥϯλΠϜ ςϯϓϨʔτ
۩ମతʹ͜͏͠·͢ • EFGJOJUJPOTԼʹҎԼΛηοτͰஔ͢Δ • ࣮ߦ͍ͨ͠/PUFCPPL • BDUJPOTZBNM • ΞΫγϣϯ໊Λࢦఆͯ͠
42-ͱಉ͡ϊϦͰ࣮ߦ ˠ ಈ͖·͢🎉 EFQFOEFODZΛ ࢦఆ͢Δ͜ͱՄೳ
͔ͯ͠͠ UBHTͰϫʔΫϑϩʔͷ࣮ߦཧͰ͖Δɾɾɾͬͯίτ • ೦ͳ͕Βࠓ/P • ͨͩɺ͍ۙʹमਖ਼͞ΕͯϦϦʔε͞ΕΔΒ͍͠ ʹฦ͖ͬͯͨฦࣄ
ͨͩ͠ɺ69͕ɾɾɾ $MPVE൛ΤσΟλͰ+40/ϑΝΠϧѻ͍ ΤσΟλͰˢ͕ग़͖ͯͨͱ͖সͬͨɻ ฤू͢Δͱ͖ϩʔΧϧ %BUBGPSN $-* ɺ ࣮ߦ࣌ͷΈ%BUBGPSN $MPVEΈ͍ͨͳΈ͚͕ඞཁ ΤϥʔϋϯυϦϯά͕ͮ͠Β͍
Τϥʔৄࡉ$PMBC &OUFSQSJTFଆͷ࣮ߦϩά·Ͱ જΒͳ͍ͱݟ͑ͳ͍
%BUBGPSN º/PUFCPPLࡶײ • ͓ੈࣙʹʮΊͪΌͪ͘Ό͑Δʯͱݴ͑ͳ͍ • ͔ͭɺݱঢ়ͷվमεϐʔυΛݟΔݶΓɺ೦ͳ͕Β͙͢ʹվળ͞ΕΔ ݟࠐΈബ͍ؾ͕͍ͯ͠Δɾɾɾ • ͦΕͰɺ͜ΜͳέʔεͰྗΛൃشͦ͠͏ •
σʔλΤϯδχΞҎ֎͕࣮ݧతʹॻ͍ͨίʔυΛྲྀ༻ͯ͠ɺͱʹ͔͘༏ઌͰ σʔλ࿈ܞ͍ͨ͠ͱ͖ ˠ $PMBC &OUFSQSJTFͰ/PUFCPPLΛεέδϡʔϧ࣮ߦ͢ΔΑΓɺ %BUBGPSNܦ༝ʹͨ͠΄͏͕͍উख͕͍͍ʢϚγʣ • (16ΠϯελϯεͰόονΛಈ͔͢ඞཁ͕͋Δͱ͖
$PODMVTJPO
·ͱΊ %BUBGPSNͰ1ZUIPO͢Δͤ͞ΔखஈΛͭ͝հ͠·ͨ͠ %BUBGPSNͰ1ZUIPO6%'ʢϢʔβʔఆٛؔʣΛཧ͢Δ ˠ ͓͢͢Ί˒˒˒˒ˑ ΘΓͱԠ༻ޮ͘ͱࢥ͍·͢ʂ1SF("ͷʹҙ %BUBGPSNܦ༝Ͱ/PUFCPPLΛఆظ࣮ߦ͢Δ ˠ
͓͢͢Ί˒ˑˑˑˑ 0QT؍Ͱѻ͍ͮΒ͍ͷͰ͋·Γ͓͢͢ΊͰ͖ͳ͍ɻUBHTʹظ
࠷ޙʹએ • σʔλαΠΤϯςΟετɾσʔλΤϯδχΞ྆৬छͱʹੵۃืूதͰ͢ • %4νʔϜʹͯ/PUFϚΨδϯΛ͍͍݄ͩͨʙϖʔεͰߋ৽͍ͯ͠ΔͷͰɺ ͥͻϑΥϩʔˍ-JLFΛ͓ئ͍͠·͢ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠