本記事はFIXERが提供する「cloud.config Tech Blog」に掲載された「無料枠発表!Azure Cosmos DBを触ってみた」を再編集したものです。
こんにちは、最近6周年でアツいゲームに再点火した石川です。
今回は先日 Free レベルが公開され、無料で利用できるようになったAzure Cosmos DB を触ってみようと思います。(無料なので)
参考: Azure Cosmos DB Free レベルを使用できるようになりました | Azure の更新情報 | Microsoft Azure
サブスクリプションなどは適宜準備してください。
1.Azure Cosmos DBとは
あらゆるスケールに対応するグローバル分散型マルチモデル データベース サービス
らしいです。抽象的すぎるのでもう少し具体的に書きます。
●あらゆるデータベースモデルに対応
○SQL
○Cassandra
○MongoDB
○Gremlin
○テーブル
いろいろなデータベースモデルでデータを扱うことができます。データベースといえばおなじみのSQLからNoSQLのMongoDBなどなど、用途に合わせて選択することが可能です。
●優れた応答性と常時接続
○応答性
・世界を跨いで数ミリ秒の応答性を確保
・読み書き両方に対し99.999%の高可用性
○常時接続
・Azureインフラストラクチャと緊密な統合
・災害に対するフェールオーバー
5Gも見据えられている中、応答速度は速いに越したことはありません。また、世界規模で展開するサービスの場合にはフェールオーバー等必須となる機能が標準で用意されています。などなど挙げるといろいろあるんですが詳しくは公式のドキュメントをご確認ください。
2.作ってみる
何はともあれ、まずはリソースの作成をしなければ話は始まりません。Cosmos DBを検索して作成していきましょう。
発見。早速、作成していきます。
基本的に書いてあることを埋めていくとOKですが、Free レベルで使いたい場合は赤枠のトグルスイッチを Apply へ変更しておきましょう。今回データベースモデルはSQLを選択しました。これをやらないとおそらく普通に課金されます。あとは作成をするだけです。
完了したらリソースへ移動しましょう。
コードを書いてプログラムからデータを操作してもいいですがちょっと面倒そうなのでAzure ポータル上から行えるデータエクスプローラーを使ってみようと思います。
3.触ってみる
ということでデータエクスプローラーへ移動してきました。まずはデータ置き場としてContainerを作成してあげる必要があるようです。早速作ってみます。
なんか色々出てますが読んで枠を埋めていきましょう。
●Database id
○データベースのID
●Throughput
○データベースのスループット
○RUはCosmos DB上での単位で、CPU, IOPS, メモリを統合的に考えたもの
○400RUまで無料なので400で作ってみます
●Container id
○コンテナのID
●Partition key
○パーティションキー
○複数サーバー間で自動的にパーティション分割するために使われる値
適当に値を入れて作ったものがこちら。
適当にアイテムを作ってみます。
{
"id": "",
"Person": {
"Name": "",
"Age": "",
"Address": {
"Country": "",
"Prefecture": ""
}
}
}
こんな感じのデータを数個放り込んでみます。
放り込んでみた結果がこちら。これらのデータをデータベースを操作する感覚で操作できるのがCosmos DBの特徴のようです。とりあえずPerson.Address.CountryがJapanの人を絞り込んでみます。
これじゃ絞り込めてるかわからないのでPerson.Address.PrefectureがTokyoのデータを検索してみます。
ばっちり検索できてますね。
触ってみた感想としてはデータベースというよりデータストアって感じがしました。SQLデータベースのような感覚で使うとなんか違うなー。ってなりますね。
おわりに
Cosmos DBを触ったことがなかったのですが無料枠が提供開始されたので気軽に触って試してみることができました。この記事では「触り」程度ですがこの機会にCosmos DBを触ってみてはいかがでしょうか!
それでは
おまけ
設定の中に データをグローバルにレプリケートするという項目がありここから全世界へデータの冗長化構成を行なえるようになっています。
デフォルトの設定では、書き込みはメインのリージョンからのようでレプリケート先のリージョンでは読み取りのみ行なえるようです。
リージョンの構成 の部分のトグルスイッチを切り替えると書き込みも行なえそうですね。
地図から選べるのおもしろいですね。ちょっとしたおまけでした。
石川 順平/FIXER
九州のとある高専卒のFIXER1年目。すき間時間でbotを作ったりAZ系の資格の勉強をしたりしています。まだまだAzure初心者です。趣味はゲームやったりバイクで出かけたりすることで最近バイクを買いました?ゲームは某MMORPGをやったりしています。