Microsoft
2017
Connect()

Microsoft Connect(); 2017 で語られた技術情報まとめ

More than 1 year has passed since last update.

Microsoft Connect(); 2017 Day 1 リンク的なの (wordpress.com) に記載された技術情報が読めない程度に枯れた人間になってしまったので、自分に水を与えるために作りました。
太字が今回 Connect(); 2017 で紹介された部分 (つまり新機能など) です。
かなり乱暴に書いているので読みにくいと思います。如何せん量が多すぎるので、ゆっくり直していく予定です。

Azure App Service

Web Apps、Mobile Apps 等 Web 系 PaaS の総称です。
今回サービス提供状態を一覧表示できるインターフェイスが GA (microsoft.com) されました。

Azure App Service は以下のサービス群で構成されます。

サービス名 めっちゃざっくりとした説明
Web Apps .NET、Node.js、Java、PHP、Python が動作する Web プラットフォーム。
Mobile Apps Xamarin、Apache Cordova といったハイブリット アプリを提供するプラットフォーム。Android、iOS、Windows 向けにいわゆる Web ベースのアプリケーションを提供する基盤として使えるっぽい。
Logic Apps 各サービスの前後関係を持たせ、連携を行い、ビジネス ロジックを表現するプラットフォーム。メールを受信したらファイルを更新する、ある Web Apps にアクセスしたら別の Web Apps の情報を更新する、といったことができる。多分。
API Apps Logic Apps から呼び出せるマイクロサービスを作れるプラットフォーム。
Azure Functions サーバーレス コンピューティングを実装する謎のプラットフォーム。

Xamarin

C# で開発できるクロスプラットフォームなモバイル アプリケーションの開発言語です。Visual Studio (for Mac) で開発できます。買収劇などドラマティックな展開のせいで愛着を持つ人続出、そんな素敵なプラットフォームです。

Apache Cordova

HTML5 + JavaScript で Xamarin に対抗する競合製品。Mobile Apps はどっちも動くからすごいんですよ。

Azure Functions

高添さんの仰っていた「さーばーれすこんぴゅーてぃんぐ」という奴のようです。
どうもクラウド上で直接コーディングを行え、Logic Apps に組み込んで使え、イベントベースで動作する単純アプリケーションのこと。ブラウザだけあれば全部賄えるから、サーバーレスアーキテクチャだというわけですね。
開発環境は Azure ポータル、Azure CLI、Visual Studio などが選べるようです。
単調なインプットに対して単調なアウトプットを素早く何度も繰り返し行うサービスに向いているそうです。
JavaScript、C#、F#、Python、PHP、Bash、Batch、PowerShell、何でも動きます。

例えば毎日 1 回ログを分析するツールを動かしているのなら、ログをストレージに送り込んでやるだけで、その分析用 PowerShell を Azure Functions で勝手に動いてくれる、そんな感じでクラウド リソースを有効活用できる…そんな感じでしょうか。

今回は Azure Functions Proxies という機能 (microsoft.com) がリリースされたようです。Azure Functions を別の Azure Functions でリダイレクトできる、ひとつの名前空間でいろいろアクセスできるようになるよ、というものらしいです。DLL の Web 版みたいなもんですか?

更には ローカルの Linux から Azure Functions が実行できるようになった (microsoft.com) そうです。Docker 経由必須。プレビューです。

その他こまごましたアップデート (microsoft.com) もあります。

Cosmos DB

アメリカには昔 Cosmos という素晴らしい番組 (wikipedia.org) があってですね。あるいはそんな宇宙観 (wikipedia.org) がありまして。
そのくらいすごいスケーラビリティを持った宇宙規模のデータベース、と勝手に解釈しています。
99 パーセンタイル値で読み取り 10 ミリ秒、書き込み 15 ミリ秒という超低レイテンシーを実現。
グローバルに分散した設計により、アベイラビリティ 99.99% (読み込みだけなら 99.999%) を担保します。
スケーリングは無制限。
API として SQL、JavaScript、Azure Table StorageApache Spark、MongoDB、Apache CasandraGremlin が使えます。…って、は? え? どういうこと?
ひとまず、AI に食べさせるためのとんでもない量のビッグデータを保存する領域として使えてなんでもおしゃべりできるすごいストレージと解釈しました。
こいつは間違いなくコスモス。

MongoDB

JSON (JavaScript Object Notation) をデータ通信インターフェイスとして利用したドキュメント指向の NoSQL データベースです。
NoSQL データベースの中では圧倒的シェアを誇り、Oracle Database、MySQL、SQL Server、PostgreSQL に次ぐシェアがあります。
更新削除検索において優位。結合操作は不利です。
2007年10月から開発が始まり、最初のリリースは2009年2月。
今回 MongoDB に関する拡張 (GA、RC 含む) (microsoft.com) が行われました。

Azure Database

