PaaSがかりの部屋

「PaaSがかり」として活動する三宅@ZENのブログ

0%

これまで、ポータルでDocumentDBのコレクションやデータを操作しようとすると目的別に使う機能が異なり、とてもイライラさせられていました。しかし、ここへきてようやく統合されたデータ操作ツールである「Data Explorer」が利用できるようになりました(執筆時点でプレビュー)。

これでようやくDBとして最低限の管理ツールが使える状態になったかなというレベルになりましたね。どんどん育って、SQL ServerでいうところのSSMSくらいまで熟成して欲しいものです。

Read more »

Planet scale aggregates with Azure DocumentDBでアナウンスがあった通り、DocumentDBで集計関数が使えるようになりました。

DocumentDBはNoSQLでありながらSQL文が使えるという特長があっただけに、集計関数が使えなかったことが逆に目立ってしまっていました。私も関わっているプロジェクト関係者の方に「集計関数使えないんですか〜」と何回も聞かれた記憶があります。

しかし、これで集計関数が利用できるようになったので、DocumentDBを使ったデータハンドリングの幅が広がることは間違いなさそうです。

Read more »

これまでXamarinからは、(サーバを経由せず)直接DocumentDBに接続することはできませんでした。

しかし!How To Build Planet Scale Mobile App in Minutes with Xamarin and DocumentDBでアナウンスがあったように、ついにXamarinから直接DocumentDBに接続することが可能になりました(両方とも個人的な推し技術なので一人で舞い上がってます・・)。

これが実現した背景には、.NET Core対応のDocumentDB SDKがリリースされたことがあるのですが、個人的にはXamarinを.NET Standardで使うきっかけにもなる出来事にもなりました(いろいろ苦労もしました)。

Read more »

AzureのApp Service on Linux(プレビュー)上にWordPressを構築する機会がありましたので、概要と手順を紹介します。
結論としては、Github連動などのApp Service付加機能を使うことで、Windows版とほぼ変わらない手順でLinux環境にもWordPressを構築できることを確認できました。

Read more »

AzureのDocumentDBにはちょっとお試ししたい時などに使えるFreeプランがありません。
なので、ちょっとした開発作業で使う場合などは、蓄積したDocumentDBのデータをJSONファイルとしてエクスポートしてしまい、課金の対象となるコレクションはすぐに削除するようにしています。

通常、データベースのサービスには何らかのインポート/エクスポートのツールが存在しているものです。古くからよくお世話になっているのは、オンプレならSQL ServerのSSISだったり、Azure上ならSQL DatabaseポータルでのBLOBへのエクスポート機能あたりでしょうか。

ところが、DocumentDBには一括エクスポートするような機能がポータルには存在していません。かといって、一時的な作業のためにREST APIやSDKなどを駆使してエクスポートするのもしんどいので、Azure DocumentDB Data Migration Toolというデータ移行用のツールをエクスポートにも利用するのがおすすめです。

Read more »

DocumentDBのデータの格納状況やRUの消費状況などのメトリクスは、基本的にポータルで確認することができますが、グラフでざっと全体感を見るよりも、特定のコレクションについての正確な情報が知りたい局面などもあると思います。

そのような時は、公式ドキュメントにも述べられているように、DocumentDBのAPI群を使ってコレクションのより詳細な使用状況データを取得するのが一般的です。

DocumentDB APIにはRESTを使ってアクセスする方法がありますが、さすがデータベースのマネージドサービスというだけあって、他のサービスのRESTよりもアクセス方法が厳しく、キーさえあれば良いというわけにはいかないとても複雑な手続きが必要です(ハッシュの生成に結局コードを書かなきゃいけない等、個人的には二度とやりたくない系)。

なので特に事情がなければ、REST APIではなく、DocumentDB .NET SDKを使って実装するのがオススメです。この記事では、せっかくなのでGAしたばかりのAzure Functions上に実装して、HTTPトリガーから気軽にDocumentDB APIを呼び出せるように実装してみたいと思います。

Read more »

本エントリーは Xamarin Advent Calendar 2016 (その1) 8日目のエントリーです。

Xamarinで開発したアプリは、Azure Mobile Appsと組み合わせることで簡単に認証を組み込めることは各所で説明されている通りです。

Mobile Appsの基盤であるAzure App Serviceでは、執筆時点(2016年12月)では以下のIDプロバイダーがサポートされています(これはEasy Authとも呼ばれているようです)。

  • Azure Active Directory
  • Facebook
  • Google
  • Microsoft
  • Twitter

これだけのIDプロバイダーがサポートされていればだいたいの場面で事足りるのでは?と思うかもしれませんが、例えばソーシャルアカウントを使わずにメールアドレスでサインアップできる認証方法を採用したい場合はどうすれば良いのでしょうか?

Read more »

常時HTTPSが主流になりつつあるので、Azure App Serviceで運用しているサイトもLet’s Encryptを使ってサクッとHTTPS化を済ませたいところです。

App Serviceには「Site Extentions」という機能を追加できる仕組みがあり、Let’s Encrypt用の機能拡張もGithubで開発されているものが使えるようになっています。

Read more »