この2年間、米国 Oracle は MySQL 5.6 の機能向上に努めてきた。2月5日、同社の努力は実り、オープンソースデータベース「MySQL 5.6」がリリースされた。

MySQL 5.5 は2010年の終わり、そして MySQL 5.6 のプレビュー版は2011年の7月にリリースされている。

MySQL 5.5 がリリースされてからの2年間で、データベース市場は大きく変化した。その変化の1つとして、NoSQL データベースの人気が急速に高まったことが挙げられる。このトレンドは、Oracle でさえも無視できないものとなった。

Oracle の MySQL エンジニアリング担当 VP である Tomas Ulin 氏は、InternetNews.com に対し次のように語った。

「SQL はとてもフレキシブルな言語。利用者は、NoSQL タイプのアプローチでは実現できないことでも、SQL でなら実現できる場合がある。Oracle は、SQL と NoSQL の両方の技術のメリットを取込むよう努力した。MySQL 5.6は複雑なクエリを扱えるフルパワーの SQL と、NoSQL アクセスタイプの API を提供している」

MySQL 5.6 で提供される NoSQL API は、ある種のクエリにおいては、データを最大で9倍高速に提供できるという。NoSQL API は、業界標準の Memcached API がベースになっている。

パフォーマンスの向上

MySQL 5.6 で注目すべきは、NoSQL 技術の取り込みだけではない。パフォーマンスも向上している。Oracle によれば、MySQL 5.6 は、トランザクションとリードオンリーのワークロードでスループットを最大230%向上させているという。

Ulin 氏は、今回のパフォーマンス向上は、InnoDB エンジンのコードを書き換え、オーバーヘッドを削減することで実現できたと説明した。

コードの書き換えは、MySQL のスケーリングにも貢献。MySQL 5.6 は、48コアサーバー上で動作可能になった。

オンラインでのスキーマ変更

MySQL 5.6 のもう1つの目玉は、可用性の強化だ。

オンラインでのスキーマ変更は、データベース管理者によるテーブルの変更を容易にする。管理者は、アプリケーションが接続された状態でも、データ定義言語を実行可能となったのだ。Ulin 氏は次のように述べる。

「これは、多くのユーザーが、自身のデータベーススキーマを変更可能になることを意味している。大規模な代替テーブルの運用により、テーブルやデータをオフラインにする必要がなくなった」

MySQL 5.6 への移行

MySQL 5.5 ユーザーが5.6 に移行する場合には、面倒な作業は不要だ。

「ほとんどの場合、サーバーを一旦停止させ、アップグレードスクリプトを実行するだけで済む。その後、データベースを再稼働させればよい」

複製されたデータベースクラスタをアップデートする場合には、スレーブノードを先にアップデートする。次にマスター内のデータをスレーブへとフェイルオーバーし、その後マスターをアップデートすればよい。

Oracle は、Workbench と呼ばれる技術も提供する。Workbench は、アップグレードウィザード。SQL サーバーを含む他のデータベースシステムを、MySQL 5.6 へとマイグレートすることが可能だ。

Sean Michael Kerner
Sean Michael Kerner は、InternetNews.com の主任編集者。