2024.10.10
将来は卵1パックの価格が2倍に? 多くの日本人が知らない世界の新潮流、「動物福祉」とは
VSCode拡張機能で始めるAzure Cosmos DB(全1記事)
リンクをコピー
記事をブックマーク
まっぴぃ氏:「Visual Studio Code拡張機能で始めるCosmos DB」ということでLTします。よろしくお願いします。
まず始めに、今日お話しする内容は今日4月7日時点の情報になっています。私が確認できている内容に基づいてはいますが、資料に誤植とか誤りとかがあるかもしれないので、そのときはご了承ください。これはいつものやつなんですけど、資料に記載されている内容は私が所属する組織を代表するものではないので、そちらの点もご了承ください。
自己紹介です。ハンドルネームまっぴぃでやっています。今日はちょっと会社名は出せませんが、日本人の99パーセントが知っていると言われている青いRの会社の中の人で、基本的に情シスをやっております。
コミュニティはJSSUGという、SQL ServerのユーザーコミュニティとかでSQL ServerとかAzureとか、あとは最近だとSynapse Analyticsとかいろいろ出ているところあたりのコミュニティの中の人をやっていたりします。
私はPerfumeが大好きで、今日のこの後ろのバーチャル背景もPerfumeなんですけど、TwitterでもPerfumeのツイートをたまにしています。ふだんはMicrosoftの製品で、基本的にSQL ServerとかSharePointとか、最近はAzureのWeb Appsとかいろいろ触っていまして、そちらをメインにお仕事しています。
Twitter、よかったらフォローしてください。
今日のアジェンダです。まず「はじめに」ついてと、実際に今日の本題であるAzure Cosmos DBの拡張機能についてと、あとは私が最近実際に使ってみて感じたことがあるのでそちらの紹介ができればなと思っています。
はじめに、拡張機能の話を始める前に、なぜ私がこのCosmos DBの拡張機能の話をしようかと思ったかなんですが、その理由はですね……しまったな。このスライドの猫かわいいですよね、すみません。
無償枠が新しく出たからです。先月、米国時間で2020年の3月6日に、こちらでアップデートがありましてAzure Cosmos DBの無償枠というのが新しく出ました。
400RUと書いてあるのがリクエストユニットと言うんですけど、これについては後ほど紹介します。
あとは容量は5ギガバイトまでの利用が毎月無料になりました。これまでは時間制限で無料のCosmos DBの環境だったり、エミュレータを使っていたりして、実際にAzureに環境を作るとけっこうお金が掛かってったんですけど、この無償枠が出たおかげでかなりCosmos DBの開発がやりやすくなりました。
Cosmos DBの環境構築とかについては、この間ちょうどQiitaに記事を書いたのでこちらの記事を見ていただければなと思います。ちょっと目次ページを作っていないので恐縮なんですけど、環境構築とか実際にNode.jsのCRUD Webアプリケーションを作る記事とか、あとは実際のNode.jsのクライアントの中身をちょっと見たりとか、記事を書いているので興味がある方は見てみてください。
Cosmos DBについてですが、Microsoftが提供するNoSQL、DocumentDBと呼ばれているものでして、グローバルに展開が可能になっています。レプリケートが可能になっています。
先ほどのリクエストユニットなんですけど、1秒間あたりの要求ユニットが定義されていて、こちらのRUとストレージ容量の2つの枠で課金がされます。なので他の、例えばAzureのリソースみたいに稼働している間はずっとコンピューティング料金が掛かるものとは、ちょっと課金の体系が違うものになっています
Cosmos DBのAPIについても、Coreと呼ばれるSQLベースでアクセスできるDocumentDBから、CassandraとかAzure TableとかGremlinというグラフデータベースなどの、いろいろAPIが提供されています。
Cosmos DBの拡張機能では、実際にいろいろできます。簡単にデータベースを作成したり、コレクションと呼ばれるテーブルに近いものを作成したり、またデータのCRUDをやったりとか、その他いろいろできます。
これはデータベースとかコレクションを作成しているところなんですけど、Azureの拡張機能を入れるとCosmos DBの欄ができて、そこを右クリックするとこんなかたちで作る画面が出てきます。
あとはDocumentDBの場合は、ドキュメントの新規作成とか参照とか更新とか削除というのもGUIでできるようになっています。
MongoDBについてはクエリが打てます。これはGIF画像で載せていますが、MongoDBを使ったことがある人であれば何のことはないんですけど、こんなかたちでIntelligenceも出てきてexecuteすると右側にデータが出てきます。
実際に拡張機能のGitHubのリポジトリに行くと同じGIF動画が上がっているので、そこの動画から取ってきています。
あとはグラフデータベースのGremlinですが、こちらも普通に使うことができます。VS Codeがテキストエディタと思っていた私としては意外すぎるけど、こんな感じでグラフデータベースの画像も出てきます。
こんなふうにできるというのと、こちらはAzure Cosmos DB Emulatorという先ほどチラッと話したんですけど、エミュレータにもつなげます。エミュレータはWindowsやWindowsコンテナ上で動くので、使うにはWindowsがいるんですけど、VS Codeの拡張機能からエミュレータに接続して先ほどと同じような使い方もできます。
ここまでが拡張機能の紹介になります。実際に私はこれでQiitaの記事を書いたり、いろいろ開発をやっているんですけど、その感じたところ。便利なところもあれば改善してほしいなと思うところもあったので、そちらを紹介したいと思います。
便利なところの1個目は、開発のハブになるのは本当にいいところだなと思っています。最近オンラインとかでテレビ会議がよくあると思いますが、私はTeamsを使っています。Teamsの中でいろいろサイトを見たりいろいろなことができるよというので、けっこうMicrosoftさんはTeamsをハブとしていろいろやろうとしているようですけど、VS Codeも同じ感じで開発のハブにできるなと感じています。
先ほどお見せした通り、拡張機能を使えばCosmos DBにつないでDBの中でどんな値があるかを見たりできますし、右側でコードを書いたりも普通にできるのがいいなと思っています。
2点目は、JSONインポートの機能が提供されていて、JSONを予め作っておいてそれをDBにチョンッと突っ込むというやり方ができるんですね。これがすぐに一括でインポートできるので、本当にNoSQL的に僕は楽だなと思っている機能です。
ただちょっと残念なところがあって、コアと呼ばれるSQLベースでDocumentDBを触れるのがAzure Cosmos DBのCoreなんですけど、ちょっとクエリは打てないですね。実際に今出しているのはAzureのData Explorerで、ここだとクエリは打てるんですけど、まだVS Code上だとクエリが打てないので、少しつらいなというところがあったりします。
あとDBは、拡張機能上1,000リクエストユニットからしか作れないという制限があります。無償枠が先ほどお話した通り、400リクエストユニットからという設定が必要なので、1,000だと拡張機能で作ると無償の対象外になってしまうんですね。
GitHubのissuesにも「400から作ってよ」みたいなissueが上がっているんですけど、これが受け入れられてないようで、ちょっと改善してほしいなと思っていたので、すごい雑だったんですけど今週プルリクを1個上げてみました。かなり雑なので、たぶん却下されるような気がするんですけど、こんな感じで拡張機能がちょっと不便だなと思ったら、普通にプルリクを上げれるのもいいところかなと思っています。
まとめです。Cosmos DBの関連の開発がVS Codeでかなり便利になりました。拡張機能はすごくいいですねということです。SQLのCoreだったりMongoDB、Gremlinとか拡張機能が1個で全然対応していて、不便な点があればPRできるというのがAzure Cosmos DBの拡張機能のいいところかなと思います。
以上です。ありがとうございました。
2024.11.13
週3日働いて年収2,000万稼ぐ元印刷屋のおじさん 好きなことだけして楽に稼ぐ3つのパターン
2024.11.11
自分の「本質的な才能」が見つかる一番簡単な質問 他者から「すごい」と思われても意外と気づかないのが才能
2024.11.13
“退職者が出た時の会社の対応”を従業員は見ている 離職防止策の前に見つめ直したい、部下との向き合い方
2024.11.12
自分の人生にプラスに働く「イライラ」は才能 自分の強みや才能につながる“良いイライラ”を見分けるポイント
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.11.11
気づいたら借金、倒産して身ぐるみを剥がされる経営者 起業に「立派な動機」を求められる恐ろしさ
2024.11.11
「退職代行」を使われた管理職の本音と葛藤 メディアで話題、利用者が右肩上がり…企業が置かれている現状とは
2024.11.18
20名の会社でGoogleの採用を真似するのはもったいない 人手不足の時代における「脱能力主義」のヒント
2024.11.12
先週まで元気だったのに、突然辞める「びっくり退職」 退職代行サービスの影響も?上司と部下の“すれ違い”が起きる原因
2024.11.14
よってたかってハイリスクのビジネスモデルに仕立て上げるステークホルダー 「社会的理由」が求められる時代の起業戦略
2024.11.13
週3日働いて年収2,000万稼ぐ元印刷屋のおじさん 好きなことだけして楽に稼ぐ3つのパターン
2024.11.11
自分の「本質的な才能」が見つかる一番簡単な質問 他者から「すごい」と思われても意外と気づかないのが才能
2024.11.13
“退職者が出た時の会社の対応”を従業員は見ている 離職防止策の前に見つめ直したい、部下との向き合い方
2024.11.12
自分の人生にプラスに働く「イライラ」は才能 自分の強みや才能につながる“良いイライラ”を見分けるポイント
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.11.11
気づいたら借金、倒産して身ぐるみを剥がされる経営者 起業に「立派な動機」を求められる恐ろしさ
2024.11.11
「退職代行」を使われた管理職の本音と葛藤 メディアで話題、利用者が右肩上がり…企業が置かれている現状とは
2024.11.18
20名の会社でGoogleの採用を真似するのはもったいない 人手不足の時代における「脱能力主義」のヒント
2024.11.12
先週まで元気だったのに、突然辞める「びっくり退職」 退職代行サービスの影響も?上司と部下の“すれ違い”が起きる原因
2024.11.14
よってたかってハイリスクのビジネスモデルに仕立て上げるステークホルダー 「社会的理由」が求められる時代の起業戦略