SlideShare une entreprise Scribd logo
1  sur  41
Serverless Platforms
Diptanu Choudhury

@diptanu
1
QCon New York
InfoQ.com: News & Community Site
• 750,000 unique visitors/month
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• News 15-20 / week
• Articles 3-4 / week
• Presentations (videos) 12-15 / week
• Interviews 2-3 / week
• Books 1 / month
Watch the video with slide
synchronization on InfoQ.com!
https://www.infoq.com/presentations/
serverless-scientific-computations
Presented at QCon New York
www.qconnewyork.com
Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
2
The GOES Mission
A lineage of geostationary satellites
Current mission is called GOES-R
ABI views earth with 16 different spectral bands
GOES-R Products
• Atmospheric events
• Fire control
• Vegetation Monitoring
• NASA makes most of the data available to
research community
5Product Development Workflow
6Product Development Workflow
Iterative Experimentation

based Model Development
Deployment of Models 

in Production and 

Image Processing
Data serving 

and 

Collaboration APIs
7The organization
Science Engineering
• Plans mission objectives
• Develop models and products
• Conducts research and drives collaboration
• Operates infrastructure to run models
• Design systems to scale to petabytes of data and 10s

of 1000s of cores.

• Design real time services for services to consume data
• Dev-Infra to improve productivity of researchers
Infrastructure
• Cluster Schedulers that can scale to 10s of 1000s of cores
• Storage services that can scale to petabytes of data
• Interactive batch processing systems
• Services to stream real time information
• APIs to access data from various transformation jobs
9
Job Management
System
Authorization/
Authentication
Service
Identity
Management
Telemetry System
Compute
Node
Compute
Node
Object Store
Jobs
10
Infrastructure Stack of Circa 2017
Locking and Co-ordination Management
Cluster Schedulers
Block Storage
Service
Discovery
Telemetry
Services
Object Store
Microservices
Batch
Processing
LBaaS
Identity
Management
Tracing Services
Applications
The Platform
Platforms as a Service
Locking and Co-ordination Management
Cluster Schedulers
Block Storage
Service
Discovery
Telemetry
Services
Object Store
Microservices
Batch
Processing
LBaaS
Identity
Management
Tracing Services
Applications
Release Management
Build Infrastructure
Configuration Management
13
Serverless Architecture
Serverless Architecture
Function
ControllerRequests
Application
Logic
Application Container
Payload
Serverless Architecture
• Incremental evolution over PAAS
• Serverless from the perspective of users
• Clear separation of concerns between
infrastructure engineering and application
developers
Serverless Platform
• Optimistically concurrent Cluster Scheduler
• Application Container
• Function Controller
• RPC Middleware
• Function Invocation shims in data sources
• Packaging and distribution service
Cluster Scheduler
• Low latency and high throughput scheduling
• No head of line blocking
• Optimistically concurrent
• Scale up to a large number of containers
18
19
THE PATH TO PRODUCTION FOR A SCHEDULER IS FILLED WITH PAIN
CHOOSE AN EXISTING SCHEDULER IF YOU CAN
Event Driven Scheduler
Evaluations ~= State Change Event
Data Model
22
External Event
Evaluation Creation
Evaluation Queuing
Evaluation Processing
Optimistic Coordination
State Updates
Templated Jobs
• Can be used for low throughput use cases
• Expensive to start new processes
• Bounded by network operations of scheduler
Variability
• Sharing resources
• Daemons
• Global resources
• Maintainance activities
• Queuing
• Power Limits
25
Source: Tale at Scale
Reduce Variability
• Differentiate service classes
• Break down long running functions into small ones.
• Minimize background activity
Application Containers
• Application containers range from language sandboxes
to full blown containers
• Reduced surface area helps in making the UX better
• Application containers have function invocation
middleware which are packaged during build
Function Controller
• Maintains the network topology of functions
• Optimizes for low latency and not cost
• Works with the scheduler to scale containers
• Works with telemetry system to scale underlying
clusters
Software Load Balancer
• Service discovery aware LB
• Reactive Socket protocol for delivery of request payloads to
function containers
• Doesn't effect container life cycles
• Drops requests which doesn't have any containers associated
Reactive Sockets
• RSocket is a means for asynchronous communication between functions and
data sources
• Messages are multiplexed over a single connection
• Flexible interaction models
• Provides mechanisms for back pressure and request cancellation
RPC Middleware
• RPC implementation moved into the platform
• Hedged requests to reduce tail latency
• Tied requests to reduce mean and tail latency
• Heavy use of back pressure
Cluster Topology
• Scheduler chooses the cluster topology for containers
• Function Controller can change the topology based on
real time latency
• Functions which are chained needs to be placed as
close as possible
Caching
• Various forms of caching
• Depends on life cycle management of functions
• External caches like Redis, Memcached works best
• Hard to use in-memory clustered caches like
Groupcache
External Data Sources
• Functions can read from external data sources just like
traditional applications
• Avoid polling external data sources
• Data Sources like Kafka could co-operate with functions by a
shim which calls functions with data mutations
Build and Distribution
• Packaging is part of the server less experience
• Packaging pipeline should transform a function to an
application container.
• Unit Testing should be much easier with Functions than
they were for traditional applications
• Performance of the platform can be improved by caching
containers on compute nodes
Operations in the world of Serverless
• Reduced amount of operations for developers
• Metrics related to various concerns of the platform should
be very targetted.
Application metrics
• Latency at the API Gateway level
• Throughput of events processed
• Latency distribution and planning.
Platform Metrics
• Latency of function invocation
• Throughput of events dispatched to the
platform
• Number of active functions
Watch the video with slide
synchronization on InfoQ.com!
https://www.infoq.com/presentations/
serverless-scientific-computations

