49
© Zühlke 2015 Plattformen für das Internet der Dinge Kennst Du eine, kennst Du alle? Dr. Boris Adryan Principal Consultant

Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16

Embed Size (px)

Citation preview

© Zühlke 2015

Plattformen für das Internet der DingeKennst Du eine, kennst Du alle?

Dr. Boris AdryanPrincipal Consultant

Dr. Boris Adryan

§ seit 1. September bei Zühlke (Deutschland)

§ langjähriger IoT-Enthusiast§ Gründer von thingslearn Ltd.§ Board Member & Strategic Advisor bei

PyCom, BioSelf, OpenSensors

§ davor: Leiter einer wissenschaftlichen Arbeitsgruppe im Bereich Machine Learning und Data Analytics an der University ofCambridge, England

@BorisAdryan

Sensor

Aktuator

Funk

Gateway

Cloud - the magic happens here

I’m somebody else’s computer.J

Internetverbindung

Funk

Ich spreche WiFi.

Messdaten

Kommandos

…und ich ein Smart-Phone

on off

Internet-verbindung Ich gehöre dem Netzbetreiber und

weiß, wann der Strom billiger ist.

Komme vom DWD und habe historische

Wetterdaten

Ich kenne Dein Auto.Du bist bald zu Hause!

„open data"

Infrastruktur

andere Firmen

Ich bin eine Heizung.

Ding BenutzerPlattform

SensorAktuator

VerteilungSpeicherung

Analyse

Web / mobile App

andere Dienste

Die Plattform ist ein elementarer Bestandteil einer IoT-Lösung.

Potentielle Szenarien

Ding „eigene” Komplettlösung

lokal (beim Gerät)on-prem (Dienstleister)

Benutzer

Cloud-LösungDing

DingDing

DingDing „eigene” Software-Lösung

Platform-as-a-Service

Software-as-a-Service

Stichwort: SMACK Stack

AWS IoTAzure IoT

Viele, viele!

Weithin vermarktet als „IoT-Plattform“.

Thema heute!

Benutzer

Benutzer

Benutzer

IoT und Cloud

SaaS

PaaS

big data stack

billig, wenn Zeit und Fähigkeit vorhanden

leichter zu erlernen

flexibler!

weniger Fummelei

komplette Kontrolle

einfach in der Benutzung

EVRYTHNG - AWS IoT

Manche SaaS IoT-Plattformen setzen auf öffentliche PaaS auf, z.B. ist

Infrastructure-as-a-Service

Platform-as-a-Service

Software-as-a-Service

Begriffsklärung von Service-Angeboten

unser Angebot - Azure IoT

“schlüsselfertige” Hardware

vorgefertigte, aber zumeist unkonfigurierte Software-Modulefür Entwickler

zum Teil vorgefertigte Komplettlösungen

Wo aber sollen SIE einsteigen? Und worauf sollten Sie achten?

Nun, es kommt drauf an…

Konsumgüter mit Internetverbindung

Die Qual der Wahl für Projektmanager und Entwickler:

PaaS

IoT-Plattform

AWS IoTAzure IoT

IBM/Watson IoTCisco IoT System

Google Cloud for IoTSalesforce IoT Cloud

General Electric PredixOracle Integrated CloudSAP HANA IoT Services

XivelyCarriotsUbidots

EMonCMSEVRYTHINGThingworxTinamous

OpensensorsThingspeak

GemaltoExositeEyehubParticle

Electric Imp

WyzBeeThinger

SmartLivingMTSIoT

CreatorIoTPlatONE

ParStreamSmartThings

PubNubdata@sparkfun

...

SaaS

Angebotsanalyse ist ein trockenes Geschäft...

Ihr Bedarf bestimmt, was eine “gute” Plattform ist!

Mögliche Schwerpunkte:

Die Auswahl einer PaaS und/oder SaaS-Plattform ist eine kritische Entscheidung!

•Weiterleitung•Speicherung•Datenanalytik

•Web Interface•Standards•APIs

•u.v.a.

Funktionen

Verwendung

Kosten•Funktionalität•Messages•Storage

•Konzept•Sprachen•Flexibilität

Entwicklung

Minimale Lösung: “Dump über http”-as-a-Service

Ablegen der Daten mithttp://yanza.com/post&mydevice&temp=21.3

http://yanza.com/?mydeviceliefert: mydevice=20160907095123&temp=21.3

Fehlt Ihnen etwas?

(Zeitstempelletzter Datensatz)

Wo bleibt die Sicherheit?• http post kann einfachst abgehört werden• jeder kann eine ID erraten und abfragen• jeder kann ‘mydevice’ als ID benutzen und

neue Daten schreiben

Ihre Antworten, die wir sehen wollten...

Ältere Datensätze nicht abrufbar

Keine anderweitige Funktionalität

http-Verbindung sicherlich langsam

Dies ist nicht der große c‘t Plattform-Test!

