• 14 min read

Azure Cosmos DB - インテリジェント クラウド向けのデータベース - インテリジェント エッジの時代

Azure Cosmos DB は、ミッション クリティカルなワークロード向けの、Microsoft のグローバル分散型マルチモデル データベース サービスです。


1

Azure Cosmos DB

2Azure Cosmos DB は、ミッション クリティカルなワークロード向けの、Microsoft のグローバル分散型マルチモデル データベース サービスです。Azure Cosmos DB は、無制限のエンドポイント スケーラビリティを持つターン キー グローバル分散を実現し、世界規模での弾力的なスケーリングをスループット (データベース、キー スペース、テーブル、コレクションなど、複数の細分性に対応) とストレージに対して行い、99 パーセンタイルで 10 ミリ秒未満の待機時間、明確でわかりやすい 5 種類の整合性モデル、保証された高可用性を提供します。そのすべては、業界トップレベルの包括的な SLA で保証されています。Azure Cosmos DB では、すべてのデータのインデックスが自動的に作成されるため、開発者がスキーマやインデックスの管理に対処する必要はありません。また、マルチモデル サービスでもあり、ドキュメント、キー値、グラフ、列ファミリのデータ モデルをネイティブにサポートしています。Cosmos DB は、最初からクラウド サービスとして開発されており、初期段階からマルチテナントとグローバル分散を想定して入念に設計されています。Azure の基盤となるサービスとして、Cosmos DB はユビキタスであり、あらゆるパブリック リージョン、DoD、ソブリン クラウドで動作し、業界トップのコンプライアンス認定リストやエンタープライズ グレードのセキュリティを備えています。そのすべてを追加料金を支払わずに利用できます。

Cosmos DB では、一般的なオープン ソース データベース用のワイヤ プロトコル対応の API を提供するというユニークなアプローチが採用されており、クラウドに依存しない方法で引き続き Azure Cosmos DB を使用しつつ、クラウド用にネイティブに設計された堅牢なデータベース プラットフォームを活用できます。完全に管理された CassandraGremlinMongoDB のアプリを、ベンダー ロックインなしで柔軟に実行できます。Azure Cosmos DB は一般的なオープン ソース データベース用の API を公開していますが、API のセマンティクスの実現に当たっては、対応するそれらのデータベースの実装に依存していません。

3

Ignite 2018 で、Microsoft は数十年にわたる分散システムの研究を発表し、Cosmos DB を Microsoft のインテリジェント クラウド インテリジェント エッジのビジョンを実現するためのデータベースとします。Azure Cosmos DB により、数十年にわたる分散システムの研究は厳格なエンジニアリングと結び付けられて成果を生み、大規模なスケールで運用されるようになりました。これは、この技術ブログで詳しく取り上げられています。

Ignite 2018 での Azure Cosmos DB

Ignite 2018 で発表する新しい Cosmos DB の機能は、誰もがインテリジェント クラウド インテリジェント エッジの時代に向けてグローバル分散型アプリを簡単に構築できるようにするための重要なステップです。

世界規模でのマルチマスターの一般提供

