えっ!!MySQLはもう開発が終わっちゃうの?MySQL終了のお知らせ?!
などと心配しないで頂きたい。MySQLの開発はちゃんと継続される。開発の方針が変更されることになったからMySQL 6.0のリリースが見送られただけである。(ちなみに、次期バージョンはMySQL 5.4で、MySQL 6.0はその次のバージョンになる予定だったものである。といっても、MySQL 5.4は後から間に挿入された形なのだが。)理由は、ここのところMySQLの新バージョンのリリーススケジュールが遅れがちだったり色々と問題があったからだ。(何かが変更されるときは大抵その背景には問題があるだろう)次のバージョンに何どんな機能が搭載されるのかは現時点では未定であるが、とにかく6.0はいったん中止になってしまったわけで、MySQL 6.0を楽しみにしてくれていた方々には申し訳ない限りである。
新しい開発方針は次のページで見ることが出来る。
http://forge.mysql.com/wiki/Development_Cycle
こういう開発方針を赤裸々に綴った文書がWebで公開されるのは、オープンソースソフトウェアの醍醐味ではないだろうか。プロプラエタリソフトウェアではまずあり得ない種類の文書である。MySQL 6.0リリース中止のお知らせにガッカリした皆さんは、どうかこのドキュメントを読んで理由を確認して頂きたい。その上で水を差すも良し、応援するも良し。MySQLのメーリングリストでは、誰でもオープンに意見を述べ、議論することが出来る。議論に参加するのもオープンソースソフトウェアの醍醐味だからだ。
さて、上記は英語だし文章が長いのでここで簡単に要約すると、
- 一気にたくさんの機能を一度に盛り込もうとせず、主要な機能を少しずつ追加して新版とする。
- 新機能の開発は平行して行い、成熟した時点でtrunkにmergeする。
ちなみに、マニュアルには書かれていないが、MySQL 5.4にはMySQL 6.0で搭載する予定だった機能がいくつか既に追加されている。なので、MySQL 6.0がなくなったからといって、MySQL 6.0で予定していた機能が全て使えないわけではないので安心して欲しい。既に安定しているものに関してはtrunkにmergeされているのだ。
MySQL 5.4で追加されたMySQL 6.0の機能は以下のものがある。もし、これらの機能を待望にしていたのであれば、ぜひMySQL 5.4を使って見て欲しい。(ただし、5.4は現時点ではβなので、あくまでもテストという位置づけで利用すること!!)
サブクエリ最適化
semi-joinやMaterializationなど。「なぜMySQLのサブクエリは遅いのか。」でちょっとだけ言及しているので興味のある方は参照して頂きたい。
BKA Join
Batched Key Accessの略。MySQL Clusterなど、リモートホストにデータを格納するタイプのストレージエンジンでは、劇的にJOINの性能が向上する可能性がある。「MySQL6.0における新しいJOIN最適化手法 - BKA」を参照。
SIGNAL/RESIGNAL
ストアドプロシージャやトリガ、イベントを記述するときに使う構文である。クライアントへエラーを通知する。
INFORMATION_SCHEMAの拡張
PARAMETERSやROUTINESテーブルが追加された。
XML機能の拡張
LOAD XML文が追加された。
DTrace Probes
どうやって使うかは、現在本に書いているところなので乞うご期待。
詳細については開発チームのPeter Gulutzanのブログに書かれているので気になる人は見て欲しい。
http://blogs.mysql.com/peterg/2009/05/20/mysql-54/
MySQLの次期バージョンは現在β版である5.4というのは変わらないが、上記のドキュメント(Development Cycle)によるとその次のバージョンは5.5になる予定のようである。ちなみに、5.4は入っていない機能には次のものがある。
- オンラインバックアップ
- コネクションスレッドプール
- 4バイトUTF-8
- Semi-Synchronousレプリケーション
- Falconストレージエンジン
現時点では5.5(仮)に搭載される機能はまだ決まっていないが、将来的にマイルストーンが固まったらこのブログでも紹介したい。
0 コメント:
コメントを投稿