オープンソースである理由

Elasticのコミュニティとビジネスにとって大きな強みであり、すべての活動の中心にあるのがオープンソースです。

100から2億へ

2010年に数えるほどだったElasticsearchのダウンロード回数は、2018年に2億5千万回を突破しました。オープンソースのプロジェクトとは、端的にそういうことです。コードが無料で公開されていることでユーザーの心理的なハードルが下がり、導入数を爆発的に増やすことができます。

オープンソースの効果は、ソフトウェアの配布段階だけに留まりません。あらゆる観点で製品の質を高める効果もあります。ダウンロードのたびにプロジェクトを改良し、進化させる機会が生じます。多くのユーザーがコードを精査すればセキュリティが強化されます。あらゆるアーキテクチャーと環境で過酷にテストされるうちに、確かな信頼性とレジリエンシー(回復力)が備わります。新しいユースケースや、統合、アドオン、プラグイン、フレームワークを試すことで拡張性が高まります。

もしコードが完璧になるまで公開しなかったら、今のようなElasticsearchが誕生することもありませんでした。オープンソースというシャーレに1滴ずつ培養液を投入して、ダウンロードのたびに自然な進化を遂げたプロジェクト。それがElasticsearchです。

コミュニティとコラボレーション

ソフトウェア開発は素敵です。しかし、開発されたソフトウェアの周囲にコミュニティを構築すれば、もっと素敵になります。最初のダウンロードで作成者とユーザーの会話やチャットがはじまり、質問や意見が交わされます。はじめて問題が見つかり、最初のプルリクエストがあり、初回のアップデートや拡張が実施されます。バグやタイポも互いに見つけ合えば修正できます。ソフトウェアの規模を問わず、コラボレーションはいつでも開発に役立ちます。そのきっかけとなるダウンロードが、億の単位に届いたとき―どうなるでしょうか?

全員が同じコードについて作業するので、Elasticの製品にはある種の自然淘汰が働きます(BDFLアプローチ、とも言えます)。ある機能に関して、コミュニティには複数のバージョンがありますが、最終的には特定の集団が決断を下し、1つを組み込むことになります。そのため無駄な機能が入ることはなく、製品をより強化し、改良する機能だけが組み込まれます。

それだけ大きなコミュニティを維持することは、コードを維持するのと同じくらい大変です。何年もかけて、Elasticは多くのことを学んできました。大切なのは、誰もが歓迎されていると感じることができる、温かいコミュニティを築くことです。さらに、あらゆる人の声に耳を傾けること(まったく反対のリクエストが同時に来ても、です)。そして、Elasticの学びはこれからも続きます。

新しいアイデア

初期には「事業用検索エンジンのElasticsearchは最高」という表現で何の問題もありませんでした。しかしオープンソースの場合、ユーザーはある日まったく新しい使い方を発明します。

ジョーダン・シセルとラシード・カーンは互いに遠距離ですが米国在住で、ともにシステム管理者でした。2人はある時、ログファイルをElasticsearchに送り、可視化したらどうなるだろうと考えはじめました。こうしてデータ入力パイプラインのLogstash、そして可視化エンジンのKibanaが生まれ、ロギングという新しいユースケースが開発されました。単体の製品というスタンスを越え、組み合わせるためのソフトウェアが加わったのです。

海の反対側ではモニカ・サルブとトゥドゥール・ゴルベンコが、エッジマシンからネットワークパケットデータを取得してElasticsearchに送ってはどうか、と考えていました。そして開発されたのがPacketbeatです。やがてPacketbeatをヒントに、多様なデータを扱う軽量シッパーのBeatsファミリーが開発されました。

コミュニティが開発したり、アイデアを出した機能や拡張機能、プラグイン、アドオン、ユースケースは多岐にわたります。機械学習から自然言語処理、アプリケーションパフォーマンスメトリックと色調カテゴリ、セキュリティイベント、ブログKPIまで、枚挙にいとまがありません。

1つのコードベースで何千人もの開発者がイノベーションを重ねたら一体どんなことが起きるだろう?Elasticはその答えを目の当たりにしてきました。

Elasticのオープンソースモデル

オープンソースでビジネスモデルを構築することは簡単ではありません。他社の事例からも多くを学ぶことができます。

たとえば、サポート限定のビジネスモデルで採算を保つ企業もあります。企業にとっては優れたモデルですが、次々と課題に直面するユーザーのうち、一部のユーザーの問題しか解決されません。このアプローチでは、製品を使いやすくすることで顧客を支援しようという発想は生まれにくくなります。定常的なサポートニーズが事業収益となるので、製品改良へのインセンティブが働きません。

その他に、元のオープンソースプロジェクトから有償版(エンタープライズ版)を派生させるビジネスモデルもあります。しかしElasticの場合、このモデルはプロジェクトのコードとコミュニティの分断を招きます。コミュニティの信頼を傷つけ、テストの機会を失う可能性や、製品の質の低下、オープンソースソフトウェアとしての競争力の低下につながることもありえます。

そこで、Elasticは新しいビジネスモデルを作りました。単一バージョンのオープンソフトウェア製品群の中で、オープンソースと有償コードの健全なバランスを取り、サポートとサービスも提供する、というスタイルです。あらゆる製品を通じて、十分なバリューをユーザーに提供できるかどうかはElasticの努力次第です。結果として、使いやすく、信頼ある製品を提供すると同時に、スキルと知識を高められるようユーザーの支援も行い、Elasticは成長を続けています。

1人の開発者から広がるElastic Stack

コードがオーガニックに進化するように、企業でElastic製品を導入する際も、自然に進展してゆきます。たいていは、1人の開発者が製品を試し、気に入るところからはじまります。やがて同僚の中で話題になり、小さな概念実証からミッションクリティカルなシステムでの大規模デプロイへ、急速に進展してゆくのです。

その後重役や経営幹部の目にとまり、Elastic製品を正式に導入するか、話し合う会議が行われます。「価値を生み出し、事業を効率化するツールであれば有償で導入しよう」という意見が出て、ときに「組織の開発者全体で使うべきだ」という話になることもあります。

「価値」は共通のものさしです。オープンソースであることが最初の導入のきっかけでも、投資や購入の判断をもたらすのは「価値」です。アプリケーション検索としてはじまったプロジェクトがログや異常検知、APMなど、幅広いユースケースに対応するElastic Stackとなり、現在も進化を続けているのは、その積み重ねがあるからです。

OSSFL:Open Source Software for Life

Elasticはオープンソースの力を信じ、今後もその姿勢が変わることはありません。多くの企業は規模が拡大するにつれてより閉ざされたコミュニティになりますが、Elasticはそうではありません。よりオープンになることを選択し、これからもオープンソースコミュニティに寄り添うことを事業のインセンティブとして掲げ続けます。

以前X-Packと呼んでいたElastic Stack有償機能のコードを公開した理由はそこにあります。オープン化することで開発スピードを向上させ、費用と複雑さを排除し、コミュニティ全体の参加を促すことができます。

オープンソース化への道のりは決して平坦ではありませんでした。しかしElasticは、ソフトウェアを開発し、製品、企業、コミュニティが成功に向かって進む上でオープン化が最良の道だと強く信じています。

Elasticについて

Elasticの製品、活動、コミュニティについて詳しくご覧ください。

導入事例

Elastic製品の導入事例をご紹介しています。

さらに詳しく

カルチャー

Elasticのカルチャーをお伝えしています。

さらに詳しく

プロダクト

Elastic製品の紹介です。

さらに詳しく