世界規模でのマルチマスターの一般提供について発表いたします。これに伴い、マルチマスター レプリケーションにより、前例のない書き込みスケーラビリティと可用性が実現します。Cosmos DB のマルチマスター レプリケーション プロトコルを使用すると、すべてのリージョンで (読み取りに加えて) 書き込みを行えるようになります。これによって、次のことが可能になりました。

  • 4世界中で、無制限かつ弾力的な書き込みスケーラビリティ。Azure Cosmos DB を使用することで、世界中の任意の数の Azure リージョンでいつでも、(読み取りに加えて) 書き込みを弾力的にスケーリングできるようになりました。
  • 世界中で、99.999% の書き込み可用性。Azure Cosmos DB では、世界中で (99.999% 読み取り可用性に加えて) 99.999% の書き込み可用性が提供されており、これは業界トップの SLA で保証されています。
  • 世界中で、99 パーセンタイルの低書き込み待機時間を保証。10 ミリ秒未満の読み取り待機時間の保証に加えて、Azure Cosmos DB では世界中のあらゆる場所で、99 パーセンタイルでの 1 桁の書き込み待機時間が保証されるようになりました。これは、返金規定のある SLA で保証されています。
  • 世界中で、無制限のエンドポイント スケーラビリティ。Azure Cosmos DB のレプリケーション プロトコルは、何百ものクラウド リージョンから数十億のエッジ デバイスに至る、無制限のエンドポイントをサポートするよう設計されています。そのマスターレス レプリケーション プロトコルは、クラウド リージョンとエッジ エンドポイントをすべて同じように扱うように設計されています。クラウド リージョンとエッジ デバイスは真のピアとなります。Azure Cosmos DB は、ISV や開発者が接続頻度の低いエッジ アプリを作成したり、オンプレミスや他のクラウドで実行されるデータベースをアクティブ/アクティブ方式で Cosmos DB にシームレスに接続したりできるように設計されています。
  • 明確でわかりやすい複数の整合性モデルを選択可能。Azure Cosmos DB のマルチマスター レプリケーション プロトコルは、既に公開されているさまざまな整合性モデルとの適合性が大変優れています。データの整合性のための直感的なプログラミング モデルを引き続き利用可能であり、特定の整合性モデルに関する可用性、待機時間、スループットのトレードオフは明確です。
  • 競合管理のための直感的かつ柔軟なプログラミング モデル。マスターレス データベース アーキテクチャでは、書き込み同士の競合が発生することがあります。  一般的なマスターレス システムでは、競合を検出して解決する作業がアプリケーション開発者の負担になることが少なくありません。Azure Cosmos DB のレプリケーション プロトコルの設計では、競合が自動的に検出されるようになっています。さらに、強力な収束を保証する、わかりやすい複数の競合解決モードも備えられています。
  • すべての API とデータ モデルのためのマルチマスター機能。Azure Cosmos DB のマルチマスター レプリケーション プロトコルは、既にサービスによって公開されているすべての API に自動的に適用されます。お好きなオープンソース ソフトウェア (OSS) API とツールチェーンを引き続き使用できます。さらに、マルチマスターと、それに付属するすべての機能を OSS ベースのアプリのために利用できるようになりました。初めて、マルチマスター MongoDB、マルチマスター Gremlin (グラフ) アプリを数秒以内に構築できるようになりました。

マルチマスター レプリケーションの詳細については、こちらをご覧ください

Cassandra API の一般提供