Contenu connexe

Plus de C4Media

Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDC4Media
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine LearningC4Media
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at SpeedC4Media
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsC4Media
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsC4Media
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerC4Media
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleC4Media
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeC4Media
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereC4Media
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing ForC4Media
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data EngineeringC4Media
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreC4Media
 
Navigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsNavigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsC4Media
 
High Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechHigh Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechC4Media
 
Rust's Journey to Async/await
Rust's Journey to Async/awaitRust's Journey to Async/await
Rust's Journey to Async/awaitC4Media
 
Opportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaOpportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaC4Media
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayC4Media
 
Are We Really Cloud-Native?
Are We Really Cloud-Native?Are We Really Cloud-Native?
Are We Really Cloud-Native?C4Media
 
CockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB: Architecture of a Geo-Distributed SQL DatabaseCockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB: Architecture of a Geo-Distributed SQL DatabaseC4Media
 
A Dive into Streams @LinkedIn with Brooklin
A Dive into Streams @LinkedIn with BrooklinA Dive into Streams @LinkedIn with Brooklin
A Dive into Streams @LinkedIn with BrooklinC4Media
 

Plus de C4Media (20)

Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CD
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine Learning
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at Speed
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep Systems
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.js
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly Compiler
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's Edge
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home Everywhere
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing For
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data Engineering
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
 
Navigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsNavigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery Teams
 
High Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechHigh Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in Adtech
 
Rust's Journey to Async/await
Rust's Journey to Async/awaitRust's Journey to Async/await
Rust's Journey to Async/await
 
Opportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaOpportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven Utopia
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
 
Are We Really Cloud-Native?
Are We Really Cloud-Native?Are We Really Cloud-Native?
Are We Really Cloud-Native?
 
CockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB: Architecture of a Geo-Distributed SQL DatabaseCockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB: Architecture of a Geo-Distributed SQL Database
 
A Dive into Streams @LinkedIn with Brooklin
A Dive into Streams @LinkedIn with BrooklinA Dive into Streams @LinkedIn with Brooklin
A Dive into Streams @LinkedIn with Brooklin
 

