第4回 オープン化とBig Data技術


 本年7月、Big Dataに対応できるNOSQLのデータベース「Hibari」をオープンソースとしてリリースしたあと、幾度となく「どうやって儲けるのか?」、「ビジネスモデルは?」といった質問を受けました。正直に言うと、未だGeminiはHibariのオープンソースというビジネスから収入を上げているわけでもなく、成功例としてこの問いに答える立場にはありません。しかし、いろいろなケースを調べ、議論し、考えたことがあります。さらに、NOSQLのオープンソースという分野に参入したことで、学んだことがたくさんあります。本稿では、それをもとにオープン化とBig Data技術について整理してみたいと思います。

オープンソースとは?


 オープンソースとは、開発したソフトウェアのソースコードも含め公開し、誰もが自由に使用できる「ソフトウェア」です。このソフトウェアは、無料で入手でき、改変や再頒布もできます。ただし、その改変したソフトウェアを第3者に提供するためには、Apache License やGNU GPL(General Public License)といった、開発者が付したライセンス条件に従う必要があります。

 多くのオープンソースはGitHub(ギットハブ)、Sourceforge(ソースフォージ)というサイトから見つけることができます(図1)。また、NOSQLに大きな影響を与えたGoogleのBig TableやAmazonのDynamoはオープンソースではありませんが、これまでご紹介してきたHadoop/HBase、Cassandra、MongoDBなど、人気のあるオープンソースには多くの開発者達が参加するコミュニティがあり、そこで活発にバージョンアップが行われています。

図1 HibariとCassandraがダウンロードできるサイト

HibariのオープンソースがダウンロードできるGitHubの画面

 

CassandraがダウンロードできるGitHubの画面

HibariのオープンソースがダウンロードできるSourceforgeの画面 CassandraがダウンロードできるGitHubの画面

https://github.com/hibari/

 

https://github.com/apache/cassandra/

オープンソースのメリットは?


 オープンソースに対する大きな疑問は、「なぜ、せっかく開発したソフトウェアをオープンソースにするのか」という点かと思います。革新的であり、人気がでれば、独占的に大儲けできるかもしれません。それにもかかわらず、そのアイデアやソースコードをオープンソースとして公開するのはなぜでしょうか。「趣味で開発しているから」、「開発者として名を残したい」、「プログラムを作品として世に伝えたい」などなど、各自の思いを推測することはできますが、すべてに共通する解があるということはないのでしょう。

 この問いかけに対する回答の例として、以下ではGeminiがHibariをオープンソースとしてリリースしようとした際の考え方や背景を紹介しておきます。

(1)オープンソースは、多くの利用者に「試して」もらう機会
  Hibariは、CassandraがFacebookにより自社サービスのために開発されたことと同じく、もともとはオープンソースプロジェクトとして開発された訳ではありません。2005年、GeminiのUSのR&Dチームのブレインストーミングにおいてアイデアが生まれ、プロトタイプ開発、SNSのための商用開発、さらには大規模Webメールへの実装という4年間の年月を経たのち、オープンソースとしました。つまり、数百万人のユーザーにGBのメールボックスを無料で提供する大規模WebメールというBig Dataを扱うシステム全体の一部となるデータベースとして開発されました。

 そのため開発後数年、Hibariについては大規模システム技術の一部としてお客様に説明をしてきました。しかし、お客様からすれば大規模システム導入という意思決定はそう簡単なことではありません。その一方で、Big Dataの技術が求められる時代はすぐに来るとも確信していましたので、Hibariをまずは多くの方に利用していただき、理解してもらうことから始めようと考えたことが、オープンソースとした一番の理由でした。つまり、「無料で良いので試してみてください」というアプローチです。

(2)エコシステムづくりを期待
 Hibariは、Geminiのお客様のシステム環境を前提に開発されています。しかし、いまや利用する側の環境、すなわちOSや開発言語も多種多様です。こういったエコシステムを整えるために、オープンソースのコミュニティの力を借りたいと考えました。

 事実、オープンソースのリリース後すぐに、OSであるLinuxのUbuntsuやDebian、Mac OSXでHibariを利用するためのパッチ(修正ソフトウェア)が、さまざまな国の開発者から送られてきました。また、アプリケーション開発のために多様な開発言語を利用できるThrift(スリフト)というインターフェイスも加わりました。実際に利用できるようになるためにはもう少し時間が必要ですが、やがてコミュニティの力も借りてさまざまなOSや開発言語から利用できるようにしたいと考えているところです。

(3)オープンソースにして技術を鍛える
 Hibariが実装したチェインレプリケーション(連載第3回を参照)という機能は、論文では発表されていましたが、商用実装の実例は見当たりませんでした。そのため、このソースコードを公開することでBig Dataの技術の発展に貢献できると考えました。同時に、他の部分も含めてまだまだ課題があるため、オープンソースにして世界の開発者の目に触れさせることで、さまざまな部分の技術が鍛えられることを期待しました。

(4)アプリケーションは利用者が知っている
 この連載で繰り返しお伝えしているように、モバイルクラウドという環境ではBig Dataとの戦いが始まります。それは、あらゆる分野で起こるはずです。しかし、Geminiはメッセージングを始めとする情報通信分野を専門としており、たとえば金融といった異なる分野のアプリケーションに対する充分な経験や知識がありません。データベースは基盤系の技術であり、それを利用するアプリケーションソフトウェアが必要です。

 そこで、Hibariをオープンソースとすることでさまざまな分野のアプリケーション開発者に手軽に利用してもらえる環境を作り、Big Dataに対応する斬新なアイデアが生まれるのではないかと期待しました。

(5)想定外は、グローバルとブランド
 Hibariをオープンソースとする際には、上記の4つのメリットについて期待していましたが、実際にリリースしてみると気付かなかったメリットが見えてきました。それは、オープンソースは「グローバルに展開できる」という点です。

 ソフトウェアのプログラミング言語は世界共通です。HibariはErlangというプログラミング言語で開発されていますが、リリース後にはさまざまな国のErlang開発者から問い合わせがありました。もしもオープンソースとせず、自分たちが知るお客様にだけ紹介をしていたとすれば、HibariがもつBig Dataへの技術を伝えることができる範囲は極めて限定されていたことでしょう。インターネットを介して世界中のどこからでもダウンロードできるオープンソースとしたことで、グローバル展開の可能性が一気に高まりました。

 また、Geminiはキャリアをお客様としたビジネスを展開してきました。そのため、マーケティング活動はほとんど行わず、日本でいえば数社のお客様への対面の営業活動が基本であり、製品や社名などのブランドを多くの人に知っていただく必要を感じてきませんでした。しかし、Hibariをオープンソースとして発表したことで、記事に取り上げられ、イベントでプレゼンする機会も増え、結果として「Gemini Mobile Technologies」という社名までを多くの人に知ってもらえることとなりました。特に、オープンソースの場合はソースコードやドキュメントがオープンであることから、ソフトウェアの使用、改変、複製を法的、技術的に制限しているプロプライエタリ・ソフトウェアとは異なり、他のプロジェクトやユーザーとも情報交換がし易く、その距離も近くなることから、オープンな企業文化を醸成することにも役立つようです。こうしたブランディングの効果も期待できると感じ始めています。

12次ページへ
page top