Azure 上で提供される RDB。
昔は SQL Server Management Studio で管理できる SQL Database (要するに SQL Server API しか喋れない純粋な SQL Server) が動いていたと思ったのだけど、今は MariaDB、PostgreSQL、MySQL (microsoft.com) も喋れるそうです。ただし一部はプレビュー。

IoT Edge

山ほどある IoT デバイス (インターネットにつながる家電やスマホ、パソコンたち) の中には、専用のプロトコルを持つものもあります。そうしたデバイスに対して、クラウド上にある様々なマイクロサービスとの結合を可能にするため、HTTP へのプロトコル変換を行う装置が IoT Edge の正体のようです。要するにマネージドの Azure VM? って言い方したら全部そうか…w
例えばインターネットカメラでとらえた情報を IoT Edge に送り込めば、IoT Edge は IoT Hub を経由し Cognitive Service 等で画像分析を行い、リアルタイムにその結果を返すことができるそうです。

IoT Edge で Azure Functions を動作できる (microsoft.com) ようになったそうです。
それから IoT デバイスからのデータを Edge が直接 Stream Analytics で分析できる (microsoft.com) ようにもなったそうです。
更には Container も動きます。

Azure VM

Azure VM N シリーズ

Azure VM には N シリーズというのがあります。これは、要は GPU をバインド VM のことです。Nvidia の単精度演算処理が超イケてる GPU、P100 や V100 が使えるようになったよ (microsoft.com)、ということです。GPU を VM にバインドして何するの? そりゃもう、超 DNN (Deep Neural Networking) ですよ!

Azure VM Cloud Shell

Azure VM は直接 PowerShell や Bash を Web I/F から呼び出せます。このうち Bash の部分が GA になった (microsoft.com) そうです。

Visual Studio Team Services

GVFS (Git Virtual File System) という Git 大規模リポジトリを高速管理するための機能が利用できるそうです。
シンボルサーバーが利用できるそうです。
パイプラインを YAML で書けるそうです。
ちんぷんかんぷんです。

Git

Subversion や SVN に変わる新たなソースコード管理基盤。ローカルコミットができるので、大規模コード開発で他に影響を及ぼさずにコミット内容の管理ができるそうです。また、ブランチを作成したときに、自由度が高いのもメリットだそうです。Github はグローバルにオープンな OSS 開発が簡単にできるよ! ローカル Git ならプライベートだよ!

Simbol Server

ダンプって解析するの難しいんですよ。だって全部バイナリだから…。そんなときにこの Simbol Server に登録された情報が使えます。WinDBG に Simbol Server を設定し解析すると、バイナリが関数に変換されて見えるようになります。そんな素敵機能。

YAML

簡単標記のデータ構造体みたいなもの。YAML 自身はマークアップ言語…では無いと言い張っているらしいですが。Ansible の Playbook は YAML で書きます。設定値を定義するレジストリ構造体みたい。

その他もろもろ Azure の機能

Azure Databricks

Azure VM N シリーズと Cosmos DB 使って Spark でめっちゃくちゃ凄い DNN やろうぜ! となったときに使うクラウドサービス。要は Spark 開発元の Databricks 社が作ったマネージド Spark 基盤が Azure でも使えるようになりました (microsoft.com)。似たような基盤は AWS でも Google でも動いてるっぽいね。

Azure Time Series Insights

Azure 上で時系列データを時系列に分析するサービス。IoT Hub や Event Hubs から流れてきた有象無象をグラフにしたりヒートマップにしたりできるようです。PowerBI の時系列データ特化版みたいなイメージ。この機能が GA しました (microsoft.com)

Azure DevOps Project

Azure で DevOps な CI/CD パイプラインを作る機能っぽいです。この機能がプレビューとなりました (microsoft.com)

Azure Active Directory

Azure AD へのサインイン画面がアップデートされ、サインインを維持する機能が増えた (microsoft.com) そうです。

Azure Stack

Azure Stack でオンプレミス クラウドを! (microsoft.com) というわけで Tech Summit 2017 でも大いに話題となった Azure Stack をぜひ使ってねというアナウンスがあったようです。

Azure Machine Learning

Azure Machine Learning Workbench でいろいろできますよVisual Studio Tools for AI もあるよ、といった話ですかね。Tech Summit 2017 でも話題になっていましたね。
リージョンもいくつか増えたようです。ちょっと URL 張るの疲れてきた…。

Azure Cognitive Services

プレビュー版で動いていた様々な機能が色々 GA になるようです。Bot Services とか。

Azure Advisor

Azure で利用しているリソースを最適化してコストやパフォーマンスを良くしていくためのダッシュボードが更新されました

色々まとめてみましたが…

どこまで読んでも OSS 関連製品やテクノロジーに関する情報ばかりです。
世界中の AI エンジニアはみんな OSS 使い続けてたっていうことがよくわかります。
この投稿で、OSS 技術ギャップをなかなか埋められない人が、少しでもインフラエンジニアとして生きていく手助けになれば幸いです。