Dernier

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Dernier (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Serverless Platform: Scientific Computation @Scale

  • 2. InfoQ.com: News & Community Site • 750,000 unique visitors/month • Published in 4 languages (English, Chinese, Japanese and Brazilian Portuguese) • Post content from our QCon conferences • News 15-20 / week • Articles 3-4 / week • Presentations (videos) 12-15 / week • Interviews 2-3 / week • Books 1 / month Watch the video with slide synchronization on InfoQ.com! https://www.infoq.com/presentations/ serverless-scientific-computations
  • 3. Presented at QCon New York www.qconnewyork.com Purpose of QCon - to empower software development by facilitating the spread of knowledge and innovation Strategy - practitioner-driven conference designed for YOU: influencers of change and innovation in your teams - speakers and topics driving the evolution and innovation - connecting and catalyzing the influencers and innovators Highlights - attended by more than 12,000 delegates since 2007 - held in 9 cities worldwide
  • 4. 2
  • 5. The GOES Mission A lineage of geostationary satellites Current mission is called GOES-R ABI views earth with 16 different spectral bands
  • 6. GOES-R Products • Atmospheric events • Fire control • Vegetation Monitoring • NASA makes most of the data available to research community
  • 8. 6Product Development Workflow Iterative Experimentation
 based Model Development Deployment of Models 
 in Production and 
 Image Processing Data serving 
 and 
 Collaboration APIs
  • 9. 7The organization Science Engineering • Plans mission objectives • Develop models and products • Conducts research and drives collaboration • Operates infrastructure to run models • Design systems to scale to petabytes of data and 10s
 of 1000s of cores.
 • Design real time services for services to consume data • Dev-Infra to improve productivity of researchers
  • 10. Infrastructure • Cluster Schedulers that can scale to 10s of 1000s of cores • Storage services that can scale to petabytes of data • Interactive batch processing systems • Services to stream real time information • APIs to access data from various transformation jobs
  • 12. 10
  • 13. Infrastructure Stack of Circa 2017 Locking and Co-ordination Management Cluster Schedulers Block Storage Service Discovery Telemetry Services Object Store Microservices Batch Processing LBaaS Identity Management Tracing Services Applications The Platform
  • 14. Platforms as a Service Locking and Co-ordination Management Cluster Schedulers Block Storage Service Discovery Telemetry Services Object Store Microservices Batch Processing LBaaS Identity Management Tracing Services Applications Release Management Build Infrastructure Configuration Management
  • 17. Serverless Architecture • Incremental evolution over PAAS • Serverless from the perspective of users • Clear separation of concerns between infrastructure engineering and application developers
  • 18. Serverless Platform • Optimistically concurrent Cluster Scheduler • Application Container • Function Controller • RPC Middleware • Function Invocation shims in data sources • Packaging and distribution service
  • 19. Cluster Scheduler • Low latency and high throughput scheduling • No head of line blocking • Optimistically concurrent • Scale up to a large number of containers
  • 20. 18
  • 21. 19 THE PATH TO PRODUCTION FOR A SCHEDULER IS FILLED WITH PAIN CHOOSE AN EXISTING SCHEDULER IF YOU CAN
  • 22. Event Driven Scheduler Evaluations ~= State Change Event
  • 24. 22 External Event Evaluation Creation Evaluation Queuing Evaluation Processing Optimistic Coordination State Updates
  • 25. Templated Jobs • Can be used for low throughput use cases • Expensive to start new processes • Bounded by network operations of scheduler
  • 26. Variability • Sharing resources • Daemons • Global resources • Maintainance activities • Queuing • Power Limits
  • 28. Reduce Variability • Differentiate service classes • Break down long running functions into small ones. • Minimize background activity
  • 29. Application Containers • Application containers range from language sandboxes to full blown containers • Reduced surface area helps in making the UX better • Application containers have function invocation middleware which are packaged during build
  • 30. Function Controller • Maintains the network topology of functions • Optimizes for low latency and not cost • Works with the scheduler to scale containers • Works with telemetry system to scale underlying clusters
  • 31. Software Load Balancer • Service discovery aware LB • Reactive Socket protocol for delivery of request payloads to function containers • Doesn't effect container life cycles • Drops requests which doesn't have any containers associated
  • 32. Reactive Sockets • RSocket is a means for asynchronous communication between functions and data sources • Messages are multiplexed over a single connection • Flexible interaction models • Provides mechanisms for back pressure and request cancellation
  • 33. RPC Middleware • RPC implementation moved into the platform • Hedged requests to reduce tail latency • Tied requests to reduce mean and tail latency • Heavy use of back pressure
  • 34. Cluster Topology • Scheduler chooses the cluster topology for containers • Function Controller can change the topology based on real time latency • Functions which are chained needs to be placed as close as possible
  • 35. Caching • Various forms of caching • Depends on life cycle management of functions • External caches like Redis, Memcached works best • Hard to use in-memory clustered caches like Groupcache
  • 36. External Data Sources • Functions can read from external data sources just like traditional applications • Avoid polling external data sources • Data Sources like Kafka could co-operate with functions by a shim which calls functions with data mutations
  • 37. Build and Distribution • Packaging is part of the server less experience • Packaging pipeline should transform a function to an application container. • Unit Testing should be much easier with Functions than they were for traditional applications • Performance of the platform can be improved by caching containers on compute nodes
  • 38. Operations in the world of Serverless • Reduced amount of operations for developers • Metrics related to various concerns of the platform should be very targetted.
  • 39. Application metrics • Latency at the API Gateway level • Throughput of events processed • Latency distribution and planning.
  • 40. Platform Metrics • Latency of function invocation • Throughput of events dispatched to the platform • Number of active functions
  • 41. Watch the video with slide synchronization on InfoQ.com! https://www.infoq.com/presentations/ serverless-scientific-computations