「MySQL 5.6」は、性能、拡張性、信頼性、管理性が向上し、Web、クラウド、組み込みアプリケーションの最も厳しい要件にも対応できるという。また、サブクエリーの最適化、オンラインでのデータ定義言語(DDL)の実行、InnoDBへのNoSQLアクセス、新しいパフォーマンス・スキーマによる性能の計測や状況対応の改善により、運用管理効率が向上するとしている。
「MySQL 5.6」は、MySQLコミュニティのためのイノベーションの継続するとしており、その新機能と性能向上は、MySQL Community EditionのMySQLユーザーも利用できるという。
発表によると、「MySQL 5.6」の主な特徴は次のとおり。
・クエリー実行時間と診断の改善:
オプティマイザの実行計画作成機能を改善。
・サブクエリーの最適化:
サブクエリーの性能を大幅に改善することで、クエリーの開発がより簡単に可能に。結果セットを効率的に選択、保存、返すことができるようになり、クエリー実行時間を大幅に改善。
・ICP(Index Condition Pushdown)とBKA(Batch Key Access)の追加:
選択したクエリーのスループットを最大で280倍に。
・オプティマイザの診断機能の強化:
INSERT、UPDATE、DELETE操作のEXPLAINに対応。実行計画をJSON形式で出力することでオプティマイザの判断をより詳細かつ読みやすく提供し、Optimizer Tracesを利用することでオプティマイザでの実行計画決定プロセスを追跡可能。
・パフォーマンススループットとアプリケーション可用性の改善:
InnoDBストレージエンジンを強化。
・最大230パーセント向上したトランザクション/読み取り専用スループット:
InnoDBのリファクタリングを行い、ミューテックスの分割による競合の低減、パージスレッドのマルチスレッド化やフラッシュ処理スレッドの追加などによって、ボトルネックを最小化。これにより、高負荷OLTPシステムの並行実行性能が改善され、トランザクションと読み取り専用の両方のワークロードのスループットを改善。
・可用性の向上:
オンラインDDL操作により、DBAはアプリケーションを更新可能な状態に保ったままインデックスの追加やテーブルの変更を実行可能。
・シンプルなキー値ルックアップ:
InnoDBへの柔軟なNoSQLアクセスにより、使い慣れたMemcached APIを使ってInnoDBデータのキー値を簡単にルックアップ可能。「2つの世界」の優れた面を活用し、同じデータベースでキー値操作と複雑なSQLクエリーを組み合わせ可能。
・スケールアウトと高可用性の改善:
MySQLレプリケーションに新機能を追加。
・自己回復レプリケーションクラスタ:
グローバルトランザクションIDとユーティリティが追加され、障害の自動検出/回復を簡単に実行可能に。クラッシュセーフレプリケーションにより、クラッシュの発生時にバイナリログおよびスレーブによってレプリケーションストリーム内の適切な位置から自動的に再開され、管理者の操作を必要とせずにレプリケーションを再開可能す。チェックサムによってデータの破損を検知することで、レプリケーション構成全体でのデータの整合性を維持。
・高性能レプリケーションクラスタ:
マルチスレッド・スレーブ、Binlogグループコミット、行ベースのレプリケーションの最適化により、レプリケーションが最大5倍高速に。ワークロードをコモディティシステム間にスケールアウトすることで、レプリケーションのパフォーマンスと効率を最大化可能。
・遅延レプリケーション:
不注意によるテーブルのドロップなどの操作エラーからマスターを保護。
・PERFORMANCE SCHEMAの強化:
新しい性能統計の蓄積方法により、リソースを多用するクエリー、オブジェクト、ユーザー、アプリケーションの監視を容易に。新しいサマリー情報では、クエリー、スレッド、ユーザー、ホスト、オブジェクトごとに集計された統計情報も参照可能。オーバーヘッドが5%未満となったため、デフォルト設定で利用可能。
なお、オラクルは、MySQL向けの「第1回 Virtual Developer Day」を、3月12日(米国太平洋時間)に開催するという。ここでは、MySQLユーザー向けにプレゼンテーションや基本スキルに関するハンズオンラボが催されるほか、「MySQL 5.6」の最新機能が説明されるという。
■ニュースリリース
http://japanmediacentre.oracle.com/content/detail.aspx?ReleaseID=2794&NewsAreaId=2
■「Virtual Developer Day-MySQL」のWebページ
https://oracle.6connex.com/portal/mysql/login/?langR=en_US&mcc=launch