Cassandra API の一般提供を発表します。Cosmos DB は、Apache Cassandra とのワイヤ プロトコル レベルの互換性を提供し、コードを変更することなく既存のアプリケーションと OSS ツールを使い続けられるようにします。さらに、クラウド用としてネイティブに設計された堅牢なデータベース プラットフォームを引き続き活用しながら、完全に管理された Cassandra アプリをベンダー ロックなしで柔軟に実行できるようにします。Azure Cosmos DB は Cassandra API によって Apache Cassandra をネイティブにサポートしているため、次の利点があります。

  • 5完全に管理された、サービスとしてのサーバーレス Cassandra。Azure Cosmos DB は真の PaaS サービスであり、OS、JVM、YAML ファイルにわたる無数の設定の管理と監視を心配することなく、複雑な相互依存関係を処理できます。Azure Cosmos DB は、スループット、待機時間、整合性、ストレージ、可用性の監視に優れ、これらに変更が生じた場合に処置できるよう、アラートを設定可能です。
  • ターンキー グローバル分散。Azure Cosmos DB は、ユーザーがどこにいてもデータを利用できるよう、初期段階からグローバル分散型サービスとして設計されています。このサービスは、Cassandra テーブルに関連付けられた任意の数の Azure リージョンにデータを透過的かつ自動的に複製します。Azure portal で数回クリックするだけで、またはプログラムによっていつでも Cassandra テーブルのリージョンを追加または削除できます。
  • ストレージを弾力的かつ透過的にスケーリング。Azure Cosmos DB には、手動による介入を必要としない自動ストレージ管理機能が備えられています。アプリケーションに必要なストレージが増えると、それに合わせて容量を増やします。複雑な容量計画のことで心配する必要はなくなります。クラスター ノードの追加や設定のチューニングに煩わされることもありません。
  • 世界中でスループットを弾力的なスケーリング。Azure Cosmos DB では、CPU、メモリ、ディスク IO、圧縮の設定のチューニングを心配する必要はありません。Azure Cosmos DB を使用すると、世界中の Cassandra テーブルのスループットをスケーリングでき、格納されているデータ量にかかわらず、構成されているスループットが保証されます。
  • 読み取りと書き込みの短い待機時間を保証。Azure Cosmos DB はスキーマに依存しないデータベースとして、すべてのデータのインデックスを自動的に作成します。これにより、超高速のクエリ実行が可能になります。このサービスでは、99 パーセンタイルでの 10 ミリ秒未満の待機時間が保証されており、ほぼリアルタイムでクエリの結果が得られます。
  • トレードオフが明確な、わかりやすい複数の整合性モデル。結果整合性データベースに対して正確な分散型アプリケーション ロジックを作成することは、決して容易なことではありません。Azure Cosmos DB は、明確でわかりやすい直感的かつ実際的な整合性レベルを 5 つ提供しています。それぞれのレベルに、望ましい整合性とパフォーマンス、保証された正確性、SLA による保証の間の明確なトレードオフがあります。複数の整合性モデルから選択できるようになり、これらをいつでも構成して、要求ごとに変更することができます。
  • 既定で、セキュリティとコンプライアンスが確保されており、エンタープライズ対応。Azure Cosmos DB は、ミッション クリティカルなアプリのための、セキュリティとコンプライアンスが確保された、エンタープライズ対応のサービスです。Azure Cosmos DB は、厳格なコンプライアンス基準を満たしています。これには、ISO 27001ISO 27018EUMCPCI DSSSOC 1、2、3HIPAA/HITECH などのコンプライアンス認定が含まれます。Azure Cosmos DB では、保存データの暗号化と移動中のデータの暗号化、IP ファイアウォールデータベース アクティビティの監査ログVNET (サービス エンドポイント) サポートも提供されており、エンタープライズで要求されるセキュリティ基準を確実に満たしています。
  • 業界トップの包括的な SLA による保証。Azure Cosmos DB は、業界トップの包括的な SLA を提供しています。単一リージョンでの 99.99% の高可用性、世界規模での 99.999% の読み取りおよび書き込みの可用性、99 パーセンタイルの整合性、スループット、読み取りおよび書き込みの低待機時間を提供します。ユーザーは、運用のオーバーヘッドや、パフォーマンス向上のための多数の構成オプションのチューニングを心配する必要はありません。Azure Cosmos DB のおかげで、こうしたすべての問題の管理について心配しなくてもよくなり、その分、アプリケーション ロジックに集中できます。
  • NoSQL ワークロードをクラウドに簡単に移行。また、Azure Cosmos DB によって、Cosmos DB へのデータ ワークロードの移行が簡単になり、クラウド固有のデータベースのメリットをすぐに実感できます。

Azure Cosmos DB Cassandra API の詳細については、こちらをご覧ください

Cosmos 開発者へのその他の良いお知らせ

データベース レベルでプロビジョニングされたスループットを最大 5 分の 1 の価格で始めることができる: データベース レベルでプロビジョニングされたスループットを最大 5 分の 1 の価格で始められるようになったことを発表いたします。これまでは、Cosmos DB コンテナー (使用しているデータ モデルや API により、コレクション、テーブル、グラフなど) のスループットを、プログラミングや Azure portal 経由でプロビジョニングすることができました。それに加えて、これからは、Cosmos DB データベースでスループットを設定できるようになりました。Cosmos DB データベースでスループットをプロビジョニングすると、そのデータベースに属するすべてのコンテナー間でスループットを共有できます。これにより、プロビジョニングされたスループットを Cosmos DB データベース内のコンテナーのセットに「プール」できるようになります。  実際には、特定の Cosmos DB データベース内では、スループットを「共有する」コンテナーと、専用スループットが割り当てられた特定のコンテナーとを適宜組み合わせることができます。細分性 (コンテナーやデータベースなど) が異なるスループットをプロビジョニングすることで、ワークロードの特性に基づいてコストをより最適化できるようになりました。

コンテナーまたはデータベースが複数のリージョンに分散されている場合、そのコンテナーまたはデータベースで構成するスループットがすべてのリージョンで使用可能になることが保証されます。データベース レベルのサービスを 5 分の 1 の価格で始められるようになりました。データベース レベルでのスループットのプロビジョニングの詳細については、こちらをご覧ください

