SlideShare a Scribd company logo
Cloud-grilled delights a high-
tech approach to perfect BBQ
JIMMY DAHLQVIST | Believe In Serverless 2024-05-
16
@jimmydahlqvist
JIMMY DAHLQVIST
Head of AWS @ Sigma Technology Cloud
Founder of serverless-handbook.com
AWS Community Builder | AWS Ambassador | User Group Leader
§
Hello, I'm
@jimmydahlqvist
Agenda
• Background / Problem
• Architecture overview
• Cloud deep dive
• Summary
Background / Problem
@jimmydahlqvist
Problem
Multi-probe thermometer
Wifi Connectivity
High / Low thresholds
Temperature trends / Stall
History
@jimmydahlqvist
BBQ
Low and slow
• Low even temperature for a long time
It’s an art form
@jimmydahlqvist
Smoker types
Ceramic – Kamado
UDS – Ugly drum smoker
Electric pellets
Offset
IoT enabled smoker
IoT device – v0.1
Architecture overview
@jimmydahlqvist
Components
+
AWS Cloud
+
IoT Device
@jimmydahlqvist
IoT Device
Software
AWS IoT Greengrass 2.0 - Core
Custom component
Hardware
Raspberry Pi 4 model B
2.5mm food probes
MCP3008 – AD converter
@jimmydahlqvist
IoT device software
First iteration
Python application
Updated over SSH
Connected directly to AWS IoT Core
@jimmydahlqvist
Components
+
AWS Cloud
+
IoT Device
@jimmydahlqvist
Cloud architecture
@jimmydahlqvist
Lesson learned
• IoT Rules as router
• Small objects in S3
• Hard to change data format
• Extending was a challenge
@jimmydahlqvist
Improvements
Cloud architecture
• Data transformation
• Event driven architecture
• Decouple services
IoT Device
• Software development lifecycle
• Log handling
• Configuration
IoT Device
@jimmydahlqvist
AWS Greengrass
Interact with AWS services
AWS provided components
• Log manager
Custom components
• Publish new versions of components
Support for AWS Lambda
Cloud deep dive
@jimmydahlqvist
Cloud architecture
• Reliably capture data
• Managed services
• No direct EventBridge
integration
Data service
Detection service
Notification service
Data augmentation service
IoT Core and SQS
@jimmydahlqvist
• Reliably capture data
• Managed services
• No direct EventBridge
integration
IoT Core and SQS
@jimmydahlqvist
Cloud architecture
Data service
Detection service
Notification service
Data augmentation service
@jimmydahlqvist
Data augmentation
• Data transform pattern
• Fetch data from DynamoDB
@jimmydahlqvist
Cloud architecture
Data service
Detection service
Notification service
Data augmentation service
@jimmydahlqvist
Detection service
• Threshold breaches
• Temperature trends
• The dreadful stall
@jimmydahlqvist
Cloud architecture
Data service
Detection service
Notification service
Data augmentation service
@jimmydahlqvist
Serverless and event-driven
Loosely coupled
Scale and fail independently
Cost effective
Extensibility
Highly available
Great BBQ?
I would say so
Takeaways and thoughts
@jimmydahlqvist
Choreography + Orchestration
Data storage service
Detection service
Notification service
Data transform service
@jimmydahlqvist
AWS StepFunctions workflow types
Standard workflow
• Long running - 1 year
• 2000 starts per second
• Pay per state transition
Express workflow
• Short running - 5 minutes
• 100k starts per second
• Pay for duration
@jimmydahlqvist
Express workflows
Express Workflows employ an at-least-once model for asynchronous invocation
@jimmydahlqvist
Create subscriptions
Creates coupling on the filter
Complex to add more targets
Changing the filter affect all
Coupling is on the event
Easy to add more targets
Filters can change independently
@jimmydahlqvist
Default bus
Avoid using the default bus for custom applications!
@jimmydahlqvist
Transform don’t transport
Use AWS Lambda to transform data, not transport.
Future and summary
@jimmydahlqvist
Next step
• Remove my own hardware (Inkbird IBT-6XS)
• Make it SaaS!!
• Blog posts and Open Source coming!
• Add camera support
• Train an ML model for detection
• Alexa integration
@jimmydahlqvist
Summary
• Building an IoT system
• Serverless and event-driven
• Get great BBQ with help of technology
B
B
@jimmydahlqvist
dahlqvistjimmy
https://serverless-handbook.com
https://jimmydqv.com

More Related Content

