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
MySQLからBigQueryの同期を差分更新にしたら4倍高速になった話 / Sync fro...
Search
Takehiro Shiozaki
May 16, 2017
Technology
6
32k
MySQLからBigQueryの同期を差分更新にしたら4倍高速になった話 / Sync from MySQL to BigQuery become 4x faster by incremental updating
Embulk Meetup Tokyo #3のLTです
Takehiro Shiozaki
May 16, 2017
Tweet
Share
More Decks by Takehiro Shiozaki
See All by Takehiro Shiozaki
全部見せます! BigQueryのコスト削減の手法とその効果 / BigQuery Cost Reduction Methods
shiozaki
5
3.5k
タイムトラベルはじめました 〜時をかけるBigQuery〜 / Now serving Time Machine 〜BigQuery Which Leapt Through Time〜
shiozaki
0
5.3k
これからのZOZOを支える ログ収集基盤を設計した話 / Log collection infrastructure to support ZOZO in the future
shiozaki
6
14k
Amazon AuroraのデータをリアルタイムにGoogle BigQueryに連携してみた / Realtime data linkage from Amazon Aurora to Google BigQuery
shiozaki
10
15k
ZOZOTOWNの事業を支えるBigQueryの話 / BigQuery behind ZOZOTOWN
shiozaki
7
10k
ZOZOTOWNのDWHをRedshiftからBigQueryにお引越しした話 / Moving ZOZOTOWN DWH from Redshift to BigQuery
shiozaki
16
11k
ZOZOTOWNのバッチデータ転送基盤紹介 / ZOZOTOWN's data transfer batch
shiozaki
0
550
1日あたり数百万商品をクロールする 大規模クローラーの裏側 / How IQON crawler works
shiozaki
4
1.7k
Digdagを仕事で使ってみて良かったこと、ハマったこと / Using Digdag in production environment
shiozaki
1
2.1k
Other Decks in Technology
See All in Technology
Windows で省エネ
murachiakira
0
140
Azure SynapseからAzure Databricksへ 移行してわかった新時代のコスト問題!?
databricksjapan
0
110
インサイト情報からどこまで自動化できるか試してみた
takas0522
0
120
Modern_Data_Stack最新動向クイズ_買収_AI_激動の2025年_.pdf
sagara
0
120
Oracle Cloud Infrastructure:2025年9月度サービス・アップデート
oracle4engineer
PRO
0
310
組織観点からIAM Identity CenterとIAMの設計を考える
nrinetcom
PRO
1
130
AIを導⼊しても、 開発⽣産性は"爆増"していない なぜ?
kinosuke01
4
3.6k
DataOpsNight#8_Terragruntを用いたスケーラブルなSnowflakeインフラ管理
roki18d
1
280
Goに育てられ開発者向けセキュリティ事業を立ち上げた僕が今向き合う、AI × セキュリティの最前線 / Go Conference 2025
flatt_security
0
260
いまさら聞けない ABテスト入門
skmr2348
0
170
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
270
履歴 on Rails: Bitemporal Data Modelで実現する履歴管理/history-on-rails-with-bitemporal-data-model
hypermkt
0
1.7k
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
The Power of CSS Pseudo Elements
geoffreycrofte
78
6k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Gamification - CAS2011
davidbonilla
81
5.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Context Engineering - Making Every Token Count
addyosmani
3
140
A better future with KSS
kneath
239
17k
KATA
mclloyd
32
14k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Transcript
.Z42-͔Β#JH2VFSZͷಉظΛ ࠩߋ৽ʹͨ͠Βഒߴʹͳͬͨ &NCVML.FFUVQ5PLZP VASILY,Inc. Ԙ㟒݈߂
Ԙ㟒݈߂ w ʹ7"4*-:ʹ৽ଔೖࣾ w ීஈͷ͓ࣄ3BJMTͰXFC"1*࡞ͬͨΓɺ4PMSͷϝϯςͨ͠Γɺ 5BCMFBV#JH2VFSZͰμογϡϘʔυ࡞ͬͨΓ w &NCVMLࠓͷ݄ࠒʹ৮Γ࢝Ί͔ͨΓ 7"4*-: *OD
TPGUXBSFFOHJOFFS
*20/հ Ҏ্ͷϑΝογϣϯ&$αΠτ͔Β ྦྷܭ ສΛ͑ΔΛܝࡌ ݄ؒສਓҎ্͕ར༻͢Δຊ࠷େڃͷϑΝογϣϯαΠτ
σʔλऩूج൫ͷհ Πϕϯτϩά &-# "1*4FSWFS -PH "HHSFHBUPS 8FC4FSWFS #JH2VFSZ 3FDPNNFOE
σʔλੳج൫ͷհ Ϛελʔσʔλ 3%4 .Z42- %BUBUSBOTGFS TFSWFS ($4 #JH2VFSZ Γ͔͚͍ͯΔൿͷͨΕঢ়ଶ ɾNZTRMEVNQ
US TFE FUDΛෳࡶʹΈ߹Θ͍ͤͯΔ ɾςʔϒϧΛׂͯ͠సૹ͢ΔઃఆΛϋʔυίʔσΟϯά
σʔλੳج൫ͷհ Ϛελʔσʔλ 3%4 .Z42- %BUBUSBOTGFS TFSWFS ($4 #JH2VFSZ ʹ&NCVMLΛಋೖ ɾಉظόον͕མͪΔ͜ͱ͕΄΅ͳ͘ͳΔ
͔͜͜ΒϝΠϯςʔϚ
ϚελʔσʔλͷಉظΛ ߴԽ͍ͨ͠ w ϢʔβʔͷՁͷఏڙΛߴԽ͢ΔͨΊ w ݱঢ়ใͷಉظ͚ͩͰ࣌ؒ ສߦ (#
࣌ؒܭଌ 3%4 .Z42- %BUBUSBOTGFS TFSWFS ($4 #JH2VFSZ NJO .Z42-ͷςʔϒϧΛμϯϓ NJO
μϯϓΛ($4ʹΞοϓϩʔυ NJO ($4͔Β#JH2VFSZʹϩʔυ
.Z42-ͷμϯϓ͕ ϘτϧωοΫ w Ϛελʔσʔλͷಉظຖߦ͍ͬͯΔͨΊɺ ࡢͱಉ͡σʔλಉظ͢Δඞཁͳ͠ w 3VCZPO3BJMTΛ༻͍ͯ͠ΔͷͰɺ VQEBUFE@BUʹͦͷߦͷߋ৽࣌ࠁ͕ೖ͍ͬͯΔ
ࠩߋ৽ͯ͠ΈΔ ςʔϒϧ ࠩͷΈ ςʔϒϧ લ ςʔϒϧͷϚʔδ 0-"1ؔΛ׆༻ લճͷಉظҎ߱ͷσʔλͷΈ where: "updated_at
> ..."
લճͷಉظҎ߱ͷσʔλΛऔಘ w JOQVUQMVHJONZTRMͷઃఆʹXIFSFΛՃ͢Δ w औಘ͢Δඞཁͷ͋Δߦ͕ҎԼʹͳΔ in: type: mysql host: example.com
user: user_name password: ******** database: db_name table: items select: "*" where: "updated_at > '2017-05-15 00:00:00'" # この行を追加
42-ͰςʔϒϧΛϚʔδ w ͭͷςʔϒϧΛVOJPOBMMͰ݁߹͠ɺओΩʔͰ QBSUJUJPOCZͯ͠৽͍͠ߦͷΈΛબ w ͜ͷ42-ͷ݁ՌΛݩͷςʔϒϧʹॻ͖͢ select * from (
select *, row_number() over (partition by id order by updated_at desc) as rn from ( select * from tmp.items union all select * from mysql.items ) ) where rn = 1
݁Ռ 3%4 .Z42- %BUBUSBOTGFS TFSWFS ($4 #JH2VFSZ NJO ˠNJO NJO
ˠNJO NJO ˠNJO શମͰഒͷߴԽ INJOˠNJO ςʔϒϧͷϚʔδ NJOˠNJO
৽ͨͳ՝ w Ϛελʔσʔλͷಉظ͕ෳࡶʹͳΓͦ͏ w ֤ॲཧͷʮྲྀΕʯΛཧ͢Δπʔϧ͕ཉ͍͠ %JHEBH "JSqPX -VJHJ
·ͱΊ w &NCVMLόϧΫసૹͷҋΛরΒͯ͘͠ΕΔπʔϧ w σʔλͷࠩߋ৽ʹΑͬͯഒߴԽ w ӡ༻ϑΣʔζͰଞͷπʔϧͱͷ࿈ܞ͕ඞཁ