Azure Cosmos DB での予約容量: 本日付けで、Azure Cosmos DB の予約容量の一般提供が開始し、世界中のお客様にご利用いただけるようになりました。予約容量では、1 年または 3 年の期間で Cosmos DB でプロビジョニングされたスループットを予約することができます。従量課金制と比べて最大 65% のコスト削減が実現されます。Azure Cosmos DB の予約容量では価格を予測することができるので、予算編成や予測が改善します。予約容量および達成可能なコスト削減については、このブログおよびドキュメントをご覧ください。

SLA の改善: Cosmos DB の SLA がさらに改善されたことについて発表いたします。Cosmos DB は、整合性、待機時間、スループット、可用性を含む包括的なファイブ ナインの SLA を提供する市場で唯一のデータベース サービスです。本日より SLA ページが更新され、マルチ リージョン データベースの (ファイブ ナインの読み取り可用性だけでなく) ファイブ ナインの書き込み可用性や、世界中のあらゆる場所における 99 パーセンタイルでの 10 ミリ秒未満の書き込み待機時間の情報が反映されます。最新の SLA ページについては、こちらをご覧ください

新しい Azure Cosmos DB JavaScript SDK 2.0 の一般提供: JavaScript SDK のバージョン 2.0 の一般提供を発表いたします。このバージョンでは、完全に再設計されたオブジェクト モデルと、追加された約束のサポートにより、Cosmos DB との対話や、Cosmos DB に対する操作の実行が簡単になりました。新しい SDK では、新しいデータベース、コンテナーの作成や、アイテムの追加を、どれも 10 行以下のコードで行うことができます。Azure Cosmos DB JavaScript SDK はオープン ソースです。Microsoft チームはすべての開発を公に行うつもりです。その目的で、GitHub で問題を記録し、フィードバックを追跡し、PR を受け入れたいと思っています。詳細については、こちらをご覧ください。新しい SDK でサンプルをお試しください

開発者のための新機能と機能強化: 開発者のための新しい機能と機能強化を発表いたします。1 か月間無料で Azure Cosmos DB を試すことができます。 多くの方が Cosmos DB の無料体験に申し込まれており、この体験を 30 日間延長することにしました (いつでも更新できます)。この体験により、Azure Cosmos DB の機能を 30 日間無料で評価できます。Azure サブスクリプションやクレジットは必要ありません。「Azure Cosmos DB を無料で試す」を今すぐ始めてみてください。開発者のための機能強化は他にもあります。たとえば、マルチリージョンの書き込みをサポートする SDK 更新プログラム、Cosmos Explorer、推奨付き Portal UX 更新プログラム、すべての API および Azure DevOps ビルド タスクの Cosmos DB ローカル バージョン (エミュレーター) サポートなどです。これらの機能の詳細については、こちらをご覧ください

お客様の声

サービスの発展を見ることは、大きな励みとなります。Azure Cosmos DB を使用してミッション クリティカルなアプリを構築し、サービスの限界を押し広げ、常にベストを求めてきたお客様には大いに感謝しています。

SiemensASOSCitrixJet.comDominosKohlerCrestron や他の多くのエンタープライズなど、世界最大のインターネット スケールの企業が、ミッション クリティカルなワークロードのために Cosmos DB を使用しています。Microsoft の中で Cosmos DB はユビキタス化しています。LinkedIn、Skype、Xbox、Active Directory、Azure portal、Office 365、Bing、ユニバーサル ストアをはじめとするさまざまな Microsoft 独自のミッション クリティカルなアプリケーションとサービスで、世界中のデータの大規模管理のために Cosmos DB を利用しています。

Azure Cosmos DB がビジネスにもたらした変革についてお客様から直接いただいた声をいくつかご紹介します。

イメージ“Cosmos DB は、グローバルな評価システムのためのワールドワイドな高性能プラットフォームを提供してくれました。ボタンを 1 回クリックするだけで、世界中の地域に迅速に展開し、お客様やパートナー様に非常に短い時間で対応できます。Cosmos DB Cassandra API により弊社のサービスの移行中のエンジニアリング上の主要な手間が削減され、最低限の変更だけで統合できました。Cassandra API のサポート開始に伴い、当社の最大のサービスを移行する予定です。”
Symantec 社のテクニカル ディレクター/アーキテクトの Michael Shavell 氏

 

