Stream Analytics の新機能: 機械学習、オンライン スケーリング、カスタム コードなど

2019年10月29日 に投稿済み

Principal Program Manager, Azure Stream Analytics

Azure Stream Analytics は、リアルタイムの洞察を利用する数千ものミッション クリティカルなお客様のアプリケーションをサポートするフル マネージドの PaaS (サービスとしてのプラットフォーム) です。既定で数多くの他の Azure サービスと統合するため、開発者およびデータ エンジニアは、数分以内に高性能なホットパス データ パイプラインを構築できます。Stream Analytics の重要な理念の一例として、使いやすさ、開発者の生産性、およびエンタープライズ対応が挙げられます。このたび、これらの重要な理念をさらに強化するいくつかの新機能がリリースされることになりました。これらの機能についてもう少し詳しく見ていきましょう。

プレビュー機能

これらのプレビュー機能は、2019 年 11 月 4 日にロールアウトが開始されます。その後、数週間以内に全世界で利用可能になります。 

オンライン スケーリング

これまでは、Stream Analytics ジョブに対して割り当てられているストリーミング ユニット (SU) を変更するには、ジョブを一旦停止してから再開する必要がありました。これを行ってもデータが失われることはないものの、余分なオーバーヘッドや待機時間が発生していました。

オンライン スケーリング機能により、SU の割り当てを変更する必要がある場合でも、ジョブを停止する必要がなくなります。お客様は、実行中のジョブを停止することなく、そのジョブの SU の容量を増減させることができます。この機能は、現在 Stream Analytics が提供している長時間のミッション クリティカルなパイプラインに関するお客様への公約に基づくものです。

Stream Analytics ジョブを実行したまま SU を変更

Stream Analytics ジョブを実行したまま SU を変更

C# のカスタム デシリアライザー

Azure Stream Analytics は、これまでずっと、既定で JSON、CSV、または AVRO のデータ形式の入力イベントをサポートしてきました。しかしながら、膨大な数の IoT デバイスの多くは、他の形式でデータを生成し、より効率性の高い拡張可能な形式で構造化データをエンコードするようにプログラミングされています。

マイクロソフトの最新のイノベーションにより、開発者は、Azure Stream Analytics の機能を利用し、Protobuf 形式、XML 形式、または任意のカスタム形式のデータを処理できるようになりました。お客様は、C# でカスタム デシリアライザー (英語)を実装し、これを利用して Azure Stream Analytics が受信したイベントを逆シリアル化できるようになりました。

C# のカスタム コードによる拡張

従来、Azure Stream Analytics は、イベント ストリームに対して変換や計算をするための SQL 言語を提供していました。現在サポートされている SQL 言語には数多くの強力な組み込み関数が存在しますが、SQL のような言語では複雑なシナリオに対応するのに十分な柔軟性やツールを提供できない場合があります。

このたび、クラウドや IoT Edge で Stream Analytics モジュールを作成する開発者は、カスタムの C# 関数を作成/再利用し、ユーザー定義関数を使用してクエリですぐにそれらを呼び出せるようになりました。これにより、複雑な数値計算、ML.NET を使用したカスタムの ML モデルのインポート、カスタムのデータ補完ロジックのプログラミングなどのシナリオに対応できます。Visual Studio の完全に忠実な作成エクスペリエンスを利用してこれらの関数を作成できます。

Power BI によるマネージド ID 認証

Power BI による動的なダッシュボード エクスペリエンスは、世界中の数千のお客様に向けて Stream Analytics が運用化を支援する主要なシナリオの 1 つです。

このたび、動的なダッシュボード エクスペリエンスを実現するために、Azure Stream Analytics が Power BI によるマネージド ID ベースの認証を完全にサポートするようになりました。これにより、お客様は、組織のセキュリティ目標によりよく適合し、Visual Studio の CI/CD ツールを使用してホットパス パイプラインを展開できるようになるとともに、ユーザーが 90 日ごとにパスワードを変更しなくても済むようになるため、長時間のジョブに対応できるようになります。

