.net column

.NET開発者のためのブログメディア
クラウドデータベース

Azure Cosmos DBを解説。使用できるAPIや導入方法をご紹介!

2020年09月25日

AzureのエンジニアであればAzure Cosmos DBを扱う機会もあるのではないでしょうか。公式サイトでは「あらゆるスケールに対応するグローバル分散型マルチモデルなデータベースサービス」と説明されています。この表現だと初心者の方にとっては、難しく感じるかと思いますので、もう少しかみ砕いて解説していきます。

SE
クラウドのデータベースは扱ったことがありません……。やはり敷居が高いツールなのでしょうか?
PM
Azureは基本的にはサブスクリプションのサービス形態をとっていますが、Azure Cosmos DBは無料で利用できる枠が設けられました。まずは、どういったサービスか触れてみるのも良いでしょう。

Azure Cosmos DBとは? 使用できるAPIを解説

Azure Cosmos DBは「グローバル分散」と「マルチモデルのデータベース」の2つが大きな特徴として挙げられます。
まずグローバル分散によって、Azureが世界中に展開しているリージョン(データベースセンター)へのデータのレプリケーションをサポートします。ユーザーは現在地に一番近いリージョンのCosmos DBからデータ取得することが可能となり、ネットワーク遅延による待機時間の削減が期待できます。

またマルチモデルのデータベースにより、ユーザーは複数のデータモデルの中から選択して、データベースを作成することができます。
下記、Cosmos DBがサポートするデータモデルです。

■Azure Cosmos DBのデータモデル

データモデル 概要 API
ドキュメント型 JSON形式のドキュメントを保存できるデータモデル SQL API
MongoDB API
グラフ型 データとデータのつながりをグラフ構造で保持するデータモデル Graph API
テーブル型 スキーマレスなテーブル構造でデータを保持するデータモデル Table API
列ファミリ型 Apache Cassandraベースのデータモデル Cassandra API

Azure Cosmos DBを使用するメリット

グローバル企業にとって、Azure Cosmos DBを使うメリットは数多くあります。
データレプリケーションを世界中のリージョンに展開しているため、理論上は地球上のすべてのリージョンに分散が可能です。インデックス付きの読み取りと書き込みの両方ともに、待機時間は10ミリ秒未満とされています。

また、エラスティックコンピューティングが可能な点もメリットに挙げられます。
エラスティックコンピューティングとは、データベースやストレージの容量、ネットワークのトラフィック、メモリの容量や処理速度などを、トラフィックの増減に合わせて柔軟に変化させる機能です。

Azure Cosmos DBの導入方法

それでは早速、導入方法を簡単に解説します。

1.アカウント作成します。無料枠で利用する場合は、赤枠のトグルスイッチをApplyへ変更します。今回のデータベースモデルはSQLを選択します。

Azure Cosmos DBの作成

2.作成できました。

デプロイ完了

3.リソースへ移動します。

リソース

4.データエクスプローラーへ移動し、データ置き場としてContainerを作成します。

  • ◆Database id:データベースのID
  • ◆Throughput:データベースのスループット(400RUまでは無料で作れます)
    ※ここでいうRUとは、Cosmos DB上での単位のことで、CPUやIOPSやメモリを統合的考えたものです。
  • ◆Container id:コンテナのID
  • ◆Partition key:複数サーバー間で自動的にパーティション分割するために使われる値です。

Containerを作成

5.Containerを作成しました。

Container作成完了

参照:Azure Cosmos DB公式サイト

SE
Azure Cosmos DBは世界中にオフィスを展開している企業にとって、メリットがたくさんあるツールですね。まずは自分で無料枠から使い始めてみます。
PM
Azure Cosmos DBはNoSQLデータベースサービスですので、ビッグデータを扱うには最適なツールでもあります。今後ますますビッグデータに関しては需要が増すでしょうから、今のうちからAzure Cosmos DBに触れておくことがおすすめです!

無料枠を使って、Azure Cosmos DBに触れてみよう

以前まではAzure Cosmos DBには無料枠は設けられていませんでしたが、今は無料枠が存在し、使う敷居が下がりました。Azure Cosmos DBはエラスティックコンピューティングを活かしたシステム展開やビッグデータ活用の面でメリットがあります。無料枠を使ってどのようなことができるのか、自分の目で確認しましょう。

>>>Azureの案件を探すならFEnet .NET Navi


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)