米Twitterのオープンソースマネージャー、Chris Aniszczyk氏が、Linuxをはじめとするオープンソースソフトウェアが同社のインフラをどのように支えているか、そして同社がどのようにコミュニティと関わっているかについて講演した。
「オープンソースに貢献すれば、その分だけ返ってくる」――10月26日、The Linux Foundationが開催したカンファレンス「Enterprise User's Meeting」に、米Twitterのオープンソースマネージャー、Chris Aniszczyk氏が登場し、Linuxをはじめとするオープンソースソフトウェアが同社のインフラをどのように支えているか、そして同社がどのようにコミュニティと関わっているかについて説明した。
Twitterが世界有数の規模の、しかも極めてリアルタイム性の高いソーシャルネットワークサービスであることは、いまさら説明の必要もないほどだろう。そのインフラの多くに、GitやJenkins、Drupal、Apache LuceneやHadoopといったさまざまなオープンソースソフトウェアと、同社が独自に開発しオープンソースとして公開したソフトウェアが利用されている。Aniszczyk氏によれば、「90%以上は何らかの形でオープンソースを利用している」。一方で、広告サービスなどに直結する顧客の情報などはクローズドなシステムで扱っているそうだ。
例えば、タイムラインに1つのつぶやきが書き込まれるまでにも、ステータスIDを管理する「Snowflake」、位置情報を提供する「Rockdove」(ただしこのサービスはまだオープンソース化されておらず、「検討中」とのこと)、URLを変換しスパムを排除するT.COのラッパー、シャーディング技術を活用して分散データストアを実現する「Gizzard」、Apache Luceneをベースにしたインデックスエンジン「Earlybird」、「ファンアウト」というつぶやき配送プロセスを処理する「FlockDB」……と、多種多様なオープンなソフトウェアが利用されている。こうしたシステム全体が、Linux(Fedora)と「Apache Mesos」による負荷分散システムの上で動いている。
こうして毎週28億件、平均して毎秒5000件に上るつぶやきが処理されている。「Twitterという会社全体が、オープンソース技術で構築されている」(Aniszczyk氏)。
同社のこの姿勢は、「Default to Open」というスローガンを掲げた米Red Hat社の姿勢にインスピレーションを受けてのものだという。普通の企業ならば基本はクローズで、表に出しても差し支えない部分だけをオープンにするものだが、「われわれはその逆だ」(Aniszczyk氏)。
そうした成果の1つが、CSSフレームワークの「Bootstrap」だ。元々社内のツールキットとして作成したものをオープンソースとして公開したところ、「モバイル向け開発などで大きな成功を収め、githubでも人気を博し、多くのフォークが生まれている」(同氏)。
「10年前ならば、かなりの部分をインハウスでまかなっただろうが、いまは必ずしもそれが利益につながるとは限らない。既成のオープンソースのコンポーネントを持ってきて使い、変更したらみんなでシェアして使うことが有効だと思う」と述べ、まだ始まったばかりだというオープンソースコミュニティとの関係を、健全なエコシステムに育てていきたいとした。
Copyright © ITmedia, Inc. All Rights Reserved.