3. A set of building blocks for handling user data and application resources, and
extensible components to build rich social applications and consumer experiences
Live Framework
Extensible components to build rich consumer services
Mesh Services – build applications that span across the web, devices, apps, and services
User – Mesh management and sharing resources across multiple users
o
Device – facilities for managing the collection of heterogeneous devices; relationship, status, security
o
Synchronization – data and metadata synchronization framework across applications, devices, and cloud
o
Application – facilities for managing the configuration, deployment, and versioning of applications
o
Identity Services – manage identities with associated services; delegated authentication
Directory Services – manage relationships between identities, data, devices, and apps
User-Data Storage Services – manage user-centric information; extensible data types
Communication and Presence Services – transport infrastructure for transient and persistent state
management between applications and devices
Search Services – facilities for building search capailities for web sites and applications
Geospatial Services – geocoding/reverse geocoding, routing, search, mapping data
Development Platform
Uniform way for programming Live Services from any platform, language, application or device
Exposes RESTful programming model for live resources
Protocol based – open standards usage: HTTP, XML, ATOM, RSS
Resource Model: unified model across Live
Symmetric client/cloud programming model
CRUD/Query, triggers and SPROC based interaction model
Libraries: Rich client libraries (.NET, Silverlight, JavaSript etc.)
4. “Internet Service Bus” architecture
Service Orchestration
Naming
Federated
Service Registry
Identity and
Access Control
Messaging Fabric
Clients On-Premises Cloud Services
Your
Service
ESB Compute
Storage
Desktop,
Desktop,
Desktop,
RIA, Web
RIA, Web
RIA, &
…
Billing
Corp Service
Web
5. Set of highly scalable, developer-oriented services that provide key building
blocks required by many cloud-based and cloud-aware applications
Service Bus
Exchange messages between loosely coupled, composite applications
Connectivity to on-premises applications; secure, federated firewall-friendly messaging; simple,
connected pub-sub eventing; extension of WCF
Federated namespace – shared, hierarchical, Internet-accessible URL
Service registry – publish service endpoints, lightweight, hierarchical, RSS-based discovery
Relay and connectivity – unicast/multicast datagram distribution, bidirectional sockets, request-
response messaging, pull-mode message delivery, Web service intermediary, WS-*/SOAP, REST
Access Control Service
Rules-driven application access control to users across organizations
Security Token Service (STS) – User name/password, Windows CardSpace, X.509 certificate, 3rd-
party STS-issued SAML token, WS-Security, WS-Federation
Each .NET Services solution has a private, isolated STS; backing identity infrastructure for all
services published within that solution’s Service Bus namespace
Claims-based rules-driven authorization – configured via claim mappings
Workflow Service
Model and execute business logic and service interactions
Reliable and scalable cloud runtime environment for user-defined declarative workflows
Extends Windows Workflow Foundation (.NET 3.5) to the cloud
Activities optimized for sending, receiving, and manipulating HTTP and Service Bus messages
Deploy, manage and track running workflow instances using tools and APIs
6. Cloud-based database service architecture
REST / REST / REST / REST / REST / REST / REST /
SOAP SOAP SOAP SOAP SOAP SOAP SOAP
SDS SDS SDS SDS SDS SDS SDS
Runtime Runtime Runtime Runtime Runtime Runtime Runtime
Data Data Data Data Data Data Data
Access Access Access Access Access Access Access
Lib Lib Lib Lib Lib Lib Lib
SQL SQL SQL SQL SQL SQL
SQL
Server Server Server Server Server Server
Server
Distributed Distributed Distributed Distributed Distributed Distributed
Distributed
Data Fabric Data Fabric Data Fabric Data Fabric Data Fabric Data Fabric
Data Fabric
Mgmt. Mgmt. Mgmt. Mgmt. Mgmt. Mgmt.
Mgmt.
Services Services Services Services Services Services
Services
7. Highly scalable and Internet-facing distributed database services in the cloud for
storing structured and unstructured data, and processing relational queries
SQL Data Services
Internet-facing database built on SQL Server relational database
Data storage – blobs, flexible, structured, birth to archival, multiple consistency levels
Data Processing – filters, aggregates, user-defined logic, online-offline indexing
Data Delivery – network proximity aware, locate closest static-content copies, spanning trees for
live-content, failure resiliency
Scalable, Flexible, Reliable, and Secure
High-availability database, scale as needed and without limits
Data partitions limited to single node on cluster – efficient replication and load balancing
Geo-replication and transactional consistency of data across multiple copies
Geo-location configuration helps protect against latency and improve response time
HTTPS/SSL support; built on SQL Server security infrastructure
Developer Agility
Standards-based interface and familiar language support
Access runtimes through standards-based interfaces and Web services – SOAP and REST
Perform CRUD operations with authorities, containers, and entities
Relational queries via text-based queries, LINQ, typed data in XML wire format
Simple filtering, retrieval of complete entities, full-text search, paging queries
Flexible data model, no schema required
9. Cloud services operating system that provides on-demand compute and storage
capabilities to host, scale, and manage applications
Compute Services
Scalable and reliable Web applications 64-bit hosting service in the cloud
.NET 3.5 SP1, managed/native code, ASP.NET, IIS 7, SOAP/REST/XML, Ruby, Python, PHP
Security supported by flexible Code Access Security policies
Small runtime API supports logging and local scratch storage
Storage Services
Simple data storage for cloud-based applications
Blobs & file streams, simple tables & caches, and queues; local and remote REST-based access
Geo-distribution and geo-replication
Authenticated access and triple replication
Management Services
Manage the applications, not infrastructure
Advanced tracing & logging – monitor compute, storage, and bandwidth
Dynamically upgrade applications without downtime
Resource usage and performance insights; monitoring & metering
Development Tools
Model and execute business logic and service interactions
Complete offline environment, including compute and storage services
Visual Studio add-in enables local debugging (Eclipse soon)
10. Application Patterns
Cloud Web Application
Web Mobile Silverlight WPF Enterprise
Browser Browser Application Application Application
User
Enterprise
Web Svc
Enterprise
Data
Jobs
ASP.NET Web Svc
ASP.NET ASP.NET ASP.NET
(Worker
(Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
Role)
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET Private Cloud
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
(Web Role) (Web Role) (Web Role) (On-Premise)
(Web Role) (Web Role) (Web Role)
Table Blob
Application
Cache Queue
Storage Storage
Service Service Service
Service Service
Windows Azure
Storage
Service
Application Application Reference Conn. Identities & Service
Data Data Data Bindings Roles Orch.
Identity
Service
Access
Service
SQL Data BI Workflow
Control
Services Services Service
Bus Service
SQLServices .NET Services Public Services
11. Application Patterns
Composite Services Application
Web Mobile Silverlight WPF Enterprise
Browser Browser Application Application Application
User
Enterprise
Web Svc
Enterprise
Data
Jobs
ASP.NET Web Svc
ASP.NET ASP.NET ASP.NET
(Worker
(Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
Role)
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET Private Cloud
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
(Web Role) (Web Role) (Web Role) (On-Premise)
(Web Role) (Web Role) (Web Role)
Table Blob
Application
Cache Queue
Storage Storage
Service Service Service
Service Service
Windows Azure
Storage
Service
Application Application Reference Conn. Identities & Service
Data Data Data Bindings Roles Orch.
Identity
Service
Access
Service
SQL Data BI Workflow
Control
Services Services Service
Bus Service
SQLServices .NET Services Public Services
12. Application Patterns
Cloud Agent Application
Web Mobile Silverlight WPF Enterprise
Browser Browser Application Application Application
User
Enterprise
Web Svc
Enterprise
Data
Jobs
ASP.NET Web Svc
ASP.NET ASP.NET ASP.NET
(Worker
(Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
Role)
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET Private Cloud
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
(Web Role) (Web Role) (Web Role) (On-Premise)
(Web Role) (Web Role) (Web Role)
Table Blob
Application
Cache Queue
Storage Storage
Service Service Service
Service Service
Windows Azure
Storage
Service
Application Application Reference Conn. Identities & Service
Data Data Data Bindings Roles Orch.
Identity
Service
Access
Service
SQL Data BI Workflow
Control
Services Services Service
Bus Service
SQLServices .NET Services Public Services
13. Application Patterns
Hybrid Enterprise Application
Web Mobile Silverlight WPF Enterprise
Browser Browser Application Application Application
User
Enterprise
Web Svc
Enterprise
Data
Jobs
ASP.NET Web Svc
ASP.NET ASP.NET ASP.NET
(Worker
(Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
Role)
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET Private Cloud
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
(Web Role) (Web Role) (Web Role) (On-Premise)
(Web Role) (Web Role) (Web Role)
Table Blob
Application
Cache Queue
Storage Storage
Service Service Service
Service Service
Windows Azure
Storage
Service
Application Application Reference Conn. Identities & Service
Data Data Data Bindings Roles Orch.
Identity
Service
Access
Service
SQL Data BI Workflow
Control
Services Services Service
Bus Service
SQLServices .NET Services Public Services
14. Application Patterns
Grid / Parallel Computing Application
Web Mobile Silverlight WPF Enterprise
Browser Browser Application Application Application
User
Enterprise
Web Svc
Enterprise
Data
Jobs
ASP.NET Web Svc
ASP.NET ASP.NET ASP.NET
(Worker
(Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
Role)
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET Private Cloud
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
(Web Role) (Web Role) (Web Role) (On-Premise)
(Web Role) (Web Role) (Web Role)
Table Blob
Application
Cache Queue
Storage Storage
Service Service Service
Service Service
Windows Azure
Storage
Service
Application Application Reference Conn. Identities & Service
Data Data Data Bindings Roles Orch.
Identity
Service
Access
Service
SQL Data BI Workflow
Control
Services Services Service
Bus Service
SQLServices .NET Services Public Services
15. Application Patterns
B2B Integration Application
Web Mobile Silverlight WPF Enterprise
Browser Browser Application Application Application
User
Enterprise
Web Svc
Enterprise
Data
Jobs
ASP.NET Web Svc
ASP.NET ASP.NET ASP.NET
(Worker
(Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
Role)
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET Private Cloud
(Web Role) (Web Role) (Web Role)
ASP.NET ASP.NET ASP.NET
(Web Role) (Web Role) (Web Role) (On-Premise)
(Web Role) (Web Role) (Web Role)
Table Blob
Application
Cache Queue
Storage Storage
Service Service Service
Service Service
Windows Azure
Storage
Service
Application Application Reference Conn. Identities & Service
Data Data Data Bindings Roles Orch.
Identity
Service
Access
Service
SQL Data BI Workflow
Control
Services Services Service
Bus Service
SQLServices .NET Services Public Services
16. Design Considerations
data process security management
latency stateless claims-based leverage
authorizaation automation
public / share- idempotent
able identity plan for average
isolation
federation load
reference data
loosely-coupled
end user aware of
primary key
asynchronous identities application
access
IPC lifecycles
not all data is
fault-tolerant rolling changes to
equal
(expect live services
failures)
handle dynamic
data schema and
configuration
changes
17. Potential Scenarios
Parallel and distributed processing
Image processing and rendering
Media content transcoding and publishing
Finding extra-terrestrials
Voting systems
Share-able reference data
Search indexes, catalogs
Maps, profiles, blogs, files, documents, etc.
Composite services
Agent architectures
Multi-enterprise business applications
Inter-organizational (B2B) business processes
Extend enterprise SOA to other enterprises
18. Scenario – NBC Olympics
1.3 billion page views
50 million unique visitors
70 million videos watched
27 minutes of viewing per session
600 million minutes of video delivery
5,000 unique clips viewed per day during
the final week
35 million mobile views
130,000 peak streams
3.4 petabytes of video delivered
19. Scenario – NBC Olympics
NBC (New York and Beijing)
Microsoft (Redmond)
DeltaTre (Italy)
Schematic (New York, Atlanta, Costa Rica)
Limelight Networks
Level3
Digital Rapids
Anystream
Signiant
DoubleClick
Omniture
Keynote
Sliq
20. Scenario – NBC Olympics
CDN Video
Video Production Workflow
Distribution Delivery
Live Event International 30 Rock DMZs
(Beijing) Broadcast (New York) (New
Center Jersey, Limelight
(Beijing) Burbank) & Level3
21. Next-Generation B2B Collaboration
Characteristics
Near-time collaboration between many partners
Many-to-many relationships
Physically distributed locations
Complex workflows managing processes that span
organizations
Shared data
Network effect – whole > sum of its parts
Agile implementation
22. Resources
Ruby SDK -
Azure Services Platform http://go.microsoft.com/fwlink/?LinkID=129451
http://www.azure.com
Portal - http://lx.azure.microsoft.com/fs SQL Services
Developer Center - http://msdn.microsoft.com/en- http://www.microsoft.com/azure/sql.mspx
us/azure/default.aspx
Portal - http://portal.ex.azure.microsoft.com/
MSDN Library - http://msdn.microsoft.com/en-
SQL Data Services Developer Center -
us/library/dd163896.aspx
http://msdn.microsoft.com/en-
Training Kit - us/sqlserver/dataservices/default.aspx
http://go.microsoft.com/fwlink/?LinkID=130354
SDK -
http://msdn.microsoft.com/sqlserver/dataservices/cc51212
Windows Azure 0.aspx
http://www.microsoft.com/azure/windowsazure.mspx
Live Services
Developer Center - http://msdn.microsoft.com/en-
us/azure/cc994380.aspx http://dev.live.com/
SDK - http://go.microsoft.com/fwlink/?LinkId=131540 Portal - http://lx.azure.microsoft.com/
Tools for Visual Studio - Developer Center - http://msdn.microsoft.com/en-
http://go.microsoft.com/fwlink/?LinkID=128752 us/live/default.aspx
MSDN Library - http://msdn.microsoft.com/en-
.NET Services us/library/dd156996.aspx
http://www.microsoft.com/azure/netservices.mspx Live Framework - http://dev.live.com/liveframework/
Portal - http://portal.ex.azure.microsoft.com/ Live Framework SDK -
Developer Center – http://msdn.microsoft.com/en- http://dev.live.com/liveframework/sdk/
us/azure/netservices.aspx Live Framework Tools for Visual Studio -
SDK - http://go.microsoft.com/fwlink/?LinkID=129448 https://developer.mesh-
Java SDK - ctp.com/Developers/Developers.aspx
http://go.microsoft.com/fwlink/?LinkID=129452