Similar to Cloud-grilled delights a high-tech approach to perfect BBQ

Serverless cloud architecture patterns
Serverless cloud architecture patternsServerless cloud architecture patterns
Serverless cloud architecture patterns
Jimmy Dahlqvist
 
Migrating Your Windows Datacenter to AWS
Migrating Your Windows Datacenter to AWSMigrating Your Windows Datacenter to AWS
Migrating Your Windows Datacenter to AWS
2nd Watch
 
Google Cloud Fundamentals by CloudZone
Google Cloud Fundamentals by CloudZoneGoogle Cloud Fundamentals by CloudZone
Google Cloud Fundamentals by CloudZone
Idan Tohami
 
AWS ECS and AWS Fargate demystified: run serverless containers
AWS ECS and AWS Fargate demystified: run serverless containersAWS ECS and AWS Fargate demystified: run serverless containers
AWS ECS and AWS Fargate demystified: run serverless containers
Jimmy Dahlqvist
 
Slide share device to iot solution – a blueprint
Slide share   device to iot solution – a blueprintSlide share   device to iot solution – a blueprint
Slide share device to iot solution – a blueprint
Guy Vinograd ☁
 
CloudFront 소개 및 데모 – 이수형 수석 (Solutions Architect), 아마존웹서비스코리아
CloudFront 소개 및 데모 – 이수형 수석 (Solutions Architect), 아마존웹서비스코리아CloudFront 소개 및 데모 – 이수형 수석 (Solutions Architect), 아마존웹서비스코리아
CloudFront 소개 및 데모 – 이수형 수석 (Solutions Architect), 아마존웹서비스코리아
Amazon Web Services Korea
 
Weathering the Data Storm – How SnapLogic and AWS Deliver Analytics in the Cl...
Weathering the Data Storm – How SnapLogic and AWS Deliver Analytics in the Cl...Weathering the Data Storm – How SnapLogic and AWS Deliver Analytics in the Cl...
Weathering the Data Storm – How SnapLogic and AWS Deliver Analytics in the Cl...
SnapLogic
 
Understand the Cloud - ebook by EBC Group
Understand the Cloud - ebook by EBC GroupUnderstand the Cloud - ebook by EBC Group
Understand the Cloud - ebook by EBC GroupAdam Flynn
 
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
Amazon Web Services Korea
 
Encrypting data in S3 with Stepfunctions
Encrypting data in S3 with StepfunctionsEncrypting data in S3 with Stepfunctions
Encrypting data in S3 with Stepfunctions
Jimmy Dahlqvist
 
CI/CD As first and last line of defence
CI/CD As first and last line of defenceCI/CD As first and last line of defence
CI/CD As first and last line of defence
Jimmy Dahlqvist
 
AWS Summit Auckland 2014 | Connecting the Cloud - Session Sponsored by Teleco...
AWS Summit Auckland 2014 | Connecting the Cloud - Session Sponsored by Teleco...AWS Summit Auckland 2014 | Connecting the Cloud - Session Sponsored by Teleco...
AWS Summit Auckland 2014 | Connecting the Cloud - Session Sponsored by Teleco...
Amazon Web Services
 
VMworld 2013: VMware NSX: A Customer’s Perspective
VMworld 2013: VMware NSX: A Customer’s Perspective VMworld 2013: VMware NSX: A Customer’s Perspective
VMworld 2013: VMware NSX: A Customer’s Perspective
VMworld
 
Cloud Technology Brief 2013 Q1 - Thailand
Cloud Technology Brief 2013 Q1 - ThailandCloud Technology Brief 2013 Q1 - Thailand
Cloud Technology Brief 2013 Q1 - Thailand
Aruj Thirawat
 
How Greenhouse Software Unlocked the Power of Machine Data Analytics with Sum...
How Greenhouse Software Unlocked the Power of Machine Data Analytics with Sum...How Greenhouse Software Unlocked the Power of Machine Data Analytics with Sum...
How Greenhouse Software Unlocked the Power of Machine Data Analytics with Sum...
Amazon Web Services
 
Module -1.pptx on cloud computing and analyt
Module -1.pptx on cloud computing and analytModule -1.pptx on cloud computing and analyt
Module -1.pptx on cloud computing and analyt
Arunnaik63
 
Unit 5 -MOVING APPLICATION TO CLOUD
Unit 5 -MOVING APPLICATION TO CLOUDUnit 5 -MOVING APPLICATION TO CLOUD
Unit 5 -MOVING APPLICATION TO CLOUD
MonishaNehkal
 
