連載
» 2013年10月24日 19時19分 公開

Database Watch(2013年10月版):NECが考えるRDBな企業とHadoop活用/MariaDB、ストレージエンジンSpider (2/2)

[加山恵美,@IT]
前のページへ 1|2       

MySQLコミュニティへの愛からなるMariaDB

 次はMariaDBの話題を紹介しましょう。2013年10月9日にSkySQL(リンク)がMariaDB/MySQLコミュニティイベントを開催しました。MariaDBは数年前から技術者の間で注目されていたものの、関係者が来日したイベントは日本初です。

 簡単に経緯から紹介しておきましょう。MariaDBの源流にはMySQLがあります。MySQLは1995年に誕生した製品であり、企業でもありました。その後、Webを中心にMySQLは急速に普及していきました。ところが、2007年にサン・マイクロシステムズがMySQLを買収し、続いて2009年にオラクルがサン・マイクロシステムズを買収し、MySQLはオラクルに統合されました。そして2010年、MySQLからMariaDBが分岐し、MySQL関係者らがSkySQLを立ち上げるなどして現在に至ります。

 今ではオープンソースデータベースのMariaDBがあり、MySQLやMariaDBのサービスを提供する企業であるSkySQLがあり、さらにMariaDBのコード、コミュニティ、エコシステムなどを支えるMariaDB財団(リンク)があります。財団は複数企業で構成することで特定の企業に買収されることを防ごうとしています。

 さて、あらためてMariaDBの現状はどうでしょうか。キャリアのほとんどでMySQLに携わってきたという、生粋のMySQLエンジニアであるColin Charles氏(写真)が解説してくれました。10月からSkySQLのエバンジェリストとして着任したところです。

Colin Charles氏

 MariaDBはこれまでMySQLのメジャーリリースに合わせてリリースを出しており、MySQLとの互換性を確保しつつ、機能拡張を行っています。GAの最新版はMariaDB 5.5で、MariaDB 5.3とMySQL 5.5をベースにしています。

MariaDB 10系は?

 気になるのが現在開発中であるMariaDB 10.0.xです。

 最新版は8月にリリースされた10.0.4でステータスは「アルファ」。βのさらに手前なので正式リリースはまだ先と考えていいでしょう。MariaDB 5.5とMySQL 5.6(あるいはMySQL 5.7)に機能拡張を加えたものとなるようです。

 10.0.xで人気が高い機能として、マルチソースレプリケーションがあります。複数のマスターからデータベースの複製を行う機能です。

 中国のショッピングサイトTaobaoでは(MariaDBへの、この機能に関する実装コード提供者ということもあり)既に本番環境で使用しているそうです。ほかにも、DevOps向けの機能、CassandraSEやLevelDBのサポート、LINEなどのメッセンジャーアプリケーションを実装する際に性能を高めるのに役立つ、スレッドプールなども、10.0.xの新機能として盛り込まれる予定です。

 新機能の話を聞いていると、企業の名前がちらほら出てきます。コードを提供した企業や、(試用も含め)使用した企業のようです。

 GoogleやFacebookといった大企業からの貢献にも言及がありました。MariaDBは着々と「味方」を増やし、勢力を拡大しつつあるようにも見えます。Charles氏は「オラクルを除く全てのOSS企業がMariaDBを支持している(笑)」と(冗談半分に)胸を張っていました。

 Charles氏はまとめとして「MariaDBはMySQLを置き替えるものではあるけれども、それだけにとどまらず、MySQLにない機能を盛り込んだり、(MySQLよりも)早く機能を実装していく」と話していました。MySQLをベースにしつつも、同等あるいはそれを上回るものにしたいという熱意が込められています。

 加えて、MariaDBで何よりも大事なことはMariaDBの目的でしょう。MariaDBの存在意義とも言えるかもしれません。それは、これまでMySQLのコミュニティが育んできたMySQLの文化やエコシステムをMariaDBを通じて守り続けることです。MariaDBに搭載されるものは技術的な互換性だけにはとどまりません。

 MariaDBの将来はコミュニティに託されていると言えます。SkySQLやMariaDB財団などの関係者だけではなく、MariaDBを支えようとする人たちの志次第でもあるわけです。

ストレージエンジン「Spider」

 MariaDBでもサポートされることになったストレージエンジンにSpider(リンク)があります。シャーディングを行うのが特徴です。

SpiderのWebサイトに掲載されているシステムダイアグラム

 一般的に、Web系のサービスでは、キャッシュサーバを使った構成でパフォーマンスを得ることがありますが、キャッシュサーバでは、Read処理の負荷を低減できますが、Write処理では、結局データベースサーバ側の負荷になります。書き込みによるデータ更新頻度が高い、多数のユーザーを抱えるソーシャル系のサービスなどでは、この部分が問題となることが少なくありません。そこで、KVSなどの仕組みが重宝されるのですが、KVSはデータベースの構造そのものが大きく異なることから、人的なメンテナンスコストも掛かります。

 Spiderは、こうした課題に対して、MySQLのストレージエンジン側でシャーディングを行う仕組みを提供、分散処理のメリットとRDBMSのメリットを利用できるようにしています。MySQLがストレージエンジンを選択できる構造であることが、ここで生きています。

 Spiderの開発者である斯波健徳氏が同イベントで登壇、Spiderの解説をしつつ、話の結びで参加者に向けてMariaDBのコミュニティの議論に参加するように呼びかけていました。バグに関するフィードバックだけではなく、MariaDBのあらゆる話題に関して皆が意見を交換することが今後のMariaDBにとって大切なことなのだと誰よりも実感しているのでしょう。

MariaDB Manager、MaxScaleとは?

 最後にSkySQLのCTO、Ivan Zoratti氏(写真)が紹介したMariaDB ManagerとMaxScaleについて簡単に。

Ivan Zoratti氏

 今秋、MariaDB Enterpriseがローンチされる予定です。これは大きく分けてMariaDBのサーバ群を管理するためのMariaDB ManagerとMariaDB Clusterから成ります。後者はMariaDBのサーバ、MHA(Master High AvailabilityManager and tools for MySQL)、Galera、これらに新しくMaxScaleが加わり構成されます。MaxScaleはMySQLプロキシに近いものとイメージしていいようです。

 MariaDB ManagerとMax Scale、いずれもこれから登場するMariaDB Enterpriseの構成要素となり、今後MariaDBがエンタープライズ領域へ進出するための鍵となりそうです。

 今やMariaDBとそのコミュニティは着々と勢力を拡大し、SkySQLは日本での仲介役となる企業が定まり(spiral arms およびアシスト)、日本市場への足がかりがつかめたところです。人気に火が付くのも目前かもしれません。

前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。