データ分析、データベース

Azureサービスを活用してIoTデータの収集・分析を行う手順

さまざまなサービスを備えた Azure IoTソリューションを使用することで、企業は大規模なIoTインフラストラクチャを効率的に構築・管理・運用できます。本記事ではAzure IoT HubをはじめとするAzure IoTサービスの一部の紹介と、それらを用いたIoTデータの収集・分析の手順を解説します。

Azureサービスを活用してIoTデータの収集・分析を行う手順

データ分析の工程と関連ツールを紹介

IoTデータの収集・分析に活用できるAzureのサービス

AIやDevOpsをはじめ、Microsoft Azureには最新の技術に対応した様々なサービスがありますが、その中のひとつにIoTインフラストラクチャの構築や管理運用に役立つソリューション「Azure IoT」もあります。Azure IoTを選択することで、セキュリティ対策やシステムの統合など、多くのメリットを得ることができます。

そんなAzure IoTに含まれる数多くの機能を活用することで、無数のIoTデバイスとIoTネットワークで繋がり、そこからビジネスに役立つデータの収集・分析ができます。Azureが提供する主なIoT関連サービスは、以下の通りです。

  • IoTデータを連携するAzure IoT Hub
  • データを保存するAzure Synapse Apache Spark プール と Delta Lake
  • 分析データを可視化するSynapse Notebook

この記事では、それぞれのサービスの詳細について詳しく解説し、実際に導入する際のメリットやポイントをご紹介します。Azureが提供する主なIoT関連サービスの導入を検討する際には、ぜひ参考にしてみてください。

Azure IoT Hubとは?

Azure IoT Hubとは、Azure IoTにおけるサービスの一部で、無数のIoTデバイスと接続し、それらの監視・制御を行うためのソリューションです。何百万にもなるIoTデバイスとバックエンドソリューションを安全に接続できるため、信頼性が高いことが特徴です。以下では、そんなAzure IoT Hubの主な機能を解説します。

Azure IoT Hubの機能

Azure IoT Hubは、クラウドでホストされるIoTサービスのことです。その名の通り、IoTアプリケーションと管理するIoTデバイス間の相互通信を可能にするハブとしての役割を担います。Azure IoT Hubを活用することで、接続されたデバイスからIoTデータを受信したり、各種のコマンドを送信したりすることが可能です。

さらに、Azure IoT Hubにより、スケーラブルなIoTインフラストラクチャの構築も可能です。Azure IoT Hubには数百万台ものIoTデバイスと信頼性の高い通信で同時接続できるので、ビジネスの要件に応じてどこまでもスケールアップできます。 Azure IoT Hubではデバイスごとの認証管理をしたり、接続状況や障害などのイベントをリアルタイムで監視・制御したりすることも可能です。

IoTデータの分析・収集に当たっては、Azure IoT Hubを他のサービスと統合して、エンドツーエンドのソリューションを構築することが必要になります。

Azure Synapse Analytics Apache Sparkとは?

Azure IoT Hubには多くの機能があることをご紹介しました。続いては、IoTデータの統合や分析を可能にするAzure Synapse AnalyticsにおけるApache SparkプールとSynapse ノートブックについて詳しく解説します。

Azure Synapse Analyticsとは

Azure Synapse Analyticsとは、エンタープライズのデータウェアハウスやデータレイクとビッグデータ分析を統合する分析サービスのことです。Azure Synapse Analyticsでは サーバーレスまたはプロビジョニングされたリソースを大規模に使用して、自由にデータを分析できます。

Azure Synapse Analyticsは業界最高水準のSQLのApache Sparkを備えており、データレイクの操作や組み込みデータの統合が可能です。Apache Sparkとは、ビッグデータやETL、機械学習などのために活用される最も一般的なオープンソースの高速な統合分析エンジンを意味します。

Azure Synapse Analytics は、SQLのデータウェアハウス、Sparkのビッグデータ分析機能、およびデータ統合技術を組みあわせて統合環境を提供し、両者間および外部データソースからのデータの移動や管理を容易にします。Azure Synapse Analyticを活用することで、構造化データ・非構造化データ問わず、膨大なデータの分析基盤の構築が可能です。

Apache Spark プールとは

Apache Sparkプールは、Azure Synapse Analyticsに実装された機能のひとつで、オープンソースのビッグデータコンピューティング機能を提供します。具体的には、Sparkインスタンスがインスタンス化される際に、コンピューティングリソースの要件や、そこに関連する動作特性を定義する機能です。

Sparkプールはメタデータとしてのみ存在するので、リソースが消費されることはなく、Azure portalでいくつでも作成できます。Sparkプールでは分離コンピューティングオプションや、ノードのサイズ変更などが実行可能です。Azure portalを使うことで、サーバーレス化して利用できます。

Synapse ノートブックとは