XCloudLabs- AWS Overview
XCloudLabs- AWS Overview XCloudLabs- AWS Overview
XCloudLabs- AWS Overview
sangam biradar
 
Road Map da Virtualização para Cloud Computing
Road Map da Virtualização para Cloud ComputingRoad Map da Virtualização para Cloud Computing
Road Map da Virtualização para Cloud Computing
Webcasts developerWorks Brasil
 
Microservices and Docker: Foundation for a New Generation of Applications
Microservices and Docker: Foundation for a New Generation of ApplicationsMicroservices and Docker: Foundation for a New Generation of Applications
Microservices and Docker: Foundation for a New Generation of Applications
TechWell
 

Similar to Cloud-grilled delights a high-tech approach to perfect BBQ (20)

Serverless cloud architecture patterns
Serverless cloud architecture patternsServerless cloud architecture patterns
Serverless cloud architecture patterns
 
Migrating Your Windows Datacenter to AWS
Migrating Your Windows Datacenter to AWSMigrating Your Windows Datacenter to AWS
Migrating Your Windows Datacenter to AWS
 
Google Cloud Fundamentals by CloudZone
Google Cloud Fundamentals by CloudZoneGoogle Cloud Fundamentals by CloudZone
Google Cloud Fundamentals by CloudZone
 
AWS ECS and AWS Fargate demystified: run serverless containers
AWS ECS and AWS Fargate demystified: run serverless containersAWS ECS and AWS Fargate demystified: run serverless containers
AWS ECS and AWS Fargate demystified: run serverless containers
 
Slide share device to iot solution – a blueprint
Slide share   device to iot solution – a blueprintSlide share   device to iot solution – a blueprint
Slide share device to iot solution – a blueprint
 
CloudFront 소개 및 데모 – 이수형 수석 (Solutions Architect), 아마존웹서비스코리아
CloudFront 소개 및 데모 – 이수형 수석 (Solutions Architect), 아마존웹서비스코리아CloudFront 소개 및 데모 – 이수형 수석 (Solutions Architect), 아마존웹서비스코리아
CloudFront 소개 및 데모 – 이수형 수석 (Solutions Architect), 아마존웹서비스코리아
 
Weathering the Data Storm – How SnapLogic and AWS Deliver Analytics in the Cl...
Weathering the Data Storm – How SnapLogic and AWS Deliver Analytics in the Cl...Weathering the Data Storm – How SnapLogic and AWS Deliver Analytics in the Cl...
Weathering the Data Storm – How SnapLogic and AWS Deliver Analytics in the Cl...
 
Understand the Cloud - ebook by EBC Group
Understand the Cloud - ebook by EBC GroupUnderstand the Cloud - ebook by EBC Group
Understand the Cloud - ebook by EBC Group
 
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
[AWS에서의 미디어 및 엔터테인먼트] 클라우드에서의 브로드캐스팅 서비스
 
Encrypting data in S3 with Stepfunctions
Encrypting data in S3 with StepfunctionsEncrypting data in S3 with Stepfunctions
Encrypting data in S3 with Stepfunctions
 
CI/CD As first and last line of defence
CI/CD As first and last line of defenceCI/CD As first and last line of defence
CI/CD As first and last line of defence
 
AWS Summit Auckland 2014 | Connecting the Cloud - Session Sponsored by Teleco...
AWS Summit Auckland 2014 | Connecting the Cloud - Session Sponsored by Teleco...AWS Summit Auckland 2014 | Connecting the Cloud - Session Sponsored by Teleco...
AWS Summit Auckland 2014 | Connecting the Cloud - Session Sponsored by Teleco...
 
VMworld 2013: VMware NSX: A Customer’s Perspective
VMworld 2013: VMware NSX: A Customer’s Perspective VMworld 2013: VMware NSX: A Customer’s Perspective
VMworld 2013: VMware NSX: A Customer’s Perspective
 
Cloud Technology Brief 2013 Q1 - Thailand
Cloud Technology Brief 2013 Q1 - ThailandCloud Technology Brief 2013 Q1 - Thailand
Cloud Technology Brief 2013 Q1 - Thailand
 
How Greenhouse Software Unlocked the Power of Machine Data Analytics with Sum...
How Greenhouse Software Unlocked the Power of Machine Data Analytics with Sum...How Greenhouse Software Unlocked the Power of Machine Data Analytics with Sum...
How Greenhouse Software Unlocked the Power of Machine Data Analytics with Sum...
 