PaaSAWS...Azure...IBM...

SaaSUbidotsExositeOpenSensors...

KostenProto-kolle

Device Manager …

Anekdoten, Fallbeispiele, etc.

-Wie haben andere etwas

gemacht? Was würdeZühlke empfehlen?

Muß denn überhaupt „IoT“ draufstehen?

Beispiel: SunSprite Wearable

§ 1 Messung/Minute von Helligkeit (Lux) und UV-Index

§ Gerät speichert Daten von bis zu einer Woche zwischen

§ Synchronisierung über BLE

§ Visualisierung in App

§ Langfristige Speicherung und agglomarative Analytik in der Cloud

DingSmart-Phone

Plattform

Sensor Visualisierung Speicherung

API-Zugriff

Mobile backend-as-a-Service

SunSprite ist ein Startup.

Kriterien:§ Schnelle Entwicklung§ Option zur Skalierung§ keine “Kostenfalle”

Skalierung

horizontal:mehr Benutzer, Geräte, Datenpakete –also mehr I/O, Speicher, Compute

vertikal:mehr Funktionalität, bessere Anpassung an spezielle Fälle, Option zum Experimentieren mit Business Modellen

© Zühlke 2015

Zühlke unterstützt Kunden bei Innovationen

© Zühlke 2015

wettbewerbsdifferenzierendStandard

Für die meisten IoT-Lösungen, die Zühlkebaut, kommt PaaS zum Einsatz.

© Zühlke 2015

PaaS bewahrt davor, das Rad neu zu erfinden

… schaffen keinen Business-Wert, sind aber Zeitfresser:§ Server-Infrastruktur§ Skalierungsmechanismen§ Deployment-Fragen

… überlässt man besser Spezialisten:§ Message Broker§ Datenbanken (RDBMS und NoSQL)§ Web Frameworks

Manche Dinge…

© Zühlke 2015

PaaS gibt Entwicklern Flexibilität

SaaS PaaS IaaS

das richtige Maß an

Customizing statt Lösungsdesign erlaubt Fokus auf fachliches

Problem

Risiko:„Programmieren

in Pop-up-Boxen“ erfüllt Entwickler nicht.

Hohe Produktivität, wo Plattform gut passt.Volle Kontrolle, wo

Sonderlösung benötigt wird.

Risiko:Not-invented-here-Syndrom verfehlt Produktivitätsziel

Entwickler haben volle Kontrolle über den

gesamten Stack, angefangen beim OS.

Risiko:Ressourcenverlust durch wiederholte

Evaluation von Tools, Frameworks, Komponenten

Warum gibt es dann die ganzen SaaS-artigen IoT-Plattformen?

§ Nicht jedes Budget erlaubt die Erstellung einer PaaS-basierten Lösung.

§ Bei genau definierten Anwendungen kann der Endkunde selbst auf die Plattform zugreifen –als IT-Dienstleister übernehmen wir nur die Konfiguration.

§ Für schnelles Prototyping erlauben diese Plattformen einen einfachen und meist kostenlosen Einstieg.

Begrüßungsbildschirm bei Ubidots

Warum mehr investieren, wenn der Kunde genau nur diesen einen Scatter-Plot braucht?

„Open Data“ bei OpenSensors

Hübsch, aber eben nicht anpassbar

OpenSensors mit Node-RED

§ Vorteil: Bequeme Integration eigener und öffentlicher Daten.

§ Nachteil: Datentransfer und Compute nicht auf der Plattform.

IoT-Mashups sind durchaus eine Lösung – manchmal

Heimautomatisierung mit Thingspeak

zu Bewundern bei Masanori Fujita, Director Solution Center IoT bei Zühlke

Sensoren

Arduino

Raspberry Pi

Photovoltaik

Datenlogging auf Twitter

Sensoren

Arduino

Raspberry Pi

Photovoltaik

Entscheidungen, Entscheidungen, ...

Masa, warum hast Du eigentlich Thingspeakausgesucht?

Weil es eine sehr einfache Möglichkeit war, Visualisierung zu bekommen.

Und wie kriegst Du die Daten da rein?

Die Protokoll-Frage!

Streiten über die wichtigste Nebensache im IoT.

Begriffsklärung

Physikalische Ebene:Hardware und wie die Information physikalisch übermittelt wird

Logische Ebene:Wie die Information verpackt wird und zu ihrem Ziel findet

Architektur der Lösung

Informations-Architektur

Physikalische Ebene

Funk-/Bus- Kommunikation mit einem immer verfügbaren lokalen Gateway

Funkkommunikation der Devices mit einem temporären/mobilen Gateway

§ zum Gerät: BLE§ zur Plattform: Mobilfunk, WiFi

§ zum Gerät: klassiche Field-Bus-Systeme, ZigBee, LoRaWAN, 6LoWPAN, etc.

§ zur Plattform: Ethernet, (V)DSL, Mobilfunk