Synapseノートブックとは、Azure Synapse Analyticsにおいて、ライブコードの記述や視覚化を行い、それらにテキストをコメントするための機能です。Synapseノートブックではスクリプト全体を実行するのではなく、各セルの出力をテストできます。そのため、何らかのアイデアをテストしようとするとき、Synapseノートブックを利用することは非常に助けになります。

Synapseノートブックの初期設定は簡単で、組み込みのセキュリティ機能を活用してデータを安全に保つことが可能です。 RAWやSQLなどの複数のデータ形式を処理可能で、データの準備、視覚化、機械学習など幅広いシーンで活用されます。 また、組み込みのデータ視覚化機能は多くの時間を節約できるため、データのサブセットを処理するときに便利です。設定作業をせずに使用を開始できるため、データ分析や情報分析を行いたい場合にとても役立ちます。

Azure DatabricksのDelta Lakeとは?

Databricksとは、開発者やデータサイエンティストがビッグデータを高速で分析するために使用するオープンソースのソフトウェアです。その中でも、Azure DatabricksはAzureでの使用に最適化されています。Azure Databricksでは最新のApache Spark環境が即座に利用可能で、さまざまな言語を使ってデータ分析を行えます。

Delta Lakeは、このAzure Databricksにおける既定のストレージ形式で、Databricks Lakehouse Platformにデータとテーブルを格納するために使用されるストレージレイヤーです。 Delta Lakeは Apache Spark APIと完全な互換性を持っており、バッチ操作とストリーミング操作の両方で信頼性の高いパフォーマンスとセキュリティを発揮します。Delta Lakeを活用して構造化データ・非構造化データ・半構造化データを一箇所に集約することで、アクセス性に優れた効率的なデータ分析基盤を構築可能です。

Azureサービスを用いたIoTデータ収集・分析の手順

大まかな手順は以下です。

まず、M5Stick-C (ESP32) のコードに Azure IoT Hub の接続情報を書く必要があるので IoT Hub を先に作成します。

Azure IoT Hub

  1. IoT Hub を作成。
  2. デバイスIDを作成。
  3. ストレージへ保存するためのルールを作成。

M5Stick-C (ESP32)

M5Stick-C とは、espressif 社 が開発したモジュール ESP32 を使った、液晶と RTC が付いたデバイスです。
現在は販売終了して M5StackC Plus が販売されています(2022年12⽉8⽇現在)。

M5StickC Plus — スイッチサイエンス

今回は Grove に温度計(BMP280)を接続します。

  1. azure-sdk-for-c-arduino/readme.md at main · Azure/azure-sdk-for-c-arduino · GitHub から Arduino ⽤ソースコードをダウンロードします。(MIT license)
  2. iot_configs.h を変更します。
    Wi-Fi 、 IoT Hub 、 デバイスIDの設定をします。
  3. 送信データの取得、JSONの作成部分を変更します。

(ついでにログ出⼒と時間取得の部分も少し変更)

Synapse

  1. Synapse を作成します。
  2. Synapse Apache Spark Pool を作成します。
  3. Synapse Studio で Notebook を作成します。

まとめ

Microsoft AzureのIoTソリューションを活用することで、無数のIoTデバイスと接続できるスケーラブルなIoTプラットフォームを構築し、膨大なIoTデータを効率的に収集・分析できます。IoTを活用する際には、ぜひAzureのIoTサービスの導入をご検討ください。

  • fb-button
  • line-button
  • linkedin-button

無料メルマガ

関連記事

Azure Notebooksでプログラミング学習を!ノートブック機能の説明の概要
データ分析、データベース
Azure Functionsはサーバーレス、FaaSの時代を拓く
ハイブリッドクラウド
Azure Monitorとは?その基本と監視内容を解説
仮想デスクトップ
Azure DevOpsで開発と運用を連携させ、品質の向上を
アプリケーション開発・管理・運用
Azure Kinect DKのSDKと活用シーン
アプリケーション開発・管理・運用
Azure Stackによってオンプレミスで構築するクラウド
ハイブリッドクラウド
Azureを導入する際の流れと検討するべき3つのポイント
クラウド移行(インフラ・DB)
Azure Information Protectionでメールや文書を保護
セキュリティとガバナンス
Azure Web Appsでビジネスチャンスを迅速につかむ
アプリケーション開発・管理・運用
IoTとは?5分で概要からポイントを解説
クラウド移行(インフラ・DB)
Microsoft Intuneとは? 導入メリットやEMMを実現する3つの機能を解説
セキュリティとガバナンス
Azure Pipelinesとは?その概要、料金体系、そして構文サンプル
アプリケーション開発・管理・運用
Azure Storage Explorerとは?概要と使い方
クラウド移行(インフラ・DB)
Azure CLIとは?Azure PowerShellとの違いについても解説
クラウド移行(インフラ・DB)
Azure SQL Databaseで生産性向上と持続的な経営を
セキュリティとガバナンス
RELATED SITES

関連サイト

CONTACT

サイト掲載の
お問い合わせ

TOP