これは半分以上自分のためのメモです。
このメモは Azure Cosmos DB を構築する際の費用のかかり方のメモです。
Cosmos DB の特徴
そもそもこの名前からは内容がわかりにくいこのサービスはなにか。Microsoft のネーミングセンスからは珍しいです。簡単に言うと、MicrosoftのオリジナルのNoSQL系データベースです。
小宇宙という大仰なネーミングが付いているのは各地域リージョンで自動的に同期が取られるという機能が基本機能でついているからのようです。
実はこの地域リージョン間での同期というのはクラウドが全世界規模でサービス適用され始めて問題となった点です。
世界規模で見ると地球は広い。日本国内なら北海道と九州でも数十msといったレベルでも国外に出ると100msはゆうに超える。世界レベルでサービスを展開する際に単一地点にサーバがあるとこの時間が割と問題になります。特に最近のクラサバモデルではクライアントは単なるコンソールに徹することが多いという点も通信時間の短縮が求められます。では「クラウドサービスを駆使して世界各地にサーバを用意すればいいのでは」となると各サーバの同期というのが問題となります。Azure Cosmos DB はこれらの問題をクラウドサービスレベルで解決してくれます。正に次世代のクラウドDBと言えます。
NoSQLとしては割と普通です。データ構造は流行のJSON構造です。また、1要素をキーとして登録することができ、このキー要素でアクセス範囲を絞り込みが可能となっています。このキー要素は Partition Key という名前になります。アクセス範囲を絞り込むことでI/Oを少なくでき速さもお金も優しくなります。途中で変更できないので設計がとても大事です。
DB Account
サービスのアカウントのこと。最上位の管理単位。
地域リージョンの設定はこのレベルで行う。
Database
DB Account に登録する。提供サービスごとに作るのがいいかな。
Container
Database の下に登録する。Partition Key や Time to Live を設定するのはこの単位となる。
Request Unit (RU)
要求に対する処理の大きさの単位。一体どのような計算になってるかはよくわからない。
基本的にI/Oが大きくなると大きくなる。
数KB程度のデータだと1~2RUという感じ。
最小構成
1アカウント、1データベース、1コンテナ400RU/s、ストレージ1GB
地域リージョン1つ
これが最小構成となる。
金額は2,975円/月となる。
複数リージョン書き込み設定で地域リージョン1つだと約6,000円/月といったところ。
機能から考えても納得のお値段。払うとなると高いけど・・・
無料枠
テストで最小構成を構築しても、費用が発生することので敬遠されていたのか、最小構成の場合は無料で使えるようになりました。1請求単位で最小構成1つまでは無料になった。
ストレージは5GBまで、400RU/sまでのアクセスに耐えられる。
RUはデータベース単位で制限をかけられるのでクラウド死も防げます。
0 件のコメント:
コメントを投稿