AWSが今日(米国時間1/9)、MongoDBのAPIと互換性のあるデータベースDocumentDBをローンチした。同社はDocumentDBのことを、“既存のMongoDBアプリケーションやツールと互換性のある、高速でスケーラブルで高可用性のドキュメントデータベース”、と説明している。実質的にそれは、MongoDBをリプレースするためにAWSがホストするドロップインで、MongoDBのコードはまったく使っていない。
AWSによると、MongoDBは基本機能は良いが、そのオープンソースのプラットホームでは、数テラバイトもの、しかも毎秒数百から数千のリード/ライトがあるような規模にもスケールできる、高速で可用性の高いアプリケーションの構築が難しいことを、顧客は体験している。そこで同社がやったのは、自社独自のドキュメントデータベースを作り、それに、オープンソースのApache 2.0 MongoDB 3.6のAPIとの互換性を持たせることだ。
最近の数か月のオープンソースの政治学をフォローしてきた読者なら、これがあまり歓迎されない動向であることを、理解されるだろう。しかも、誰もが知っているように、AWSはオープンソースプロジェクトの良いとこ取りをして、それらの再利用と名称変えをしながら、コミュニティには何も還元していない、と長年非難されている。
しかも選りに選ってMongoDBは、それをやめさせようとした最初の企業のひとつだ。同社は、同社のオープンソースツールのライセンス規約を変えて、そういうことをしたい企業は商用ライセンスを買え、とした。ほかのオープンソース企業も、それに倣った。
MongoDBのCEOで社長のDev Ittycheriaはこう言っている: “模倣はいちばん正直な形の追従だ。だからAmazonがそうやって、MongoDBのドキュメントモデルの人気と勢いに乗っかろうとするのも意外ではない。でも、十分な技術力のあるデベロッパーなら、本物とお粗末な模倣の違いをすぐに見分けるだろう。MongoDBは今後も引き続き、市場に存在するどんな‘そっくりさん’にも勝る性能を維持するだろう”。
これはかなり戦闘的なコメントだが、昨年11月にIttycheriaは、本誌のRon Millerの取材に対して、AWSはドキュメントDBで大量のリソースを消費するMongoDBを愛しているはずだ、と言った。そのインタビューで彼は、“最近の5年間、顧客たちは、自分を大型ベンダーの束縛から解き放とうと努力してきた。彼らが絶対にやりたくないのは、同じ映画をリプレイすることだ”、と語った。〔次の5年間も同じ努力で苦しみたくない。〕
MongoDBの協同ファウンダーでCTOのEliot Horowitzも、同じことを言う: “デベロッパーに彼らが望むものを与えるためにAWSは2年前から、MongoDBのコードをベースとするMongoDBサービスの模倣を提供せざるをえなくなった。わが社は、その全体が一つのことにフォーカスしている。それは、デベロッパーにデータを処理するための最良の方法を与え、またそれをどこで動かしてもよい自由を与えることだ。今後どんな模造品が登場してきたとしても、このたった一つのミッションへのわが社の献身こそが、本物のMongoDBをそれらと差別化する要因だ”。
そして同社のスポークスパーソンによると、AmazonのDocumentDBが互換性を保証しているMongoDB 3.6は2年前の古いバージョンであり、ACIDトランザクションやグローバルクラスター、モバイルのシンクなど、多くの最新機能を欠いている。
しかしAWSも最近ではオープンソースに、ある意味で前よりも熱心になっており、デベロッパーの要望にも応えようと努力している。たしかに、MongoDB自身がホストするサービスに満足していないデベロッパーもいる。MongoDBのライセンスをバイパスしてAPIレベルの互換性を選んだことは、MongoDBがなぜ今のようなライセンス方式にしたかをAWSが知ってるからであり、それはつねに論争の元であったし、同社がオープンソースのコミュニティに愛されない理由でもあった。〔訳注: MongoDB社によるオープンソースソフトウェアの商用化(有料化)ライセンス方式については、この記事を参照してください。〕
[原文へ]
(翻訳:iwatani(a.k.a. hiwa)