はじめに
今回は、2020年3月6日にMicrosoft より発表されたAzure Cosmos DB Free レベルを試してみた記事となります。
発表内容の概要は下記の公式サイトをご覧ください。
Azure Cosmos DB Free レベルを使用できるようになりました
Azure Cosmos DB
そもそもAzure Cosmos DBってなに?という方はこちらをご確認ください。
Azure Cosmos DB の概要
簡単に纏めますと以下の特徴があります。
- Microsoft の提供するグローバルに配布されるマルチモデル データベース サービス
- ユーザーの最も近場所にあるデータのレプリカが利用される
- 透過的なマルチマスター レプリケーションにより、Cosmos DB では読み取りと書き込みの両方に対して 99.999% の高可用性が実現
- NoSQL のクライアント ドライバーでCosmos データベースを直接参照することが可能
Azure Cosmos DB を利用してみる
リソースの作成
Microsoft Azure Portalにアクセスし、「リソースの作成」を選択します。
「Azure Cosmos DB」を選択します。
Azure Cosmos DB アカウントの作成画面が表示されるので、必要項目を入力します。
まずは「基本」項目の入力です。- サブスクリプション:任意のサブスクリプションを選択します。
- リソースグループ:任意のリソースグループを選択します。
- アカウント名:任意のアカウント名を入力します。
- API:自身の利用に適したAPI を選択します。Azure Cosmos DB に適した API を選ぶ
今回は「コア(SQL)」を選択します。 - Notebooks(Preview):Off
- 場所:任意のregionを選択します。
- Apply Free Tier Discount:Apply (ここでApply を選択しないとFree レベルを利用できません)
- Account Type:Non-Production
- geo 冗長性:無効
- マルチリージョン書き込み:無効
続いて、「ネットワーク」項目の入力です。
こちらでは、Cosmos DB へのネットワーク接続を選択します。
今回は「All networks」を選択します。
次は「Backup Policy」です。
バックアップの種類、バックアップの実行頻度、バックアップデータの保存期間を設定することができます。
英語で記載もありますが、アカウント作成後、バックアップポリシーを切り替えることはできませんのでご注意ください。
今回は下の画像のように設定します。
続いて、「Encryption」項目の入力です。
こちらでは、暗号化の設定を行います。
今回はデフォルトの設定を利用します。
必要に応じてタグを設定し、「確認と作成」で表示された内容に誤りがなければ、「作成」を選択します。
デプロイが完了するまで、少し待ちましょう。
コンテナを作成する
デプロイが完了したら、リソースへ移動しましょう。
「クイックスタート」より、「Create 'Items' container」を選択します。
「データ エクスプローラ」を選択し、画面を切り替えると、先ほど作成したコンテナを確認することができます。
また、こちらのデータ エクスプローラーでもコンテナを作成することができます。
こちらから作成を行う場合は以下の項目を入力する必要があります。
- DataBase id:データベースのIDを選択、もしくは入力します。
- Throughput:データベースのスループットを入力します。Free レベルは400RUまで無料枠です。
- Container id:コンテナIDを入力します。
- Partition key:複数サーバー間でパーテーション分割を行うために利用されます。
- Analytical store:リアルタイムなアナリティクスを実行するための分析機能を有効にするか設定します。
データを作成する
データを作成してみましょう。
「New Item」を選択します。
適当なアイテムを作成し、「Save」を選択します。
{ "id": "1", "Person":{ "name": "korune", "age": 23, "sex": 0, "birthDay":"1997/02/24" } }
登録が完了すると、以下のようにシステム側で自動で項目と値が割り当てられます。
クエリを実行してみる
画像の赤枠箇所を選択し、クエリ入力画面を開きます。
「Query 1」タブにて、SQLを実行してみましょう。
以下のようなSQLを実行し全てのデータを抽出します。
SELECT * FROM Items
クエリの実行は「Execute Query」より行えます。
実行を行うと、先ほどのデータが抽出されていることが確認できます。