イメージ“Azure Cosmos DB はすばらしい技術です。私たちにとっての最大のメリットは、関係するすべての地域に向けて世界中で複製される匿名データのためのデータベースを、私たちのニーズに完全に合致した整合性モデルに従って 1 つにできたことです。かぎとなるのは、Azure Cosmos DB が Azure のコア インフラストラクチャに自然に組み込まれており、その高可用性と複製に基づいて、すべてのお客様に同時にソフトウェアを提供できるということです。
Thomas Gossler 氏: Siemens Healthineers 社のリード アーキテクト、デジタル エコシステム プラットフォーム担当

 

イメージ“Cosmos DB は、Crestron XiO Cloud の成功のために、多くの地域で必要とされている規模とパフォーマンスを引き続き提供しています。  マルチマスター書き込みのサポートは、大きな進歩をもたらすでしょう。”
Crestron 社のソフトウェア製品 & エンタープライズ ソリューションのシニア マネージャー、Krushna Samanta 氏

イメージ“Liberty Mutual 社では常に、お客様と関わり方、および Web 体験をパーソナライズするための新しい方法を模索しています。そのためには、データ モデリングに対する違ったアプローチが必要でした。私たちは、階層的かつ推移的な関係パターンを混在させていました。これまで私たちはデータの正規化にとらわれていました。データをグラフとしてモデル化することで、ニーズに対応することができました。Azure Cosmos DB のおかげで、このソリューションを迅速に、エンタープライズ対応のスケーラブルで高性能なクラウド管理環境で提供できました。Cosmos DB Change Feed API を使用することで、既存のレコード システムとの同期が簡単になり、インフラストラクチャや運用上の問題ではなく、お客様中心の機能の構築に集中できるようになりました。”
Liberty Mutual Insurance 社のアーキテクト、Arvin Suresh 氏

イメージ“Azure Cosmos DB の Gremlin API と柔軟なデータ シェイプ管理の機能により、Digital Vault のスマート環境のユース ケースを開発することができました。メタデータの統一されたビルド表現を使用してグラフ データベースを実装し、Cosmos DB によって付加的に提供されるセキュリティ、高可用性、世界規模の利点を活用しました。”
Dr.Platform and Data Science 社の副社長、Youngchoon Park 氏

 

イメージ“私たちは MongoDB 集約パイプラインを使用しています。Cosmos DB によってそれが提供されたとき、Cosmos DB を選ばない手はないと思いました。Cosmos DB は私たちの製品に大きな可能性をもたらしてくれます”
Bentley Systems 社、リアリティ モデリング & クラウド サービスの副社長、Phil Christensen 氏

 

イメージ“マルチマスター機能が持つ、Geo レプリケーションの待機時間が短いという特徴は、RemoteSpark のユーザーにとって重要です。ローカルの Azure Cosmos DB データベースへの接続が可能になり、遠隔地のスタッフとエキスパートの間で共通のセッションを確立しやすくなるからです。ユーザーがそれぞれ異なる Azure データ センターに接続していても、ビデオ/音声通話、ドキュメント共有、インタラクティブ IoT 対応ホログラムの表示によるやり取りが可能です。こうして、遠隔地にいる作業者は、どのデータ センターに接続すれば最適なパフォーマンスが得られるか心配することなく、世界中のエキスパートとつながることができます。”
Kognitive Spark 社の CTO、Ryan Groom 氏

 

イメージ"ServiceLink/FNF は、同国最大級のいくつかの貸金業者にデジタル住宅ローン サービスを提供しています。EXOS とは、当社が市場で提供する各種住宅ローンの基礎となる Azure ベースのデジタル プラットフォームの名称です。EXOS プラットフォームの一環として、お客様が使用するモバイル コンポーネントや、リアルタイム アルゴリズムを実行するために利用するすべてのデータに対して、待機時間が極めて短く、高いスケーラビリティを備えたデータベースを選択し、エンド ユーザーに 1 秒未満で応答する必要がありました。当社の Uber 風ベンダー モバイル アプリとコンシューマー モバイル アプリは、複雑なアルゴリズムを実行し、モバイル ユーザーにデータを 1 秒未満で表示するために、マイクロ サービス ベースのアーキテクチャを活用しています。Cosmos DB はこのアーキテクチャの中核を成しています。エンド ユーザーへの応答時間は、Cosmos DB を利用する前の 6 秒から 8 秒程度から、1 秒未満に短縮し、Cosmos DB の利用を開始してから TCO が大幅に削減されています。"
ServiceLink 社の EVP、チーフ デジタル技術責任者、Kiran Vattem 氏

