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
3k
Redash で踏み出す BI 導入はじめの一歩 / DataEngineeringStudy Redash
ariarijp
1
2.1k
Redash のいま / Redash in 2021
ariarijp
2
1k
Redash 導入・運用を4年ぐらいやって変わったこと・変わらなかったこと / Changed and unchanged things with Redash and me
ariarijp
0
1.3k
5年前の自分に伝えたい広告 API 周辺の歩き方 / SOT Tech Night vol.1
ariarijp
1
480
使われていない、を知る / How do we know unused things in the real world?
ariarijp
0
400
MULTI_ORG について / What is MULTI_ORG in Redash
ariarijp
1
3.5k
あらためて振り返る Redash の使いどころ / Why I strongly recommend Redash
ariarijp
2
1.2k
PHP Data Structures
ariarijp
1
520
Other Decks in Programming
See All in Programming
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
14
4.7k
もう僕は OpenAPI を書きたくない
sgash708
6
1.9k
技術を改善し続ける
gumioji
0
140
良いコードレビューとは
danimal141
3
540
負債になりにくいCSSをデザイナとつくるには?
fsubal
10
2.6k
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
270
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
630
Visual StudioのGitHub Copilotでいろいろやってみる
tomokusaba
1
210
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
230
Jakarta EE meets AI
ivargrimstad
0
480
Better Code Design in PHP
afilina
0
180
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
55
19k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Unsuck your backbone
ammeep
669
57k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
We Have a Design System, Now What?
morganepeng
51
7.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Speed Design
sergeychernyshev
27
810
Designing Experiences People Love
moore
140
23k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
What's in a price? How to price your products and services
michaelherold
244
12k
Facilitating Awesome Meetings
lara
53
6.2k
Making Projects Easy
brettharned
116
6k
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