OSI-Layer 1-3

Logische Ebene

Web-Protokolle

OSI-Layer 4-7

IP (v4, v6)TCP, UDP, TLS/SSL

Application Layer

IoT-Protokolle

HTTP, HTTPS, Sockets MQTT, CoAP, AMQP, XMPP, OPC UA

XML

HTTP

TLS

TCP

raw

CoAP

DTLS

UDP

riesiger overhead

lesbarer Text binär

wie TLS, aber robuster bei schlechter Verbindung

geschwätzig und redundant

„fire & forget“

Ist das akademisch oder wirklich praxisrelevant?

HTML+XML(wie bei Thingspeak) CoAP+Rohdaten

Ein schwergewichtiges Protokoll kann viel –erzwingt manchmal aber auch eine gewisse Hardware

OPC UA

zu teuer für Standard-Haushaltsgeräte

wäre aber praktikabel mit einem Gateway

Hypothetisches Beispiel:

Andersherum geht es auch: ein passendes Protokoll für jede Leistungsklasse

leistungsstarker Rechnerpermanente Verbindung

leistungsschwacher Rechnertransiente, n 1 schnelle Verbindungen

leistungsschwacher Rechnersporadische, langsame Verbindung

AMQP

MQTT

CoAP

Andere Leistungsmerkmale bei IoT-Plattformen in diesem Zusammenhang

• Verwaltung von Geräten und Gerätestatus (Batterie, online, „last seen“, ...)

• Logische Organisation von Geräten passend zur Topologie (Standorte, funktionelle Gruppen, „Topics“, ...)

• unterstützte Protokolle für die Anbindung der Geräte

• Libraries oder Komponenten für die Device-Seite (z.B. Microsoft bietet SDKs für den Azure IoT Hub an)

BenutzerPlattform

andere Dienste

Wie generiert man Mehrwert?

API?

Visualisierung?

§ Datenverarbeitung?§ in Echtzeit?

Predictive Maintenance mittels großer Datenmengen und Machine Learning

Es kommt auf die Daten an, und was mit ihnen geschehen soll...

ü Verarbeitung in der Plattformü idealerweise in Echtzeit

Das Verschieben in eine andere Infrastruktur zum Zweck der Verarbeitung sorgt für unnötigen Datenverkehr. Im Zweifelsfall geht die Nachricht „Besser abschalten!“ schneller über die Leitung als die Rohdaten.

Es kommt auf die Daten an, und was mit ihnen geschehen soll...

Statusmeldungen und Kontrolle und in einer App für Endkunden.

ü Zugriff der App über APIü Device-spezifischer API-Keyü Plattform muss „unsichtbar“ sein

Für den Endkunden sollte die Plattform komplett transparent sein. Beim Versuch die API-Kommunikation zu entschlüsseln sollte der Endkunde maximal Kontrolle über sein eigenes Gerät erhalten können.

Es kommt auf die Daten an, und was mit ihnen geschehen soll...

Übersichtsdiagramme und Analysen in externen Business Intelligence-Programmen

ü Konzeption und Anzeige von Dashboards

ü einfacher Export von Datenü Benutzer sollte Konfiguration nicht

versehentlich editieren können

Der Benutzer braucht hier eine intuitive Oberfläche für das Erstellen von Grafiken und die Option, ausgewählte Daten in einer lokalen Umgebung zu speichern.

Bequemlichkeit ist ein valider Punkt, sich für eine Plattform zu entscheiden.

ü Prototyping und PoCsind damit schnell gemacht.

Aber: In beiden Fällen ist man zur Benutzung der dedizierten Plattform gezwungen!

Manche Plattformen bieten einen einfachen Zugang zum Massenmarkt

Hier haben Sie mit der Software nichts mehr zu tun: Die Integration erfolgt über die Hardware.

115 Millionen Events am Tag.

Allerdings ist der Massenmarkt auch anfällig für Befindlichkeiten!

„Werden meine Daten auch nur in Deutschland gespeichert?“

„Ist das aber auch GARANTIERT sicher?“

Die Festlegung auf einen Standort sowie die vollständige Kontrolle über den Datenfluss haben Sie nur mit einer PaaS-Lösung.

Zusammenfassung

Das Feld der IoT-Plattformen ist riesig und wird mittelfristig eher noch undurchschaubarer.

Sollte eine Software-as-a-Service –Lösung für Sie in Frage kommen, kann man gut nach dem Ausschlussprinzip vorgehen.

Für geschäftskritische Anwendungen wird man oft nicht um die Anpassung einer Platform-as-a-Service –Lösung herumkommen.

Zühlke kann Ihnen bei der Bedarfsanalyse und Implementierung helfen.

Danke für Ihre Aufmerksamkeit! Dr. Boris Adryan

@BorisAdryan

[email protected]

Bitte beachten Sie auch unseren IoT-Workshopam Freitag!