|
|
MobageなどのデータベースとしてMySQLを採用しているDeNAは、このほどMySQLコミュニティ最大のイベントで、「Corporate Contributor of the Year 2011」を受賞した。そこで示されたDeNAの世界に通用する技術力とは──。
(取材・文/広重隆樹 総研スタッフ/宮みゆき 撮影/栗原克己)作成日:11.05.11
|
システム統括本部IT基盤部 インフラ担当プリンシパルアーキテクト MySQLエバンジェリスト 松信 嘉範氏 |
オープンソース・データベースとして世界中で使われているMySQL。大規模なトランザクションを処理するサイト構築には不可欠の技術だが、株式会社ディー・エヌ・エー(DeNA)はMySQLを徹底して使い倒し、独自の拡張技術を開発することを通して、その可用性を高めてきた、日本を代表するユーザー企業の一つとして知られている。現在、Mobage(モバゲー)サービスを動かすために、約700台のMySQLサーバーが稼働しており、その数は世界的にも有数のものだ。
4月中旬に米サンタクララで開かれたMySQLコミュニティ最大のイベント、MySQL Conference & Expo 2011で、DeNAは「Corporate Contributor of the Year」を受賞した。この年MySQLコミュニティにもっとも貢献した企業として評価されたのだ。 |
DeNAのMySQLに対するどんな取り組みが評価されたのだろうか。それを語る前に、NoSQLとMySQLの対抗関係という背景に触れる必要がある。大規模トランザクションを支えるバックエンド・データベースとしてはいま、NoSQLの動きが世界的に注目されている。「NoSQL」という言葉はもともと「リレーショナルデータベース管理システム=RDBMS以外の、SQLを使わないデータベース」を総称するものだ。NoSQLデータベースには様々な実装があるが、中には安価なサーバーを大量に並べ、並列処理をすることで処理性能の向上を可能にしたものも出てきている。分散環境での性能を追求するためにNoSQLデータベースの導入を検討したり、実際に採用する企業も増えてきた。「NoSQLの登場によって、RDBMSの時代は終わった」とコメントするエンジニアもいるぐらいだ。 MySQLを含む従来のRDBMSに対して、NoSQL陣営からその欠点、例えば“遅さ”を指摘する声はそれなりに強いものがあった。それに対して、MySQLユーザーとしてしっかりと応答することが求められていたのだ。 |
MySQL Conference & Expo 2011での授賞式の様子 |
松信氏は昨年、自身が開設している英語ブログで、MySQL5.1 + HandlerSocketのベンチマーク環境でチューニングを行った結果、75万クエリ/秒という、多くのNoSQLでも実現できないようなパフォーマンスを達成したことを報告した。この報告には、世界中のエンジニアから短期間に100件を越えるコメントがつくなど、大きな反響があった。
「この報告は、MySQLをNoSQLとしても使い、バックボーンのストレージエンジンは、innoDBで共有するという先進的な使い方の可能性を示したものです。このコンセプトを世界に広く示したのは、DeNAが初めて。これによって、これからもMySQLで十分やっていけるという確信がMySQLコミュニティには生まれたと思います。そこが今回の評価のポイントの一つになっています」 と、松信氏は語る。実際に、MySQLの本家開発元であるオラクルは、4月にリリースされたMySQLバージョン5.6では、memcachedのプロトコルでinnoDBのデータストアにアクセスできる機能を実験的に追加している。
システム統括本部IT基盤部 樋口 証氏 |
MySQLをより高速化させるために、DeNAが独自に実装しているHandler socket plugin。TCP/IPでリクエストを受けて、ストレージエンジンを直接たたいたり、独自プロトコルを話すなどの特長があり、そのことによって単純な参照クエリで数倍から10倍程度にパフォーマンスが高まる。
Handler socket pluginは、昨年夏のDeNAテクノロジー・セミナーで初めて発表された。その開発者が樋口証氏(システム統括本部IT基盤部)だ。
必要とあらば、ストレージエンジンまで新たに書き直してしまう実力を持つエンジニアたちによって、DeNAのMySQL活用スキルは世界レベルのものになってきた。とは言え、樋口氏の関心はMySQLだけに向けられているわけではない。 DeNAのエンジニアに求められているのは、サービスに必要で、かつ最適な技術を選ぶ“目利き”としての能力だ。特定プロダクトに縛られてしまって、全体の動向を見失うことがあってはならないということなのだ。 |
最近は業務としてもっぱらWebアプリケーションのパフォーマンス・チューニングに力を注いでいる樋口氏。
「いま考えているのは、アプリケーションの機能の一部をデータベース側にもたせたらどうだろうってこと」と、さりげなくスゴイことを語る。
「いまのMobageでは、Webアプリケーション層、データベース層が物理的に分かれているのですが、この構成が最適のものだとは思っていないんです。分かれていることで頻繁に通信が発生する。これがサービスのレスポンス悪化を招いています。サーバーを量的にスケールさせれば、全体のスループットは上がりますがレスポンスは改善しません。理論的には、アプリケーションの機能の一部をDBにもたせれば、ネットワーク通信の頻度を減らせる。つまりそれだけレスポンスが改善する。ただ、そこまでは誰もが考えつくけれど、本気でそこまで取り組む人は少ない。そのあたりをそろそろやってみようかと、実験を始めているところです」 今後の成果に期待のもてる発言だ。
一方、松信氏はこれからの自分の課題をこう語る。
「私はMySQLの人のように見られますが、マインドしてはオープン。他のデータベースを使ったこともあります。MySQLやLinuxに限らず、データベース及びインフラのソリューションのスペシャリストとして世にある技術やプロダクトを活用し、その知見を広めていくのが自分の役目だと思います。例えば、アプリケーションのエンジニアは、データベースの設計を必ずしも得意としていない人もいます。ベストプラクティスを共有して質の高いサービス開発・運用に貢献していくことも私の職務です。さらに英語で情報発信するのが得意という自分の利点を生かして、今後のDeNAのグローバル展開にも寄与できればと思っています」
MySQL Conference & Expoでは、松信氏もスピーカーの一人として、毎年のように演壇に立ち、英語でスピーチをする。今回も3つのセッションを担当。そのトータルはゆうに4時間半に及び、中でも「Linuxおよびハードウェアのチューニング」と「マスターの自動フェイルオーバー」については全体でも有数の満員御礼のセッションになったという。英語圏で大きな反響のある情報発信という意味では、日本のIT企業はまだ弱いところがある。しかし、今回のカンファレンスにおける4時間半という講演時間は、Webサービス会社としてはFacebook社と並んで最も多いものだ。DeNAの技術を世界に発信するという目論みは、とりあえずは成功したようだ。
DeNAにおけるMySQL活用の一端を語る2人のスーパーエンジニア。こうしたレベルのエキスパートが他にもぞろぞろと存在するのが、同社の技術の強みだ。今後のエンジニア採用はその人材基盤をさらに強めることが狙い。どのようなエンジニアが求められているのか。
樋口氏がこれからの転職者に求めるのは、まずは一人のエンジニアのなかで完結したスキルの高さだ。
「IT基盤部ではアプリケーションもサーバーもネットワークも一通りわからないといけませんから、その知識と経験は重要ですね。例えばLinuxサーバーをゼロから自分で組み立てて、構築・運用している人は多いと思うんです。たんに組み立てるだけでなく、そこで高負荷運用なども試して、自分なりの知見を得ていることが重要です。高負荷テストは、実は自宅のほうがやりやすい。反面、仕事でサーバーやっているといっても、一人で全部やれるという人は意外と少ないんですよね」
一人でなんでもやれるというレベルの自立したエンジニアが集まることで、集団としてのスキルはより高まる。個々のエンジニアのスキルが組織的に集合化されるためには、一人ひとりのエンジニアがたえずモノを考え続けることが重要だ。松信氏が指摘するのは、エンジニアに思考停止を許さないDeNAの環境である。
「エンジニアにとって致命的なのは、思考停止してしまうこと。“このプロダクトがいいから、これでいこう”と思い込んでしまうと、そこで成長が止まってしまう危険性があります。大きなトレンドに敏感であることは重要ですが、流行り物に流されるだけというのもつまらない。“これでいいのか、これが最適なのか”という問いを常に発し、考え続けることが大切。幸い、DeNAには技術レベルの高いエンジニアがたくさんいる。彼らと真っ向から議論し、切磋琢磨できるレベルのエンジニアなら、たぶん思考停止することはないと思います」 と、松信氏は語っている。
1993年からGNU/Linuxを利用。2005年にはIPA(情報処理推進機構)の「未踏スーパークリエータ」の一人に認定される。2009年10月DeNAに転職してからはIT基盤部でシステムのパフォーマンス最適化や障害の分析、ミドルウェアの開発などに従事してきた。「Handlersocket plugin」の開発者。
|
2001年、ソニーに入社。Oracleを2001年から、MySQLを2004年から使い始め、2006年9月にMySQL社に転職し、オープンソースRDBMSの道に足を大きく踏み入れる。その後、MySQLの買収に伴い、サンマイクロシステムズ、オラクルに移る。2010年9月にDeNAに転職。
|
このレポートに関連する企業情報です
◆モバイルを中心としたインターネットサービス事業等続きを見る
このレポートの連載バックナンバー
人気企業の採用実態
あの人気企業はいま、どんな採用活動を行っているのか。大量採用?厳選採用?社長の狙い、社員の思いは?Tech総研が独自に取材、気になる実態を徹底レポート。
このレポートを読んだあなたにオススメします
開発スピードと品質を両立させ、メンバーの成長を促す
DeNAが求めるエンジニアリングマネージャーの「要件」
エンジニア主体で企画から開発・設計、データ分析・運用まで担当するDeNA。そのプロジェクトをマネジメントするのは、自ら開発者でも…
開発者末永氏と、ソーシャルゲーム開発リーダー広瀬氏が明かす
DeNAが開発した新たなフレームワークGunyaSiFとは?
ソーシャルゲームやアプリ開発を全面サポートする機能を搭載したフレームワーク「GunyaSiF」。それはソーシャルゲーム…
スマートフォン、クラウド、LAMP、データマイニング、シゴトetc.
新年会CROSSでDeNAが語ったWebテクノロジー展望とは
「エンジニアサポート新年会2012 CROSS」は、Webテクノロジーに関わるエンジニアが集まり、未来の展望を語り合う勉強会だ…
DeNAを選んだ決め手は?─ngmoco CEOのNeil Young氏インタビュー
津田大介氏が、SFのゲームベンチャーngmocoを直撃取材
津田大介氏によるシリコンバレー取材レポート。米国のソーシャルゲーム企業ngmocoのCEOであるNeil Young氏が、起業の…
スマートフォン向けクロスプラットフォーム・ゲームエンジン強化
DeNA川崎氏が語る──秒速で進化する「ngCore」の全貌
DeNAおよびそのグループ企業である米ngmoco社が開発・提供する「ngCore」。業界の中でも最先端と言われるスマートフォン…
広める?深める?…あなたが目指したいのはどっちだ
自分に合った「キャリアアップ」2つの登り方
「キャリアアップしたい」と考えるのは、ビジネスパーソンとして当然のこと。しかし、どんなふうにキャリアアップしたいのか、…
あなたのメッセージがTech総研に載るかも