Module -1.pptx on cloud computing and analyt
Module -1.pptx on cloud computing and analytModule -1.pptx on cloud computing and analyt
Module -1.pptx on cloud computing and analyt
 
Unit 5 -MOVING APPLICATION TO CLOUD
Unit 5 -MOVING APPLICATION TO CLOUDUnit 5 -MOVING APPLICATION TO CLOUD
Unit 5 -MOVING APPLICATION TO CLOUD
 
XCloudLabs- AWS Overview
XCloudLabs- AWS Overview XCloudLabs- AWS Overview
XCloudLabs- AWS Overview
 
Road Map da Virtualização para Cloud Computing
Road Map da Virtualização para Cloud ComputingRoad Map da Virtualização para Cloud Computing
Road Map da Virtualização para Cloud Computing
 
Microservices and Docker: Foundation for a New Generation of Applications
Microservices and Docker: Foundation for a New Generation of ApplicationsMicroservices and Docker: Foundation for a New Generation of Applications
Microservices and Docker: Foundation for a New Generation of Applications
 

More from Jimmy Dahlqvist

Building-resilient-serverless-workloads-Navigating-through-failure
Building-resilient-serverless-workloads-Navigating-through-failureBuilding-resilient-serverless-workloads-Navigating-through-failure
Building-resilient-serverless-workloads-Navigating-through-failure
Jimmy Dahlqvist
 
Serverless website analytics with Lambda@Edge
Serverless website analytics with Lambda@EdgeServerless website analytics with Lambda@Edge
Serverless website analytics with Lambda@Edge
Jimmy Dahlqvist
 
Building a serverless AI powered translation service
Building a serverless AI powered translation serviceBuilding a serverless AI powered translation service
Building a serverless AI powered translation service
Jimmy Dahlqvist
 
AI Powered event-driven translation bot
AI Powered event-driven translation botAI Powered event-driven translation bot
AI Powered event-driven translation bot
Jimmy Dahlqvist
 
Autoscaled Github Runners using StepFunctions
Autoscaled Github Runners using StepFunctionsAutoscaled Github Runners using StepFunctions
Autoscaled Github Runners using StepFunctions
Jimmy Dahlqvist
 
EventBridge Patterns and real world use case
EventBridge Patterns and real world use caseEventBridge Patterns and real world use case
EventBridge Patterns and real world use case
Jimmy Dahlqvist
 
re:Invent Recap Breakfast
re:Invent Recap Breakfastre:Invent Recap Breakfast
re:Invent Recap Breakfast
Jimmy Dahlqvist
 
CHAOS ENGINEERING – OR LET'S SHAKE THE TREE
CHAOS ENGINEERING – OR LET'S SHAKE THE TREECHAOS ENGINEERING – OR LET'S SHAKE THE TREE
CHAOS ENGINEERING – OR LET'S SHAKE THE TREE
Jimmy Dahlqvist
 
Road to an asynchronous device registration API
Road to an asynchronous device registration APIRoad to an asynchronous device registration API
Road to an asynchronous device registration API
Jimmy Dahlqvist
 
GitOps in action, powered by Alexa.
GitOps in action, powered by Alexa.GitOps in action, powered by Alexa.
GitOps in action, powered by Alexa.
Jimmy Dahlqvist
 

More from Jimmy Dahlqvist (10)

Building-resilient-serverless-workloads-Navigating-through-failure
Building-resilient-serverless-workloads-Navigating-through-failureBuilding-resilient-serverless-workloads-Navigating-through-failure
Building-resilient-serverless-workloads-Navigating-through-failure
 
Serverless website analytics with Lambda@Edge
Serverless website analytics with Lambda@EdgeServerless website analytics with Lambda@Edge
Serverless website analytics with Lambda@Edge
 
Building a serverless AI powered translation service
Building a serverless AI powered translation serviceBuilding a serverless AI powered translation service
Building a serverless AI powered translation service
 
AI Powered event-driven translation bot
AI Powered event-driven translation botAI Powered event-driven translation bot
AI Powered event-driven translation bot
 
Autoscaled Github Runners using StepFunctions
Autoscaled Github Runners using StepFunctionsAutoscaled Github Runners using StepFunctions
Autoscaled Github Runners using StepFunctions
 
EventBridge Patterns and real world use case
EventBridge Patterns and real world use caseEventBridge Patterns and real world use case
EventBridge Patterns and real world use case
 
