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
binlog_group_commit_sync_delayの Replication性能影響...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
shunyasu
August 07, 2026
33
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
binlog_group_commit_sync_delayの Replication性能影響について
MySQLアンカンファレンス第13回(
https://mysql-unconference.connpass.com/event/396211/)の発表資料
shunyasu
August 07, 2026
More Decks by shunyasu
See All by shunyasu
Spatial Index vs Geohash vs 緯度経度
shunyasu
0
2.1k
replica_preserve_commit_order=OFFでのコミット順序逆転を観測する
shunyasu
0
270
Featured
See All Featured
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
210
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
860
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
610
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
540
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
490
WENDY [Excerpt]
tessaabrams
11
39k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
470
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
890
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
230
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.2k
Transcript
binlog_group_commit_sync_delayの Replication性能影響について MySQLアンカンファレンス第13回 Suzuki Shunya
こんにちは • Suzuki Shunya(shunyasu)です ◦ ◦ • とある企業の DBA Indexが好き
X:@ssuzuki67
今回の話|binlog_group_commit_sync_delayのMTR性能影響 • • binlog_group_commit_sync_delayがMTR性能にどのくらい影響あるか 気になったので、調べてみた ついでに、binlog_transaction_dependency_trackingや replica_preserve_commit_orderも変えて、どのくらい性能が上がるか試した
binlog_group_commit_sync_delayとは • binlog_group_commit_sync_delay ◦ ◦ • 8.0デフォルトのMTRでは、同じGroupCommitのTransactionが並列実行可能 ◦ ◦ •
• • MySQLのコミット時に BinlogGroupCommitのために待機する時間を制御する変数 デフォルト0 binlog_transaction_dependency_tracking=COMMIT_ORDERの時 (8.4以降この変数は deplicated、WRITESETの挙動だけ) → BinlogCommit時に待ちを入れとSourceのGroupCommitサイズUP → Replicaの並列実行数(つまりReplication性能)もUP! ⚠ その分CommitのLatencyが増えるので注意
検証 • 設定 ◦ ◦ • MySQL Version: 8.0.28(EOL!!) Serverスペック
▪ Replica: 8vCPU 32GB Memory ▪ Source: 28vCPU 56GB Memory • sysbenchでReplicaよりSourceをスケールできるように Sourceの方を強くした 内容 ◦ ◦ sysbenchのoltp_write_onlyを実行し、Replicaで遅延が出ない最大の TPSを計測 (30秒のbenchで、Replicaの遅延が2秒以下で増加し続けていなければ OKのガバガバ実験 )
結果①(当初の目的) • 各スレッド数のbinlog_group_commit_sync_delayとReplication性能 • delay=10μsでは、0μsと比較して約7〜10%の性能向上 ◦ ◦ 100μs や 1000μs
まで増やしても、追加の性能向上は限定的 スレッド数が多いほど、binlog_group_commit_sync_delay による改善効果が大きくなった
結果②(脱線) • COMMIT_ORDER / replica_preserve_commit_order=OFFでの性能 • delay=10μs では 3100 →
3200 TPSで、+3.2% 程度 ◦ ◦ binlog_group_commit_sync_delay=10μsの方が影響大 preserve=OFFでのdelay 0→10では約10%向上で、preserve=ONの時と同じ
結果③(脱線) • WRITESET / replica_preserve_commit_order=ON/OFFでの性能 • replica_preserve_commit_order=ONで+39〜42%、OFFで+74〜81% ◦ ◦ delayの影響はCOMMIT_ORDERより少ない(preserve=ON:2.3%,
OFF:3.7%) 思ったよりはあった
まとめ • binlog_group_commit_sync_delayでの性能向上を確認できたが限定的な改善 ◦ • delayよりもdependency_tracking=WRITESETの効果がとても大きい ◦ • • delayを上げるなら、ある程度
MTRのスレッド数を上げたほうが良さそう 8.4以降dependency_trackingはdeplicated、デフォルトで WRITESETだけ replica_parallel_workersは、思ったより上げてもスケールした。 ◦ vCPU数の4倍くらいまで上げても良い? ◦ (sysbenchの単純ワークロードだから、 Readがないからの可能性大) 保守的な設定から攻めた設定で、2倍の性能向上 ◦ COMMIT_ORDER/preserve=ON/delay=0μs → WRITESET/preserve=OFF/delay=10μs ▪ ◦ replica_parallel_workersはどちらも32 2800 TPS→5600 TPS
おわり🐬