この新機能はすぐに利用可能になりますが、Azure Active Directory のユーザーベースの認証モデルを引き続き使用することもできます。

Azure Stack の Stream Analytics

Azure Stream Analytics が IoT Edge ランタイムを介して Azure Stack でサポートされます。これにより、コンプライアンスなどの理由によってクラウドにデータを移行できないが、Azure のテクノロジを利用してハイブリッド データ分析ソリューションをエッジで提供したいといったシナリオに対応できます。 

2020 年 1 月からプレビュー オプションとしてロールアウトされるこの新機能により、Azure Stack で Event Hubs や IoT Hub のイングレス データを分析し、同じ場所にある Blob Storage や SQL Database に結果をエグレスできるようになります。ロールアウト開始時まで、こちら (英語) でこの機能のプレビューにサインアップできます。

Visual Studio でのクエリ ステップのデバッグ

Azure Stream Analytics クエリの WITH ステートメントで定義された中間行セットのデバッグの課題について、お客様から数多くのフィードバックを頂戴しました。このたび、Visual Studio の Azure Stream Analytics ツールでローカル テストを行う際、データ ダイアグラムで中間行セットを容易にプレビューできるようになりました。この機能は、コードを修正する際、クエリを分析し、結果を段階的に確認するうえで大いに役立つ可能性があります。

Visual Studio Code でのライブ データを使用したローカル テスト

Azure Stream Analytics ジョブを作成する際、ライブ データに接続し、結果を可視化する必要があるというご意見を開発者の方々から頂戴しました。このたび、無料で利用できる、軽量で、クロスプラットフォームのエディターである Visual Studio Code の Azure Stream Analytics ツールでこれを行えるようになりました。開発者は、Azure にジョブを送信する前に、ローカル マシンでライブ データを使用してクエリをテストできます。各テスト イテレーションの所要時間は平均で 2 ~ 3 秒未満です。これにより、非常に効率的な開発プロセスが実現されます。

Visual Studio Code のライブ データ テスト機能

Visual Studio Code のライブ データ テスト機能

Azure Machine Learning のプライベート プレビュー

カスタムの機械学習モデルによるリアルタイム スコアリング

このたび、Azure Stream Analytics が、コードの記述が一切不要なワークフローを使用し、Azure Machine Learning サービスによって管理され、Azure Kubernetes Service (AKS) または Azure Container Instances (ACI) でホストされる、カスタムのトレーニング済みの機械学習モデルを利用して、高性能なリアルタイム スコアリングをサポートするようになりました。

お客様は、Scikit-learn、PyTorch、TensorFlow などの一般的な Python ライブラリを使用してカスタム モデルを構築し、Azure Databricks、Azure Machine Learning Compute、HD Insight を含む任意の場所で、カスタム モデルのトレーニングを行うことができます。Azure Kubernetes Service または Azure Container Instances クラスターへの展開後、Azure Stream Analytics を利用して、ジョブ自体の内部のすべてのエンドポイントを表面化できます。Azure Stream Analytics ジョブ内の機能ブレードにナビゲートし、Azure Machine Learning の機能オプションを選択して、Azure Machine Learning ワークスペースでいずれかの展開に関連付けるだけです。

Azure Machine Learning エンドポイントに送信される並列要求の数など、パフォーマンスを最大限に高めるための高度な構成機能が提供されます。

現在、こちら (英語) でこの機能のプレビューにサインアップできます。

フィードバック & マイクロソフトとつながる

Twitter (@AzureStreaming) でマイクロソフトをフォローしてマイクロソフトとつながり、新機能の概要情報をいち早く入手しましょう。

Azure Stream Analytics チームは、お客様のフィードバックに全力で耳を傾け、お客様の声を将来の投資に反映させます。ぜひ UserVoice ページ (英語) で会話に参加し、お客様の意見をお聞かせください。