re:Invent Recap Breakfast
re:Invent Recap Breakfastre:Invent Recap Breakfast
re:Invent Recap Breakfast
 
CHAOS ENGINEERING – OR LET'S SHAKE THE TREE
CHAOS ENGINEERING – OR LET'S SHAKE THE TREECHAOS ENGINEERING – OR LET'S SHAKE THE TREE
CHAOS ENGINEERING – OR LET'S SHAKE THE TREE
 
Road to an asynchronous device registration API
Road to an asynchronous device registration APIRoad to an asynchronous device registration API
Road to an asynchronous device registration API
 
GitOps in action, powered by Alexa.
GitOps in action, powered by Alexa.GitOps in action, powered by Alexa.
GitOps in action, powered by Alexa.
 

Recently uploaded

ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 

Recently uploaded (20)

ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 

Cloud-grilled delights a high-tech approach to perfect BBQ

Editor's Notes

  1. Hi! I'm Jimmy! I have worked with AWS and severless since 2015, almost a decade now, and I have seen all kind of strange things. I’m a true serverless enthusiast, the very first solution I built on AWS was serverless and I have not looked back since. I have built serverless solutions for a variaty of companies, from startups to large enterpices. I'm the founder of serverless-handbook.com where you can find all kind of serverless things that i have built, ranging from workshops to small architecture patterns. And I have my blog on Jimmydqv.com As a day-time job, and yes, I do have a daytime job, I know people have been questioning that. I work as Head of AWS at Sigma Technology Cloud, we are an advanced services partner with AWS and do all kind of fun solutions. If you like to know more about us, visit our booth outside.... I'm AWS Ambassador, AWS Community Builder and one of user Group leader for the Scania user group.
  2. So the agenda for the day is: Background to the project Overview of the architecture and how it has evolved over time Cloud deep dive and – talk about changes I made and the benefits of that Summary – and final thoughts Before we dive into everything, who am I?
  3. Let’s jump into the background so we all have the same context.
  4. What is ? Low & Slow – Vs hot and fast I normally target ~120-125c – Reason for doing that is….. Tenderize, tissue breakdown Styles – Us (varies by state, Texas, Tenesee, Nort caroline, New york…), Jamaica, Austrailia, UK – Sweden most US styles Not cooking – Art! But doesn’t mean we can’t use Tech…..
  5. Audience Poll!! Kamado ? UDS? Electric ? Offset ?
  6. My offset smoker – Isn’t she a beuti! How does an offset work + IoT Device – ANIMATION IoT Device – Watch fire, help from technology, What does it do!!
  7. This is an overview of the IoT Device and the food probes I use, standard 2.5mm thermistor probes. What is a Thermistor? Negative Temperature Coefficient (NTC) Thermistors NTC thermistors exhibit a rapid decrease in resistance with an increase in temperature. NTC is used Positive Temperature Coefficient (PTC) Thermistors PTC thermistors exhibit a sharp increase in resistance with an increase in temperature
  8. Background and context done Let’s look at the components, and architecture
  9. Two parts – IoT device + cloud Example services for both CLICK!!! Let us take a closer look at the IoT Device
  10. Two parts – HW + SW HW: Rasp-Pi 4 2.5mm food probes – thermistor! MCP3008 (10bit 8 channel)– AD converter – read voltage SW: AWS IoT Greengrass 2.0 – Core Custom component – math voltage to temp
  11. Initialy simple Python app updated over SSH Problems – Logs and Hard to update
  12. Done – Looked at IoT device CLICK Let’s talk about Cloud – where we will spend most of our time
  13. First version of cloud looked like this… Happy little man to the left I guess is me… Device data -> IoT Core IoT Core -> Rules -> Storage + Athena + Dynamo IoT Core -> Rules -> Several SF business logic (thresholds, trends…) API GW RESTful…
  14. IoT rules as router –> on mqtt –> not on payload –> messages discarded in business logic Each event –> one OBJECT in s3 –> Glue/Athena not optimized for that Data written directly to storage (Storage First is good but…) –> Format dictated by the device –> need transform Hard to extend –> Several services did same thing –> notification –> or needed to implement API
  15. So I had a couple of areas that I wanted to improve. I wanted to add the possibility to do a proper ETL and data transformation. So it would be easy to change how data is stored and presented in the cloud withour having to change the device, Introduce a event driven architecture with EventBridge as the event router instead of relying to heavily on rules in IoT core. The rules are great but at this point they didn’t really fulfill what I wanted to accomplish. Lastly decouple the services. Break the mini-monolith... All changes was to create a more flexible system that was easy to extend and manage.
  16. Let’s start by looking at the changes made for the IoT device
  17. With the Initial problems I decided to test out Greengrass. Interact with AWS Services – s3 config etc AWS provided components – Log Manager Build SW as components - Easy to push and publish new versions AWS Lambda support
  18. Now we move over to the cloud part what was done there
  19. Second iteration several improvments. IoT Core no longer primary message router -> EventBridge introduced -> EventDriven architecture -° Rules / targets / subscription Business Logic -> Microservice pattern – with clear responsibility -> Communicating over EB and API Transformation service -> EB Transform / augemnt EB – PayLoad filtering
  20. Let’s take a closer look at some parts of the architecture….. And start with the ingress part…… CLICK! -> Animate Favorite pattern – Storage First Create reliable way to capture data – prevent data loss Use managed services Very powerful when incoming data doesn’t require instant transformation
  21. Lambda is probably not the best solution……
  22. The next part we should look at is the data augmentation CLICK This part became very important in the new design… CLICK
  23. ….. It allowed me to decouple cloud development from device development Data transform pattern Data augmentation -> Additional information fetched from DynamoDB. Data is transformed to an internal format -> Decouple from the IoT device Almost no code. StepFunctions integration to other services
  24. One of the most important services are the detection service CLICK This is where all the BBQ magic happens….. CLICK
  25. Threshold breach Trends Stall – Happens around 70c (160f). What is it?
  26. Next part to look at is actually the entire system. CLICK!! Everything is built on a serverless and event-driven approach.
  27. Reason You build an serverless and eventdriven architecture. Loosely coupled services Scale and fail independently Cost effective – pay for what you use Extensibility – easy and fast to extend HA – built in
  28. So have technology help me to become a better pitmaster and to get some great BBQ? Some may say it’s cheating but why not use tech to help?
  29. …. I let the result speak for it self!
  30. EventBridge Choreographs Four bounded contexts represented by each service (orchestrated) Stepfunctions The service has unique business logic that need to be implemented and happen in a certain order, when a event is invoked.
  31. StepFunctions Express Workflow has an invocation model of “At least once” which means that it’s possible that your workflow get invoked twice. In dev and test it’s unlikely that it will happen, even in my small project I never saw it. But if you run it in a large enough scale it will happen. So make sure your workload is idempotent and can handle it. This makes them ideal for orchestrating idempotent actions such as transforming input data and storing via PUT in Amazon DynamoDB.
  32. When building on eventbridge I would recommend that you create subscriptions. With that I mean that you create one event rule for one target. Even if EB support up to 5 targets per rule I still say this should be a 1-2-1 mapping. Why? If you create one rule with multiple targets you will create a coupling on the event filter. And if you hit the 5 target limit what are you suppose to do then? Create a second rule with the same filter and start adding new targets? What if you need to update the filter? You will impact several targets that might not be what you wanted to do in the first place, leaving you to start breaking things apart again. So instead we create subscriptions where we create the coupling on the event it self, and we set one target for one rule. It’s easy to add more target, just create a second rule and add the target to it. And the filter in every rule can change without affecting any other target. However…. This of course can lead to several rules having the same filter and that could create problems on it’s own. But in my opinion it’s still better to create subscriptions and deal with a rule explosion.
  33. there is a default EB bus in the region already existing that AWS services post events to. Should you use that as your bus in your application? My recommendation is NO. Leave that bus to be used by AWS services and create your own custom buses for you application. The reason for that is that in that case will become easier to extend and ass busses later. I have seen the default bus being used and the mess it was when then moving to a custom bus. So can’t repeat it enough… Leave the default bus alone! Create custom buses! It’s like using the default VPC…. We don’t do that either!
  34. So instead of using SQS + Lambda to transport. It would be possible to have IoT Core invoke a Express StepFunction with only one step which would be a SDK integration and that integration would just post the event to EB. No code, only 100% managed AWS services doing all of the work for me behind the scene. That is a really nice way to be able to use the SDK integration in StepFunctions. This wcould however break my storage first approach, but since there is no code involved, just AWS calling the SDK on my behalf I could totally live with that. It truly show the power and flexibility in a serverless approach and a service like AWS StepFunctions.
  35. So what is next in this project then?
  36. So to summarize the last 40 minutes. Building an IoT system Serverless and event-driven Get great BBQ with help of technology And with that I say! CLICK!!