AWSが新DBサービス「Amazon DocumentDB」発表。MongoDB互換のマネージドデータベース
MongoDBはオープンソースで開発されているドキュメント指向データベースです。データの形式として「Document」と呼ばれるJSONライクな柔軟にデータを格納できる形式を採用、ドキュメントの集合を「コレクション」として管理します。
NoSQLの高いパフォーマンスとスケーラビリティを保持しつつ、柔軟なデータ構造と複雑な検索などを実現するMongoDBは、代表的なNoSQLデータベースの1つとして知られています。
そのMongoDBと互換性のあるデータベースを、AWSが「Amazon DocumentDB (with MongoDB compatibility)」として発表しました。
Amazon DocumentDBはマネージドサービスとして提供されます。
10GBから64TBまで10GBずつ拡大するデータベース容量、15.25GBから488GBまでメモリ容量が拡大するインスタンスサイズなどによる高いスケーラビリティと、最大15までのリードレプリカを設定可能。
読み出し性能は1秒あたり数百万リードをミリ秒のレイテンシで実現。6ウェイのレプリケーションで可用性を維持するうえ、障害時のプライマリからレプリカへのフェイルオーバーは30秒以内に行われるとのことです。
Amazon DocumentDBはMongoDB 3.6のAPIを内部的にエミュレートすることで互換性を実現しているため、既存のMongoDB対応アプリケーションをそのまま動かすことが可能と説明されています。
MongoDBの選択肢が広がる
これまでAWS上でMongoDBを利用する際には、ユーザー自身でMongoDBをインストールして利用する以外に、MongoDBの開発元であるMongoDB社が提供するマネージドサービス「Atlas」を利用することが可能でした。AtlasはAWSだけでなく、Microsoft AzureやGoogle Cloud Platformでも利用可能です。
参考:MongoDB-as-a-Serviceの「Atlas」がAWS/Azure/GCPに対応。クロスリージョン、クロスクラウドのクラスタ構成も実現へ。MongoDB World 2017
またMicrosoft Azureで提供されているマネージドサービス「Azure DocumentDB」ではMongoDB互換機能を2016年から提供しており、さらに2017年に発表されたグローバル規模の分散データベースである「Azure Cosmos DB」でもMongoDB互換APIを利用可能になっています。
参考:[速報]マイクロソフトがグローバル規模の分散NoSQLデータベース「Azure Cosmos DB」発表。数ミリ秒のレイテンシ保証、一貫性の強さを選択。Build 2017
AWS自身は、NoSQLデータベースのマネージドサービスとしてAmazon DynamoDBを提供していました。これはドキュメントデータベース的な機能を備えつつもAWS独自のNoSQLデータベースでした。
今回、AWSがMongoDB互換のドキュメントデータベースを提供することは、このように市場的にはやや後追いのように見えます。しかしMongoDBユーザーにとってはAWS自身によるマネージドサービスが提供されたことで、有力な選択肢が広がったことになるでしょう。