Upload
kazumi-ohira
View
81
Download
0
Embed Size (px)
Citation preview
AzureでIoTの夢を叶える入力、収集、蓄積、フィードバックまで
マルッと使えるクラウド!
Prologue - はじめに
In t roduct ion
自己紹介
つくるの好き!
クラウド好き
趣味 : A z u r e
大平かづみ
I o Tは、技術の総称に過ぎない
テクノロジーが詰まったクラウドは、その実現を助けることができると考えます
なぜいま、 IoT なのか?クラウドが便利な理由
クラウドの普及により IoTが促進
多くのデータを受けられるスケール性
膨大なデータも保存できるストレージ
多くのデータを並列的に処理できる
高速処理ができるコンピューティングリソース
IoTを取り巻くライフサイクルA z u r eの場合
IoTのライフサイクル
インプットとフィードバックの環
加工、抽出、分析
入力 収集 蓄積フィードバック
IoTをとりまくAzureサービスたち
ニーズに合わせて選択できるサービスたち
入力 収集 蓄積 フィードバック
加工、抽出、分析
デバイスからの「入力」アナログの世界からデータを取得する
IoTのデバイス開発をサポート
用途によって選べる
シ ン プ ル な
E v e n t H u b
万 能 な I o T H u b
多様な開発環境
言 語
S D K
シ ミ ュ レ ー タ ー 、
補 助 ツ ー ル
デバイスカタログ
認 証 済 み デ バ イ ス
の 検 索
シンプルで使い勝手の良い Event Hub
デバイスからのデータを受け取る(単方向)
S t r e a m A n a l y t i c s などを介してサービス連携
IoT Hub の万能さ
E v e n t H u b より後にローンチされた万能選手
データの送受信ができる
デバイス管理
ファイルアップロード
デバイスツインd e s i r e d と r e p o r t e d による状態同期
C , . N ET, J a va , N o d e . j s , P y t h o n
多様な開発環境(1)
S D K 用途
A z u r e I o T D e v i c e S D K • デバイス上で動作するアプリケーションを構築できる
A z u r e I o T S e r v i c e S D K • デバイス上のバックエンド処理を実装できる• I o T H u b の管理機能連携など
A z u r e I o T G a t e w a y S D K
• I o T ゲートウェイを構築する• I o T H u b が対応しているプロトコルが利用でき
ないデバイスの通信手段として利用できる
I o T H u b R E S T • 汎用的な R E S T 形式で利用できる• デバイス管理やデバイスツインなど
N o d e - R E D n o d e f o r A z u r e I o T
• フローベースのプログラミングができる N o d e -R E D のノードから I o T H u b を利用できる
豊富な S D K
多様な開発環境(2)
D e v i c e E x p l o r e rh t t p s : / / g i t h u b . c o m / A z u r e / a z u r e - i o t -s d k s / r e l e a s e s ( S e t u p D e v i c e E x p l o r e r. m s i )
W i n d o w s対応
I o T H u b E x p l o r e rh t t p s : / / g i t h u b . c o m / A z u r e / i o t h u b - e x p l o r e r
クロスプラットフォーム対応(W i n / M a c / L i n u x )
A z u r e S t o r a g e E x p l o r e rh t t p : / / s t o r a g e e x p l o r e r. c o m /
クロスプラットフォーム対応(W i n / M a c / L i n u x )
シミュレーター、補助ツール
多様な開発環境(3)
リファレンス一覧
I o T H u bデバイスツインについてh t t p s : / / d o c s . m i c r o s o f t . c o m / a z u r e / i o t - h u b / i o t -h u b - d e v g u i d e - d e v i c e - t w i n s
各A z u r e I o T S D Kについてh t t p s : / / d o c s . m i c r o s o f t . c o m / a z u r e / i o t - h u b / i o t -h u b - d e v g u i d e - s d k s
N o d e - R E Dについてh t t p : / / n o d e r e d . o r g /
Microso f t が認定した IoT デバイスカタログ
検証済みの I o Tデバイスを検索できるh t t p s : / / c a t a l o g . a z u r e i o t s u i t e . c o m /
A z u r e I o T H u bへの接続がテスト済み
製造元とのコネクション
IoT をこれから始めるあなたへ
I n t e r n e t o f T h i n g s キット ハンズオン トレーニング
h t t p : / / a k a . m s / I o T K i t H o L
A z u r e I o T スターターキットh t t p s : / / a z u r e . m i c r o s o f t . c o m / j a -j p / d e v e l o p / i o t / s t a r t e r - k i t s /
入力されたデータを「収集」インタフェースからのデータをつなげる
ストリーム処理とメッセージング
ストリーム処理
S t r e a m
A n a l y t i c s
メッセージング
S e r v i c e B u s
キューイング
Q u e u e
S t o r a g e
S e r v i c e B u s
Q u e u e
データの流れをつなげる、配る
データをつなげる St ream Ana ly t i cs
入力されたデータを、メッセージングやその他サービスに振り分ける
大量のデータをさばける
様々な入出力に対応
S Q Lに似たクエリで条件を記述
St ream Ana ly t i c s の入出力
I o T H u b
E v e n t H u b
B l o b S t o r a g e
S t r e a m A n a l y t i c s
S e r v i c e B u s Q u e u e
S e r v i c e B u s T o p i c s
E v e n t H u b
B l o b S t o r a g e
T a b l e S t o r a g e
S Q L D a t a b a s e
D a t a L a k e
D o c u m e n t D B
P o w e r B I
データを整列させる Ser v i ce Bus
S e r v i c e B u s Q u e u eデータを F I F Oでキューイング
S e r v i c e B u s To p i c sp u b / s u b形式で配信・購読
S e r v i c e B u s Re l a y様々な通信をリレーする
Azure のキューサービスについて
Q u e u e S t o r a g e S e r v e r B u s Q u e u e
概要 • 単純な R E S T ベース • メッセージングサービスS e r v i c e B u s の一部。より複雑な構成が可能
順序 • 保証しない • 保証する( F I F O )
進行状況 • 追跡あり • -
特徴 • メッセージングの量が大きくても大丈夫
• 実行時間が長くても大丈夫
Q u e u e S t o r a g e と S e r v i c e B u s Q u e u e
Q u e u e S t o r a g eとS e r v i c e B u s Q u e u eの比較h t t p s : / / d o c s . m i c r o s o f t . c o m / j a - j p / a z u r e / s e r v i c e - b u s -m e s s a g i n g / s e r v i c e - b u s - a z u r e - a n d - s e r v i c e - b u s - q u e u e s -c o m p a r e d - c o n t r a s t e d
収集されたデータを「蓄積」バイナリ保存、ドキュメントD B、 R D B、ビッグデータ
選べるデータストア
データ保存
の代表
S t o r a g e
A c c o u n t
J S O N のまま
スケーラブルに
D o c u m e n t D B
おなじみのリ
レーショナル D B
S Q L
D a t a b a s e
データウェア
ハウス
D a t a L a k e
小規模から大規模まで
データ保存の代表 Storage Account
4つのデータ保存形式
サービス 用途
B l o b S t o r a g e バイナリ、 V H D など
Ta b l e S t o r a g e キーバリューストア
Q u e u e S t o r a g e キューイング
F i l e S t o r a g e ファイル共有
JSONのままスケーラブルな DocumentDB へ
J S O N形式で格納するドキュメント型データベース
全世界のリージョンにスケールできる
C A P定理に基づいた一貫性レベルを選択できる
S Q Lベースのクエリで検索できる
クエリでユーザー定義関数を利用できる
トリガー処理、ストアドプロシージャーをプログラミングできる
おなじみの SQL Database
クラウド型のリレーショナルデータベース
スケーラブル&レプリケーション
ビッグデータ向け Data Lake
大容量データを格納できるデータウェアハウス
並列計算と親和性が高い
データを「加工、抽出、分析」自由にプログラミング、G U I、 R E S Tで簡易に分析
最小の労力でデータを処理するサービス群
汎用
A z u r e F u n c t i o n s
A z u r e L o g i c A p p s
分析
A z u r e H D I n s i g h t s
A z u r e
M a c h i n e L e a r n i n g
M i c r o s o f t C o g n i t i v e
S e r v i c e s
使い慣れたソリューションで
お好みの言語で FaaS、Azure Func t ions
処理だけ書けばよい Fa a S
N o d e . j s , C # , F # , P y t h o n , P H P, B a s h , B a t c h , Po we r S h e l l
A z u r eのほかのサービスからの入出力、およびトリガーを利用できる
GUIでプログラミング Azure Log i c Apps
フローベースのプログラミングツールO f f i c eにもライトユーザーに向けた同等サービス F l o w がある
A z u r eのほかのサービスと連携しやすい
S l a c kやTw i t t e rなど外部サービスと連携も簡単
Hadoop をサービスとして利用する Azure HDIns ight
A z u r eがフルマネージドで提供するH a d o o pクラスタA p a c h e S t o r m
A p a c h e S p a r k
R S e r v e r
A p a c h e K a f k a
A z u r eのほかのサービスからの入力、出力ができる
V i s u a l S t u d i o との連携
GUIで機械学習 Azure Mach ine Learn ing
We bベースのG U Iで、汎用的なアルゴリズムとモジュールを組み合わせて機械学習を行える
A z u r eのほかのサービスからの入力、出力ができる
手軽にAIを利用できる Cogn i t i ve Ser v i ces
汎用的なA Iを手軽に利用できるM i c r o s o f t が持つ豊富なデータをもとに学習させたもの
簡単!
h t t p s : / / m i c r o s o f t . c o m / c o g n i t i v e - s e r v i c e s
豊富なS D K、R E S T A P I
B o t F r a m e w o r kと相性抜群!C o g b o tコミュニティ
h t t p s : / / c o g b o t . c o n n p a s s . c o m /
ユーザーに「フィードバック」得られた結果から、ユーザーにフィードバックを返す
ユーザーにフィードバックを伝えるあれこれ
デバイスへ
I o T H u b
モバイル端末
へ通知
N o t i f i c a t
i o n H u b
ウェブサイト
W e b
A p p s
チャット
ボット
B o t
S e r v i c e
ビジネス分析
ツール
P o w e r B I
データの羅列ではなく、より直感的に
IoTデバイスへ送信もできる IoT Hub
デバイス管理機能と連携し、特定のデバイスに通知ができる
モバイル端末へ通知する Not i f i ca t ion Hub
i O SやA n d r o i dなどのモバイル端末へプッシュ通知
タグによる通知対象のセグメント化
テンプレートによりローカライズが容易
スケーラブル
ウェブサイトなら、Web Apps
言わずと知れたA z u r eの Pa a S
. N ET, N o d e . j s , P H P, P y t h o n , J a va
選べるサーバー環境W i n d o w s & I I S
L i n u x & A p a c h e(プレビュー公開)
C o n t a i n e r o n L i n u x(プレビュー公開)
Bot Ser v i ce でユーザーフレンドリーなボット
チャットボットのための Pa a SB o t F r a m e w o r kをプリイン
. N E T,またはN o d e . j s
S k y p eやS l a c kなどチャンネル連携がG U Iで操作できる
C o g n i t i v e S e r v i c e sと相性抜群!C o g b o tコミュニティ
h t t p s : / / c o g b o t . c o n n p a s s . c o m /
データを視覚化する Power BI
M i c r o s o f t製ビジネス分析ツール
A z u r e との連携についてh t t p s : / / p o w e r b i . m i c r o s o f t . c o m / j a- j p / d o c u m e n t a t i o n / p o w e r b i -a z u r e - a n d - p o w e r - b i /
Epilogue - おわりに
IoTをとりまくAzureサービスたち
ニーズに合わせて選択できるサービスたち
入力 収集 蓄積 フィードバック
加工、抽出、分析
人に寄り添うサービスを作るのはあなた!
H a v e F U N !