Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MySQLの今後に期待

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for kentsu kentsu
July 01, 2026
32

 MySQLの今後に期待

Avatar for kentsu

kentsu

July 01, 2026

Transcript

  1. 自己紹介 - けんつ (@lrf141) - サイボウズ株式会社 DBRE - MySQL のパッチ・怪しい改造を書く

    - MOCO のメンテナ - 最近はまってること - MySQL Component と Optimizer - 最近いやなこと - mysql_native_password 廃止とパスワードローテーション - 溢れかえるスローログ
  2. 最近やってたこと紹介 - Support zstd compression (Bug #117675) - Clone Plugin

    の話題 - zlib では CPU が 100% に張り付いて、無圧縮ではネットワーク帯域が厳しい - zstd なら良いところ取りできるのでは?ということやってみた - メモリリークがあったので修正しました、、、 - Add an option to output slow logs in JSON format (Bug #120341) - k8s 環境で MySQL を運用していてとにかくスローログがパースしにくい - Grafana での検索が特につらい - 複数行で一つの意味を持つログを各行に分割してしまうため - 色々対策はあるが、いっそもう JSON でスローログだしたいでしょ?というモチベーション
  3. 当日スケジュール JST AM 00:00 スタート JST AM 06:30 メインセッション前半終了 JST

    AM 07:30 ブレイクアウトルーム1, 2 とメインセッション後半開始 JST AM 09:30 ブレイクアウトルーム1, 2 とメインセッション後半終了 全部出ようと思うと中々にタフなスケジュールでした。
  4. 当日スケジュール JST AM 00:00 スタート JST AM 06:30 メインセッション前半終了 ↕

    特にここの 1h が徹夜にはきつい!! JST AM 07:30 ブレイクアウトルーム1, 2 とメインセッション後半開始 JST AM 09:30 ブレイクアウトルーム1, 2 とメインセッション後半終了 全部出ようと思うと中々にタフなスケジュールでした。
  5. 当日スケジュール - MySQL Component - Vector 系 - パフォーマンス問題 -

    機能的な不足 (SQL 標準含む) - オプティマイザ - etc…..
  6. これまでの OSS としての MySQL - とにかく閉鎖的で情報が見えないイメージ - 近年は方向性がわからないことが多かった - 本体より

    Heatwave ?? MySQL AI ?? - OSS としては MariaDB の方がよくやってるイメージ - パッチを出す難易度がとにかく高い - パッチを出してもどういう扱いなのかよくわからない - 開発者からのレビューはない - そもそも拡張すら否定的??
  7. パッチを出すまでのハードル - MySQL 自体のコードベースが巨大 - 何かしようと思っても理解するまでが辛い - 他に影響を出さないことの難しさ - 共通化されている部分の難易度が特に高い

    - コネクション、コンポーネント、トリガー、 etc… - テストは魔境 - mysql-test-run というフレームワークの存在 - 特定のコードパスだけを通るパターン - unit test と mysql-test-run の使い分け - パフォーマンス測定 - 初回は例外としても2回目以降はレビューが入れば改善するものばかり
  8. 何故こう思うのか - MOCO のメンテナ経験から - パッチを意欲的に出す人は品質が上がりやすい - MariaDB もメンテナ次第では教えてくれることが多い -

    いらないと思ったものでもあとで救われることがある - 思わぬバグを潰してくれる - 方針が被るとメリットが多かった
  9. MySQL Contributor Summit の所感 - Oracle の人がまず多い - 今まで全く見えなかった部分が急に見えてきた -

    外部の人の提案も多い - 他 DBMS との差異を持ち出すケース - かなりディープな提案から方向性的な話まで様々 - 全体的な変化を感じる回 - 拡張に対しても意欲的? - リアルな MySQL の立場を参加者全員が知る機会 - 非常に良い取り組み
  10. InnoDB B+Tree Performance Optimization - 悲観的挿入が発生した場合のパフォーマンスボトルネックの話 - 中身はごりっごりの実装話 - パッチを出す人は一回見た方が良いレベル

    - B-Link Tree のアイデアを一部導入して Latch のロックレベルを下げる - 既存実装とのパフォーマンス検証 - このレベルが出てくるのかという意外性 - これは今後の展開に期待したい
  11. Performance Improvements and Vector Support - RETURNING 句のサポート - INSERT/UPDATE/DELETE

    後に結果を取得するための追加クエリが必要 - 主要 DBMS ではサポートしている - 思わず笑ってしまった良い提案 - 確かに無駄なロックとクエリを打ってるので是非ともサポートされてほしい - Adaptive Hash Index による性能劣化 - これはまじでそう - 本当にどうにかしてほしい - コミュニティからの再現報告も good
  12. Partition Pruning Visibility in Iterator-Based EXPLAIN Output - シンプルではあるが意外な話 -

    EXPLAIN の経路によってパーティション選択の情報があったりなかったり - こういうところが潰せると嬉しい - 全体的にこの系は多いイメージがある - パーティションに限らず、、、 - MySQL Component とか、、、
  13. Improving Hypergraph Optimizer Performance and Feature Parity - 今回最も面白い話 -

    有償版から降ってきた期待のオプティマイザ - 既存のオプティマイザの仕組みと比較 - パフォーマンス計測 - かなり改善はするが特定のケースで無視できないほど遅い - SELECT が遅い問題が改善してくれると最高 - コミュニティの協力を必要としている - パッチを出す機運が高まっている