MySQL最新ロードマップセミナー2011

MySQL最新ロードマップセミナー2011 に行ってきました。講師は肩書き長すぎな 梶山さんでした。
「お客様講演」は都合がつかずに中止でした。残念。
以下適当なメモです。嘘書いてあるかもしれません。

MySQL State of The Dolphin

  • OracleMySQL に対して本気で取り組んでる
  • Oracle の雑誌に MySQL が巻頭特集として載った
  • MySQL 5.5 は非常に高品質
  • Sun & Oracle の厳しい品質基準
  • InnoDB の主要メンバーは一人もやめてない
  • Oracle のパフォーマンスのスペシャリストが MySQL を支援
  • MySQL 5.6 - Development = β版
  • Oracle になって MySQLInnoDB の開発チームがひとつの会社になった
  • 2009 IPA 調査で、MySQL 60.5%, PostgreSQL 51.9%
  • 国内で初めて MySQLPostgreSQL を抜いた
  • Facebook は数千台の MySQL
  • モバゲーは 700台
  • 大きな Web サイトでは、ほとんど MySQL を使っている
  • MySQL Enterprise Backup
    • mysqldump に比べて、バックアップも速いがリストアが非常に高速
    • バックアップデータの圧縮もされる
  • MySQL Enterprise Monitor
    • クエリの実行回数や時間の統計
    • グラフをドラッグすることでその範囲だけ表示できる
  • MySQL Workbench
    • OSS 版もあり。商用版とほぼ同じ機能
  • サポート
    • 日本語は 9〜17時, 英語で 24時間
    • 全サポートエンジニアが MySQL のソースにアクセス可
    • Premier Support が 5年間、Extended Support が 8年間
  • MySQL Cluster
  • MySQL Enterprise の価格は物理サーバー単位
  • 物理サーバー上でVMがいくつ動いていても、1台分の価格でいい

MySQL Technical Update

MySQL 5.5
  • InnoDB がデフォルトストレージエンジン
  • 5.1 に比べ、Linux で 360%, Windows で 1500% のパフォーマンス向上
  • 接続数をふやしても性能が落ちにくい
  • CPU スケーラビリティ ほぼリニアにスケール
  • MySQL on Windows
  • Windows 環境の改善
  • MySQL のユーザーの半数以上が Windows で MySQL を使用している
  • Windows 環境では 5.5 を強くおすすめ
レプリケーション
  • 準同期レプリケーション
  • コミット後に落ちてもスレーブに確実にデータがある
  • 非同期型にくらべて応答が長くなる
  • 「同期」じゃなく「準同期」なのは、コミット直後にスレーブを参照しても反映されていないかもしれないため
MySQL 5.6
  • Development Milestone Release
  • これがそのままメジャーバージョンになるかどうかはわからない。
  • もしかしたら、5.7 とか 5.8 とかになるかも。
  • http://dev.mysql.com/downloads/mysql からダウンロード
  • 性能改善
  • パーティショニング
    • 明示的にパーティションを指定できる
    • 特定パーティションのデータのみをインポート/エクスポート
  • PERFORMANCE_SCHEMA
  • InnoDB 改善
  • Replication 改善
5.6 には含まれてないもの
  • Multu-threaded Slaves
    • 複数スレッドでスレーブの更新を速く
  • MyISAM でできることは全部 InnoDB でもできるようにするという方向。まだ紹介できるレベルではない
MySQL Cluster
  • 大量の同時多発トランザクション向け
  • レプリケーションを使えばディザスタリカバリも可能。99.999% の可用性
  • MySQL Cluster 7.2
  • 7.1 ではシンプルなクエリ向き = JOIN がほとんどないクエリ。JOIN は SQLノードで処理していたため遅い
  • 7.2 では JOIN もデータノードで処理する。20倍以上速い
  • 7.2 は年内GA予定
  • カラム数の上限が128から512に増加
  • オンラインでテーブルに追加
  • 管理データをデータノードに集約
  • NDB を直接使うための Memcached API - Memcached Driver for NDB
その他
  • Oracle VM Template for MySQL
    • 7月中。もうちょっと早いかも
  • MySQLの15分ルール
    • ダウンロード/インストール/起動まで15分以内
    • Windows用 MySQLインストーラでもっと速く
  • MySQL Workbench プラグイン
    • Python でプラグインを書ける
  • 商用製品の今後
    • Oracle製品との連携強化
    • 設定とインスタンス管理のためのツール
    • バックアップ履歴管理
    • 直接メディアにバックアップ等

Q&A

Q: 以前は商用製品のリリースサイクルはGPL版と異なっていたが?
A: 今はほぼ同じ時期にリリースしている

Q: 5.1.x が去年で EOL だったと思うけど、まだリリースされてるのは?
A: サポートが8年間になったので、5.0.x, 5.1.x はまだバグフィックスリリースされる

上の質問は2つとも私です。もっと質問が出るかと思ってたんですけど、他には出ませんでした。なのに終了後に講演者に個別質問の行列ができてました。みんなQ&Aタイムに質問しましょうよ。

感想

他の OSS プロダクトとは違って、MySQL にとっては Oracle になったことが非常にプラスに働いているようです。コミュニティベースの開発か否かという違いなのかもしれません。
サポートが8年というのもすごいですね。5.0.x, 5.1.x が EOL だったはずなのに復活してますし。というか 5.0.x は既に 5.0.92 なので、更新が続くとバージョン番号が溢れる危険がw
5.6 はさらにパフォーマンスが向上するらしいし、Memcached API みたいな面白い機能も増えるかもしれないので、楽しみです。