イメージ“Cosmos DB を導入してからは事実上、リソースについて「心配する」必要がほとんどなくなりました。API とデータ モデルの柔軟性が向上しました。デジタル統合シナリオをスケールアウトするうえで役立っています。”
ZEISS グループのリード IT ソリューション アーキテクト、Kai Walter 氏

イメージ“私たちの秘密兵器は Azure Cosmos DB です。信頼性は、ミッション クリティカルなシステムで重要な部分です。予測可能な超高速パフォーマンスと、少なくとも 99.99% のアップタイムの SLA が必要です。Azure Cosmos DB に出会えたことを本当に嬉しく思います。このソリューションのおかげで、生産性が向上しました。スケールアップとスケールダウンが速く、真のビジネス価値を創出することに集中することができます。”

Elkjøp 社のクラウド アーキテクト、Jonas Granlund 氏

イメージ“私たちは Azure Cosmos DB Graph API を私たちにとっての大きな財務的勝利と考えています。以前のソリューションの約 2% の価格で Azure Cosmos DB Graph API を入手しました。Azure Cosmos DB の弾力的なスケーリングを使用して、1 日 24 時間、週 7 日間の最大容量のために料金を支払うことなくその負荷に対応できます” と Boon 氏は述べています。“インポートにかかる時間が 10 秒であろうと、2 分であろうと、その間だけスケールアップし、その後すぐスケールダウンするだけです。”
Diply 社の開発マネージャー、Darren Boon 氏

イメージ”お客様が仕事をしているまさにその瞬間に、正しい内容が必要になります。当社のお客様は、Azure Search と Azure Cosmos DB を使うことで、最近の法律変更の詳細をすっと簡単に調べることができるようになりました。Azure Cosmos DB グラフで Nextens プラットフォームを更新し、税法、ニュース、法学など、全コンテンツの種類間の関係の質を改善しました。当社のお客様は、Azure Search と Azure Cosmos DB グラフを使うことで、最近の法律変更の詳細をずっと簡単に調べることができるようになりました。”
Michael Goedhart 氏: Nextens 社のテクニカル シニア ディレクター

イメージ“Cosmos DB は、すべて厳密な SLA の下、スキーマ フリーのドキュメント データベースと SQL 構文および変更フィード ストリーミング機能を組み合わせています。これはすばらしいことです。これにより、アーキテクチャが大幅に簡素化され、すべての核となる要件を満たすことができました。”
Skype 社のプリンシパル ソフトウェア エンジニア、Frantisek Kaduk 氏

Azure Cosmos DB で構築したアプリによって世界を変革する

私たちは、Azure Cosmos DB がすべてのビジネスと最新のアプリケーションにとって最適なグローバル分散型データベースとなるよう尽力しています。Ignite 2018 で発表する新しい機能により、驚くほど強力でインテリジェントな最新のアプリを開発できるようになることを確信しています。  Azure Cosmos DB で構築したアプリによってお客様が世界を変革するためのお手伝いができればと思っています。

Azure Cosmos DB をご利用の場合は、AskCosmosDB@microsoft.com までいつでもお気軽にお問い合わせください。Azure Cosmos DB をまだご利用でない場合は、Azure Cosmos DB を無料で試すことができます。サインアップやクレジット カードは必要ありません。ヘルプが必要な場合や、ご質問またはフィードバックがある場合は、いつでもご連絡ください。最新の Azure CosmosDB ニュースや機能については、Twitter の #CosmosDB@AzureCosmosDB をフォローして、最新情報を入手してください。お客様が Azure Cosmos DB で何を構築されるか楽しみにしています。

- Azure Cosmos DB チーム一同