マイクロソフトの IoT ソリューションの概要と特徴
Microsoft Japan Data Platform Tech Sales Team
倉重 秀昭
昨今、様々なメディアで「 IoT 」が取り上げられていますが、今回は マイクロソフトの IoT ソリューションの概要とその特徴についてご紹介したいと思います。
マイクロソフト の IoT ソリューションは、 IoT 基盤に必要な機能を「データ受信」「データ処理」「ストレージ」「分析」「可視化」に分割し、それぞれの機能を Azure 上のサービスとして提供しています。
各機能毎に複数のサービスを提供していますので、実際に IoT システムを構築する際は、要件に応じて最適なサービスを選び、それらを組み合わせて実装する形となります。
また各サービスは API を公開するなどして、カスタムアプリケーションからアクセスできるようになっていますので、特殊な機能要件や制約があり Azure 上のサービスでは対応できない場合には、その部分だけカスタムアプリケーションで実装する事も可能です。
(例えば、デバイスから送信されるデータの受信は Azure のサービス( Event Hubs 等)を利用し、データ処理の部分だけカスタムアプリケーションで実装し、その後の工程は Azure のサービスを利用するといった事が可能です。)
この様に マイクロソフトの IoT ソリューションは、機能毎に部品化してサービスを提供し、それらのサービスやカスタムアプリケーションを組み合わせて構成することができる為、 「構築の容易性」「導入スピード」、および「カスタマイズの柔軟性(特殊要件への対応)」のいいとこ取りができる様になっています。
次に マイクロソフトの IoT ソリューションを構成する主なサービスについて紹介していきます。
データ受信
デバイスから送信されるデータを確実に受信し、一時保持するための機能
Event Hubs
デバイスから送信されるイベントデータを受信するためのサービス
対応するプロトコルは、HTTP、AMQP、AMQP over WebSockets
参考URL:https://azure.microsoft.com/ja-jp/services/event-hubs/
IoT Hub
デバイスから送信されるイベントデータの受信の他、デバイスに対するメッセージの送信も可能
対応するプロトコルは、HTTP、AMQP、AMQP over WebSockets の他、MQTT にも対応
デバイス単位でのセキュリティー制御が可能
参考URL:https://azure.microsoft.com/ja-jp/services/iot-hub/
※ Event Hubs と IoT Hub の違いについては、以下をご覧ください。
https://azure.microsoft.com/ja-jp/documentation/articles/iot-hub-compare-event-hubs/
データ処理
Event Hubs や IoT Hub で受信したデータを取り出し、準リアルタイムでデータ処理を行う機能
Storm/Spark
HDInsight(HDInsight については「分析」カテゴリーの記載をご覧ください)の一機能として提供
Apache Storm 、Apache Spark の PaaS 型サービス
参考URL(Storm):https://azure.microsoft.com/ja-jp/documentation/articles/hdinsight-storm-overview/
参考URL(Spark):https://azure.microsoft.com/ja-jp/documentation/articles/hdinsight-apache-spark-overview/
Stream Analytics
Azure の PaaS 型リアルタイムイベントプロセッシングサービス
データ処理の定義を SQLライクな構文で記述する事が可能
処理の中に機械学習の予測モデルを組み込むことができる為、準リアルタイムに異常値検出や故障予測を行う事が可能
参考URL : https://azure.microsoft.com/ja-jp/services/stream-analytics/
ストレージ
受信したデータを永続的に保持するためのデータ格納基盤
Table / Blob Storage
大量データを安全かつ安価に保存するためのストレージ
データをファイル(非構造化データ)として保存する場合はBlob Storage、半構造化データとして保存する場合には Table Storage(Key/Valueストア)を利用
参考URL:https://azure.microsoft.com/ja-jp/services/storage/
SQL Database
Azure の PaaS 型 リレーショナルデータベースサービス
データベースエンジンとして SQL Server を採用
参考URL:https://azure.microsoft.com/ja-jp/services/sql-database/
SQL Data Warehouse(早速、来月早々に別記事で取り上げる予定です)
Azure の PaaS として提供するデータ ウェアハウスサービス
MPP 型の並列分散処理アーキテクチャを採用
参考 URL : https://azure.microsoft.com/ja-jp/services/sql-data-warehouse/
Data Lake Store
HDFS(Hadoop 分散ファイルシステム)サービス
蓄積した大量のデータを高スループットで利用可能
参考URL:https://azure.microsoft.com/ja-jp/services/data-lake-store/
分析
機械学習やHadoopを使ったデータ処理など、集めたデータを分析するための基盤- Machine Learning
Paas 型機械学習プラットフォーム
非常に使い勝手の良い GUI を提供している為、高い開発効率で予測モデルを開発可能
参考URL:https://azure.microsoft.com/ja-jp/services/machine-learning/
- HDInsight
Map Reduce、Hive、HBase、Storm、Spark 等、Apache Project のビッグデータ分析機能を PaaS として提供
Linux 版と Windows 版から選択可能
参考URL:https://azure.microsoft.com/ja-jp/services/hdinsight/
- Data Lake Analytics
PaaS 型の並列分散分析フレームワーク
U-SQL(C# と SQL がベース) により処理を定義
参考URL:https://azure.microsoft.com/ja-jp/services/data-lake-analytics/
- Machine Learning
可視化
受信・蓄積したデータを可視化するための分析基盤Power BI Service
SaaS型のデータ可視化プラットフォーム
SQL Database等に蓄積したデータを可視化したり、Stream Analytics や Spark で処理したデータを受け取り、準リアルタイムに可視化する事も可能
参考URL:https://powerbi.microsoft.com/ja-jp/
-
本記事では、マクロソフトのIoTソリューションの概要と特徴について記載いたしましたが、各機能の詳細については、別の記事でご紹介する予定です。