AzureAzure IoT WorkshopReal-time asset trackingBenjamin Cabé // @kartbenPrincipal Program ManagerAzure IoTNov. 3, 2019
AgendaIntroducing the problem – Contoso Art ShippingTypical IoT architectureHands-on labsGoing furtherFollow along at: http://aka.ms/iot-workshop/asset-tracking
Introducing the problem
ContosoMonitoring of high-value parcelsfor international company Contoso Art Shipping
Problem statement (1/3)Contoso’s goods are getting tampered, ruined in transitIncreased customerdissatisfactionIncreasedinsurance claimsLosing customers,revenueHigh personnel coststo follow-up on claims
Problem statement (2/3)Contoso lacksability to monitorGoods that are gettingtampered with during transportationIn-transit productconditionLocation of theparcels60%Nearlyof insuranceclaims for damaged art arerelated to its transport
Problem statement (3/3)Goodsgettingtamperedpackage is outfor deliveryContoso already has an ERPand mobile app in place forbasic tracking informationThey would like to enablereal-time tracking ofshipments
Contoso Art Shipping’s requirementsTrack in real-time the physical location and condition of their parcelsEfficiently store this data so that it can be accessed and queriedGet alerts when abnormal conditions are detected and visualize them on a mapIntegrate with their existing business applicationScale from a very small deployment to something much bigger bonus points if they can be supported by great developer tools
Architecture of an IoT solutionThingsInsightsActions
A More Realistic View Cloud-to-devicecommandsEnterprise integrationDevice recoveryData storageDeploymentBusiness process integrationCold path analyticsOperations monitoringSolution scaleInternationalizationCost managementHigh availabilityUpdating devicesTransport protocolsDevice lifecycleThingsDriversDisaster recoveryDevice updatesHW certificationWarm path analyticsInsightsHot path analytics ---- End-to-End Security ---- On device analyticsManufacturing scaleDevice commercializationSecuring dataProvisioningdevicesActionsData ownershipIndustry and government complianceData visualization and why IoT needs simplifying
Provisionand senddata fromdevices toCloudDevice ManagementThingsInsightsActions
Provisionand senddata fromdevices toCloudStream processing andrules evaluations over dataStore dataDevice ManagementThingsInsightsActions
Provisionand senddata fromdevices toCloudStream processing andrules evaluations over dataStore dataDevice ManagementIntegrate with Business processThingsInsightsActions
Configure and controlVisualize data and learningsProvisionand senddata fromdevices toCloudStream processing andrules evaluations over dataStore dataDevice ManagementIntegrate with Business processThingsInsightsActions
aka.ms/iot-workshop/asset-trackingHands-on lab
Step 1 – Connecting a device to Azure IoTTrack in real-time the physical location and condition of their parcelsLearning goals: How to setup the messaging infrastructure for connecting your IoT devicesUnderstand basic security and device management conceptsExplore IoT Plug-and-Play conceptsDiscover VS Code IoT extensions and Azure IoT Explorer
Provisionand senddata fromdevices toCloudDevice ManagementThingsInsightsActions
IoT Hub and Device Provisioning ServiceDeviceProvisioning ServiceAzure IoT HubBi-directionalcommunicationEnterprise scale& integrationEnd-to-endsecurityIoT-scale automatedprovisioningMillions of DevicesBillions of messagesPer Device CertificatesZero-touch provisioningMulti-language, open sourceSDKsScale up and downPer Device Enable/DisableDeclarative Message RoutesTLS SecurityCentralize your provisioningworkflowFile UploadX.509 SupportLoad balance across multipleIoT HubsWebSockets & MultiplexingIP Whitelisting/BlacklistingRe-provisioning supportAzure MonitorShared Access PolicesSupports TPM X.509Azure Resource HealthFirmware/Software UpdatesConfiguration ManagementAzure Security Center SupportHTTPS/AMQPS/MQTTSSend TelemetryReceive CommandsDevice ManagementDevice TwinsQueries & Jobs
IoT Device LifecycleReplace or decommissiondevices after failure, upgradecycle or service lifetimeMonitor device inventory,health & security whileproviding proactiveremediation of issuesRETIREPLANMONITORGroup devices and control accessaccording to your organization'sneedsREGISTERCONFIGUREProvide updates, configuration & applicationsto assign the purpose of each deviceSecurely authenticate devices,on-board for managementand provision for service
IoT Device LifecycleReplace or decommissiondevices after failure, upgradecycle or service lifetimeMonitor device inventory,health & security whileproviding proactiveremediation of issuesRETIREPLANMONITORGroup devices and control accessaccording to your organization'sneedsREGISTERCONFIGUREProvide updates, configuration & applicationsto assign the purpose of each deviceSecurely authenticate devices,on-board for managementand provision for service
Quick orientationProvisioninghappensherePower BIWeb/Mobile AppDevicesStorage blobsCosmosDBBack endsystems andprocessesIoT HubStreamAnalyticsEvent Hub* Azure MLWeb JobsLogic Apps
What is provisioning?RegistrationConfigurationProvisioning
Why provisioning is hard today
Azure IoT Hub Device Provisioning ServiceSimplify with zero touch provisioningMinimize manual connection requirementsCross-geo provisioning supportDPSIoT Hub USIoT Hub JapanIoT Hub IndiaMultitenancy supportEnhanced securityFor any device compatible with IoT HubDPS knows exactly which IoT Hub to connect and provision
An IoT device’s relationship to DPS
High level provisioning1. Asks for hubDevice4. Returns hub2. Creates IDDPS5. Connects3. Returns IDIoT hub
IoT Plug and Play In Platform ContextCapability ModelRepository(Optional)IoT DeviceInterfaceD2CMessage RoutesTelemetryC2D/MethodsPropertiesDevice TwinCommandsCustomSolutionInterfaceD2CIoT EdgeIoT DeviceIoT EdgeIoT DeviceMessage RoutesTelemetryC2D/MethodsPropertiesDevice TwinCommandsInterfaceD2CMessage RoutesTelemetryC2D/MethodsPropertiesDevice TwinCommandsAzureIoT Hub & DPSAzure IoTCentral
Where are capability models stored?Device sends capability model ID and version expected for the solution to knowIf unknown, the following are the model retrieval options for the solution:
IoT Plug and Play ns.comCapability model and interface workspace and publishingrepository experiencePublishing integrated in VS Code and Azure CLI for bothinterfaces and capability modelsAutomated validation, collision checks and versioning supportSearch, filter, sort, view models & their graphs in modelrepository UXWorks out-of-the-box with any Azure IoT solutionWill be made available as an open-source projectMicrosoft will also host a fully managed, multi-tenant instancefor always up-to-date for Azure Certified devices; integratedinto certification flow
CapabilityModelDeveloperTooling
Easy to modeldevicecapabilities, easyto generatedevice softwareskeletonDevices that justwork out of thebox with no coderequiredDeviceCapabilityModelJSON-LDSchemaEasy to certifyplug and playdevicesEasy forcustomers andpartners to findplug and playdevices that justworkGenerated Device AgentAzure IoT Device SDKEasy to developdevice softwareand ensure it justworks with IoTsolutions
IoT Hub, DPS, PnPStep 1 – etup IoT Hub and DPSConfigure asset tracking deviceExplore capabilities thanks to PnP
Step 2 – Setting up an IoT data pipelineEfficiently store this data so that it can be accessed and queriedLearning goals: How to implement short-term and long-term retention using Azure Time Series InsightsHow to use TSI built-in data explorer to perform data analytics
Provisionand senddata fromdevices toCloudDevice ManagementThingsInsightsActions
Provisionand senddata fromdevices toCloudStream processing andrules evaluations over dataStore dataDevice ManagementThingsInsightsActions
What is Azure Time Series InsightsA Fully Managed Platform as a Service (PaaS) Solution Built for IoTFully managed, end-to-end PaaSsolution to ingest, process, store,and query highly contextualized,time-series-optimized, IoT-scaledataConnect to a variety of datasolutions using TSI’s flexible dataplatformUse rich analytics APIs and UX forad-hoc exploration and operationalintelligenceUse JavaScript control library forbuilding custom analytics apps onthe TSI platform
IoT Data extualizationOften used withother dataInfiniteretention
Canonical IoT Data PipelineNotifyOperatoror SystemExplore andmonitorPerformoperationalanalysisModels forlearning &predictionsCOLLECTPROCESSSTOREANALYZECollect time series datacoming from differentsources, formats & ratesParse, Normalize,Enrich, TransformStore in multi-layered(hot, warm, cold) timeseries data storeoptimized for analysisRun ad-hoc queries for monitoringOperationalize using asset-based analysisUse models for machine learninginference and make predictions
Azure Time Series Insights
Time Series InsightsStep 2 – etup TSI environmentSetup event sourcesExplore data
Step 3 – Anomaly detectionGetting alerts when abnormal conditions are detectedLearning goals: How to extract insights from real-time IoT Data using Azure Stream AnalyticsHow to turn alerts into actionsHow to store alerts into Time Series Insights, alongside telemetry
Azure Stream AnalyticsIn a Nutshell
Unlocking Real-time Insights Time to Insight is Critical Reducing decision latency can unlock business value Insights are Perishable Window of opportunity for insights to be actionable Ask Questions to Data in Motion Can’t wait for data to get to rest before running computation
Real-time Stream Processing Simple Event Processing FilterTransformEnrichSplitRoute Event Stream Processing [Simple event processing] AggregateRules Complex Event Processing [Event Stream Processing] Pattern detectionTime windowsJoins & correlations
Scenario ExamplesReal-time Fraud DetectionStreaming ETLPredictive MaintenanceCall Center AnalyticsIT Infrastructure and NetworkMonitoringCustomer Behavior PredictionLog AnalyticsReal-time Cross Sell OffersFleet monitoring and Connected CarsReal-time Patient MonitoringSmart GridReal-time Marketingand many more
Streaming PipelineApplicationsArchiving for longterm storage/batch analyticsEvent HubsDevices &StreamAnalyticsGatewaysPowerBIIoT HubsReal-time dashboardBlobsAutomation tokick-off workflowsMachine LearningReference DataEventproductionEvent Queuing& StreamIngestionStreamAnalyticsStorage &Batch AnalysisPresentation &Action
Stream Analytics Query Language (SAQL)Declarative SQL like language todescribe transformations Filters (“Where”) Projections (“Select”) Time-window and property-based aggregates(“Group By”) Time-shifted joins (specifying time bounds withinwhich the joining events must occur)and all combinations thereofData ManipulationDate and TimeSELECTFROMWHEREHAVINGGROUP BYCASE WHEN THEN ELSEINNER/LEFT OUTER JOINUNIONCROSS/OUTER APPLYCAST INTOORDER BY ASC, DSCDateNameLenDatePart Day, Month, Year ateAddLower, dowing Scaling ExtensionsWITHPARTITION NSQUARESQRTGeospatial T DISTANCEST WITHINST OVERLAPSST INTERSECTS
Stream Analytics JobUsers construct and deploy jobs to ASAJob definition includes inputs, a query, and outputInputs are from where the job reads the data streamQuery runs for perpetuity unless explicitly stopped and transforms the input streamOutput is where the job sends the job results to
Azure Stream AnalyticsStep 3 – etup ASA jobCreate query to detect anomaliesVisualize anomalies in TSI
Step 4 – Map visualizationLearning goals: How to use Azure Maps web controlHow to combine Time Series Insights and Azure Maps web SDKsAdvanced Azure Maps features, e.g heatmap
Azure MapsOverview
What is Azure Maps?A collection of geospatial services for creating solutions that meetthe requirements of enterprise customers in their line of businessand consumer applications.Enterprise Ready Enterprise Scale Global Availability Web and Mobile SDKs Integrated with other Azure Services Maps updated weekly Traffic data updated every minuteTrusted Platform Azure Security Complaint Azure Active Directory Tenancy GDPR {Azure Privacy} Compliant Accessibility, Usability, Globalization and Localization CompliantCompetitive, Flexible Pricing Generous free limits Access Azure Maps with any Azure subscription (trial, pay as yougo, Enterprise Agreement) Multiple pricing tiers for your specific needs No upfront cost Only pay for what you use
Best of Breed Content PartnershipsMapsPoints of InterestGeocodingRoutingRoad networksTrafficMobility ServicesPublic Transit NetworksReal-time Transit dataMicro-mobility dataCurrent WeatherForecast WeatherWeather along route
A platform of geospatial APIs for the enterpriseMapsSDKsRoutingSearchSpatial OperationsRender maps and satelliteimagery across manygeographies in several stylesWeb and Android SDKs tointegrate Azure Maps intoapplicationsMulti-algorithmic routing,batch routing and matrixroutingFind addresses, points ofinterest, landmarks, using amultitude of searchalgorithms or in batchCreate Geofences, measuregreat circle distance, closestpoint and point in polygonTrafficTime ZonesGeolocationMobilityData StorageReal-time traffic flow andincident detail, measuringdistance to back or front ofthe lineObtain time zone and currenttime information from anylocationWeather servicesHistorical, Current and PredictedWeather Services with Radar andSatellite mapsQuery for the locationof an IP address(Public Transit)Get real time intelligence onpublic transit servicesPower BI integrationIntegration with Power BI w/ rich dataservice and more powerfulcapabilitiesHost your private map data inAzure MapsGov Cloud supportAzure Maps services availabilitythrough Azure Government Cloud
Microsoft’s messaging: Azure Maps/Bing MapsThe following is the official Microsoft messaging regarding Bing and Azure maps:Microsoft customers have a rich choice of options from which to sourcelocation and mapping data. Our guidance on which service to choosereflects the preference and status of a customer’s implementation oflocation data. For those enterprise customers already using (or looking touse) Azure, we would recommend they use Azure Maps. Similarly, we’drecommend customers who have a preference for TomTom mapping datato also turn to Azure Maps. For existing Bing Maps for Enterprisecustomers, if your current services are meeting your needs, we encourageyou to stay on your existing service. All customers should work with theirMicrosoft team to determine which of the services will best serve theindividual customer requirements for production grade, fully deployableservices
Azure MapsStep 4 – etup Azure Maps subscriptionUse Azure Maps and TSI SDKExplore Azure Maps REST API
Provisionand senddata fromdevices toCloudStream processing andrules evaluations over dataStore dataDevice ManagementThingsInsightsActions
Provisionand senddata fromdevices toCloudStream processing andrules evaluations over dataStore dataDevice ManagementIntegrate with Business processThingsInsightsActions
Configure and controlVisualize data and learningsProvisionand senddata fromdevices toCloudStream processing andrules evaluations over dataStore dataDevice ManagementIntegrate with Business processThingsInsightsActions
Logics Apps, Power AppsStep 5 – Live DemoRefine Stream Analytics jobLogicApps workflowPowerApps and CDS integration
IoT CentralA fully managed IoT application platform
What is an IoT Centralapplication template?App templates are tools to help solution builderskickstart their IoT solution developmentThey consist of:- Sample operator dashboards- Sample device templates- Simulated devices- Pre-configured rules and jobs- Rich documentation including tutorialsBrand templates using the white labeling featureSell to customers directly or through AppSourceYour brand, your SaaS
How do I build with IoT Central?Take Action-No-code/Low-code actions with Microsoft Flow and Logic AppsIntegrate IoT Insights-Continuous IoT data routing through Event Hub and Service Bus-Build data pipelines using the breadth of Azure ServicesBuild Solutions-IoT Central public APIs for device modeling, provisioning, lifecyclemanagement, operations (updating/commanding), and data querying
Going further
IoT Tech Communityaka.ms/iottechcommunityBlog postsNews & AnnouncementsWeekly recap
IoT Showaka.ms/iotshowAnnouncementsTech talks & Deep DivesDemosCustomer & Partner spotlights
Azure IoT Reference ArchitectureFoundationalComprehensiveReliableA foundational guide for how tobuild native cloud IoT solutions.Provides component descriptionsand tech recommendations.Make your subsystemsindependently scalable,maintainable, and deployable.Adjust for your skillset andsolution.Helps you start from patternsthat have worked with d you like to provide feedback? Do you have an idea or suggestion based on your experience with IoT?We would love to hear it! email AzureIoTRefArcVoice@microsoft.com
Web/ Mobile App Stream Analytics IoT Hub Web Jobs Logic Apps . Scenario Examples. Presentation & Action Storage & Batch Analysis Stream Analytics Event Queuing & Stream Ingestion Event production IoT Hubs Applications Archiving for long term storage/ batch analytics Real-time dashboard Stream Analytics Automation to kick-off workflows Machine .
AZURE TAGGING BEST PRACTICES Adding tags to your Azure resources is very simple and can be done using Azure Portal, Azure PowerShell, CLI, or ARM JSON templates. You can tag any resources in Azure, and using this service is free. The tagging is done on the Azure platform level and does not impact the performance of the resource in any way.
DE LAS UNIDADES PROGRAMA CURRICULAR UNIDAD 2 - Introduccion a los servicios de azure - Los servicios de Azure - Cómo crear un App Service en Azure - Administrar App Service con Azure Cloud Shell Azure UNIDAD 3 - Introduccion al Modulo - Regiones y centros de datos en azure - Zonas Geograficas en
Resource Manager and the Azure portal through Azure Arc to facilitate resource management at a global level. This also means a single vendor for support and billing. Save time and resources with regular and consistent feature and security updates. Access Azure hybrid services such as Azure Security Center, Azure Backup, and Azure site recovery.
students solve a variety of challenges faced in education through Microsoft Azure and the cloud. Azure for research staff Azure for teaching staff Azure for students Azure for academic institutions Azure is a powerful tool for research and education, and Microsoft provides a number of programs to meet the needs of academic institutions.
Gain Insights into your Microsoft Azure Data using Splunk Jason Conger Splunk. Disclaimer 2 . Deploying Splunk on Azure Collecting Machine Data from Azure Splunk Add-ons Use cases for Azure Data in Splunk 3. Splunk available in Azure Marketplace 4. Splunk in Azure Marketplace
SAP Cloud Platform Internet of Things Device Management Your Gateway System Environment Cloud Platform PaaSeg., HANA, Kafka, PostgreSQL App User Admin IoT Core Service IoT Message Management Service Your IoT Data IoT service IoT Gateway Edge Devices Device 1 Device 2 Device 3 IoT Gateway Cloud IoT Service Cockpit Send and receive
MINOR DEGREE IN INTERNET OF THINGS (IoT) (DRAFT SYLLABUS) Course Structure Sr. No. Semester Temp. Course Code Course Title L T P Credits 1. 3 IoT-1 Introduction to Internet of Things 3 0 2 4 2. 4 IoT-2 IoT Protocols 3 0 2 4 3. 5 IoT-3 IoT System Design 3 0 2 4 4. 6 IoT-4 Industry 4.0 and IIoT 3 0 2 4 5.
Open Data Application Programming Interface (API) for IoT Data in Smart Cities and Communities Y.FW.IC.MDSC Framework of identification and connectivity of Moving Devices in Smart City Y.IoT-DA-Counterfeit Information Management Digital Architecture to combat counterfeiting in IoT Y.IoT-Interop An architecture for IoT interoperability Y.IoT-IoD-PT