Cloud Futures 2011 - microsoft.com · Cloud Futures 2011 Christopher Alme, Christopher Nunu Dennis...

Post on 06-Aug-2020

7 views 0 download

Transcript of Cloud Futures 2011 - microsoft.com · Cloud Futures 2011 Christopher Alme, Christopher Nunu Dennis...

Cloud Futures 2011

Christopher Alme, Christopher Nunu Dennis Qian, Stanley Roberts

Stephen Wong

Uncharted Skies: Streaming Cloud

Real time data streams ground cloud

Process data in the cloud

Stream the results back to the ground

Huge parallel processing capability

Elasticity dynamic configurability!

Cloud Futures

2010

Practical Uses Air/Auto Traffic Control

Environmental Sensors

Inventory Tracking

Surveillance

Home Automation

Initial Project Motivations

Interactive Art

Dynamically changing inputs, incl. game controllers

Scalable number of users

Multiple, simultaneous results visualizations

The Team 4 students in semester-long software-

engineering project

No initial experience in C#, .NET, Azure, enterprise systems, etc.

Self-organized and self-directed team created and assigned own tasks.

Discovery process: Make mistakes and learn from them.

User Experience: The Ground Connect Streams to the Cloud

Manage Processing of Streams

Visual Representation of Results

Architecture: The Ground

Control Panel

Cloud Settings Options Status

Stream Mgr

Stream

Stream

Stream

Stream Up Stream Mgr

Stream

Stream

Stream

Stream Up Stream Mgr

Stream

Stream

Stream

Stream Up

Display Visualization of Cloud Output

Stream Down Visual

Representation of Cloud Output

Display Visualization of Cloud Output

Stream Down

Stream Manager

• Provides a way for the user to connect streams up into the cloud

• Arbitrary number of running instances

• Dynamically add/remove Streams

• User Friendly

Display • Receives streaming output from the cloud

• Renders the output from the cloud

• Displays the results on a screen

• Arbitrary physical location

Control Panel

• Administration of cloud functionality

• How input streams are used in processing

• Coordinate the creation of processing graph

• Assigns display outputs to processed data.

Architecture – The Cloud Feature

Extractor Stream

Feature Extractor

Stream

Feature Extractor

Stream

Mixer

Mixer

Mixer

Mixer

Mixer

Stream Display Adapter

Stream Display Adapter

2-way

Mes

sage

Control Process

Stream Entry Processing of Streams

Stream Exit

State Repository

Control Process

• Creates the processing graph structure

• Provides user access to the cloud structure

• Manages fault tolerance

Feature Extractors

• Stream entry into the cloud

• Single Stream Number Crunching

• Converts streams into internal events

• Forwards events to proper Mixer

Mixers

• Given an arbitrary lambda

• Syncs and Processes Streams

• Linked to produce a graph of operations

Display Adapters • Stream exit point, connection to Display

• Converts the processing results to Visualization commands

• Different adapters can be set to produce different results

State Repository • Shared database

• Stores processing graph configuration data

• Allows for re-creation of lost module/connection

Demo Structure Stock value

Level

Gesture & Button Detect

Buy

Sell

Display Out

Filter

Real-time challenges in the Cloud

Reconstruction of lost modules

Modules are not identical!

TCP timeout Azure does not assume persistent connections!

Lost Connections Azure load balancer can’t make specific connection.

Dev Fabric Isolation Doesn’t allow outside connections

Questions?

Into the Blue was supported by

Thank-you for enabling us to take flight!