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
Digdag@表参道.rb #14
Search
Takuya Arita
August 05, 2016
Programming
1
1.4k
Digdag@表参道.rb #14
表参道.rb #14のLT資料です
Takuya Arita
August 05, 2016
Tweet
Share
More Decks by Takuya Arita
See All by Takuya Arita
Hosted Redash の EOL と移行ツール redash-migrate / You should know about Hosted Redash EOL and redash-migrate
ariarijp
0
3.2k
Redash で踏み出す BI 導入はじめの一歩 / DataEngineeringStudy Redash
ariarijp
1
2.4k
Redash のいま / Redash in 2021
ariarijp
2
1.1k
Redash 導入・運用を4年ぐらいやって変わったこと・変わらなかったこと / Changed and unchanged things with Redash and me
ariarijp
0
1.4k
5年前の自分に伝えたい広告 API 周辺の歩き方 / SOT Tech Night vol.1
ariarijp
1
500
使われていない、を知る / How do we know unused things in the real world?
ariarijp
0
430
MULTI_ORG について / What is MULTI_ORG in Redash
ariarijp
1
3.7k
あらためて振り返る Redash の使いどころ / Why I strongly recommend Redash
ariarijp
2
1.3k
PHP Data Structures
ariarijp
1
540
Other Decks in Programming
See All in Programming
CSC509 Lecture 08
javiergs
PRO
0
260
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
110
SODA - FACT BOOK(JP)
sodainc
1
8.9k
外接に惑わされない自システムの処理時間SLIをOpenTelemetryで実現した話
kotaro7750
0
100
What's new in Spring Modulith?
olivergierke
1
170
理論と実務のギャップを超える
eycjur
0
180
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
120
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
130
CSC305 Lecture 08
javiergs
PRO
0
280
AI Agent 時代的開發者生存指南
eddie
4
2.2k
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
3
980
三者三様 宣言的UI
kkagurazaka
0
260
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
For a Future-Friendly Web
brad_frost
180
10k
Navigating Team Friction
lara
190
15k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Gamification - CAS2011
davidbonilla
81
5.5k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Music & Morning Musume
bryan
46
6.9k
Documentation Writing (for coders)
carmenintech
75
5.1k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Scaling GitHub
holman
463
140k
Transcript
Digdag@දࢀಓ.rb #14 @ariarijp
ࣗݾհ • @ariarijp (Takuya Arita) • දࢀಓ.rbࢀՃ3ճɺൃද2ճ • ιϑτΣΞΤϯδχΞ@ίίϥϒϧ
ࣄͷ8ׂόονॲཧ
None
όονॲཧͷͭΒΈ • ຯ • -> ผʹݏ͡Όͳ͍ • CSV • ->
ͭΒ͍͚Ͳࠓʹ͠ͳ͍ • ґଘؔͷߟྀ • -> ͭΒ͍
Α͋͘Δґଘؔ • όονA, B, C, D, E, F, G͕͋Δ •
A, B, Cฒྻ࣮ߦͰ͖Δ • DA, B, C͕͔ͯྃͯ͢͠Β࣮ߦ • E, FD͕͔ྃͯ͠Β࣮ߦɺฒྻ࣮ߦͰ͖Δ • GE, F͕͔ͯྃͯ͢͠Β࣮ߦ
ґଘؔΛ͕Μͬͯղܾ͢Δ • ྻʹ࣮ߦ • -> ॱ൪कΒΕΔ͠ɺΘ͔Γ͍͚͢Ͳ͍ • εςʔλεΛԿΒ͔ͷܗͰཧͯ͠ฒྻ࣮ߦΛఘΊͳ͍ • ->
ҟৗऴྃͨ࣌͠ͷεςʔλεΫϦΞͳͲͷߟྀ͕໘ • ࣮ߦִؒΛௐͭͭ͠ɺͳʹ͔ى͖ͨΒӡ༻ͰΧόʔ͢ΔલఏͰ crontabγΣϧεΫϦϓτΛͬͯฒྻ࣮ߦ • ->
ͦ͜Ͱ Digdag
Digdag • Fluentd, Embulkʹଓ͘Treasure DataϓϩμΫτ • JavaͳͷͰ͍͍ͩͨͲ͜Ͱಈ͘ɺΠϯετʔϧָ • YamlͰϫʔΫϑϩʔΛఆٛ͠ɺdigdag runͰ࣮ߦ
• όονΛฒྻ࣮ߦɺόοΫάϥϯυ࣮ߦ͢Δ͜ͱ͕ Ͱ͖ɺґଘؔ·ΘΓͷࠔΓࣄҰ௨ΓϑΥϩʔ͞Ε ͍ͯΔҹ
Digdagʹ͍ͭͯͷޡղ • TDͰEmbulkTD, BigQueryͱ߹Θͤͯ հ͞ΕΔ͜ͱ͕ଟ͍ͨΊɺେྔͷσʔλΛѻ ͏ͨΊͷπʔϧͱࢥΘΕ͕ͪͳͷͰʁ • DigdagϫʔΫϑϩʔΛཧͯ͘͠ΕΔ͚ͩ ͳͷͰɺόονॲཧશൠʹར༻Ͱ͖Δ
DigdagͬͯΈͨ • PHPͰॻ͔Ε͍͔ͨͭ͘ͷόονΛ࣮ߦ͢ΔϫʔΫϑϩʔΛ ఆٛ • sh> ΦϖϨʔλʔΛ͑ΕPHPͰͳΜͱ͔ͳΔ • ఆٛͨ͠ϦετΛͬͯ܁Γฦ࣮͠ߦͰ͖Δfor_each> ศར
• ฒྻԽΛఘΊ͍ͯͨόονɺࠞಱͱͨ͠crontabʹฏ ͕ͨΒ͞Εͨ
ࠓදࢀಓ.rbͳͷʹ ·ͩRubyͷͯ͠ͳ͍ɾɾɾ
Ruby API
Ruby APIͷ͍ํ • ϫʔΫϑϩʔͷ֤εςοϓͷॲཧΛϝιουͱͯ࣋͠ ͭΫϥεΛॻ͍ͨRubyεΫϦϓτΛಡΈࠐΉ • rb> ΦϖϨʔλʔͰͲͷϝιουΛ࣮ߦ͢Δ͔Λఆٛ ͢Δ •
RubyεΫϦϓτ͔ΒϫʔΫϑϩʔͰ༻͢Δม Λఆٛͨ͠ΓɺࢠλεΫΛ࡞ɾ࣮ߦ͢Δ͜ͱͰ͖ Δ
Ruby APIͷҙ • rubyͷύεΛࢦఆͰ͖ͳͦ͞͏ͳͷͰɺrbenvͳͲͰόʔδϣϯΛ Γସ͑Δ • υΩϡϝϯτʹهࡌ͞Ε͍ͯΔαϯϓϧɺσϑΥϧτͳ͠ͷ ΩʔϫʔυҾ͕͋ͬͨͷͰ2.1Ҏ߱લఏͬΆ͍ • εΫϦϓτผϓϩηεͰಈ͘ͷͰɺ࣮ߦ݁ՌͳͲΛڞ༗͍ͨ͠
߹DigdagͷมDB, ϑΝΠϧͳͲͰڞ༗͢Δ • Ruby API͔Βઃఆͨ͠ม͕ྻͩͬͨ߹ɺͦͷมΛͬͯ for_each> Ͱ͙Δ͙Δճ͢ͷͰ͖ͳͦ͞͏
͕࣌ؒ͋Ε DigdagͱRuby APIͷσϞ
·ͱΊ • ग़ੈ͠Α͏ͱ͠ͳ͘ͱόονॲཧͦΕͳ Γʹॻ͘͜ͱʹͳΔ • DigdagσʔλΤϯδχΞϦϯάͷ༻్Ҏ֎ ͰϫʔΫϑϩʔΤϯδϯͱͯ͑͠Δ • ґଘؔͷ͋Δͪΐͬͱෳࡶͳόονॲཧ Digdagͷग़൪͔
ࢀߟࢿྉ • υΩϡϝϯτ • http://www.digdag.io/ • ݹڮః೭͞ΜΠϯλϏϡʔ - Tokyo RubyKaigi
11 #tkrk11 • http://regional.rubykaigi.org/tokyo11/interview/frsyuki/ • DigdagͰruby/pythonؒͰมΛ͢ • http://qiita.com/toru-takahashi/items/ 418eb5a4dda4e8555a00