Presentation is loading. Please wait.

Presentation is loading. Please wait.

Building Offline/Cache Mode Web Apps Using Sync Framework Mike Clark Group Manager Cloud Data Services Team

Similar presentations


Presentation on theme: "Building Offline/Cache Mode Web Apps Using Sync Framework Mike Clark Group Manager Cloud Data Services Team"— Presentation transcript:

1 Building Offline/Cache Mode Web Apps Using Sync Framework Mike Clark Group Manager Cloud Data Services Team mikecl@microsoft.com

2 Agenda Overview

3 Why Build Data Caching Apps Offline/Cached mode apps enjoy lots of value today on-prem – Client apps get better UX through Lower latency – data access doesn’t require round trips Higher availability – app still runs if server is unreachable – Reduced network utilization – most data access is local – Servers gain better ability to schedule work asynchronously Benefits of cached mode are magnified on the Internet – Server/service is further away – Network is less tuned/reliable Provides key aspects for Software+Services and 3-Screens & Cloud Remote Store Local Data Cache Rich client app 10X Operations X Messages

4 Offline / Cache Mode Apps End to End Other Platforms Sync HTML Windows Store Windows Azure Sync Reach Richer UX & Capabilities Sync Endpoints Sync Endpoints Auth / Mgmt / Bus Logic Sync FX Silverlight Sync smarts on server, not on client Simple sync protocol (OData-Sync) Minimal client & store requirements Easy to develop the sync endpoints.. Client API support Client API support

5 Demo 1 MIX Session Planning App

6 OData Protocol Standards based – Open web protocol for querying and updating data – Applies HTTP, AtomPub, & JSON to provide open access Services powering experiences – Lower costs through client tooling – Microsoft increases your reach by adding new clients – Empower your ecosystem building new mashups Services powering business – Enable your customers with open access – Zero-friction tooling like Excel as a client – Monetize or consume data from Microsoft “Dallas”

7 Open Data Protocol (OData) Data Sources ADO.NET SharePoint SQL Azure WCF Data & RIA Services SQL Server Excel PowerPivot.NET Client Silverlight Javascript PHP … … Analysis & Reporting Win Azure Open Data Protocol (AtomPub + EDM) Data Clients

8 Sync for OData Apply the principals of OData to the problem of data-sync Support two key client/server relationship patterns Symmetric client and service (Rich Clients) Asymmetric client and service (Thin Clients) Both client and service understand sync Client can handle conflicts, constraints, etc… Client can sync with service or other clients directly Built in support for Windows No client sync logic or algorithms Service manages sync keeping client simple Built in end to end support for Silverlight Easy to build clients for other platforms

9 Agenda Sync Application Architecture

10 Sync Framework Basic Overview Sync Provider A Sync Application Sync Provider B Sync Orchestrator Data Store A Data Store B changes Metadata Interpretation/ Manipulation Tools Provider Services Metadata Storage Sync Runtime Logic Metadata Interpretation/ Manipulation Tools Provider Services Metadata Storage Sync Runtime Logic Configure Sync()

11 Offline/Cached Mode Apps on Windows Windows Data Caching Client SQL Compact Sync Provider Cached Mode Application Cached Mode Application SQL Azure Proxy Provider Sync Orchestrator Sync Logic Client can sync with service or other clients Server-side business logic by processing provider events Client monitoring & management possible SQL Compact Symmetric OData-Sync Proxy Windows Azure Application SQL Azure Provider SQL Azure Provider Sync Logic WCF Sync Endpoint WCF Sync Endpoint Sync OData-Sync Endpoint Business Logic

12 Offline/Cached Mode Apps in Silverlight Collections Provider Silverlight Cached Mode Application Asymmetric OData-Sync Proxy Sync Orchestrator Sync Logic Moves to Server/Service Enables Offline In Isolated Storage with Silverlight 3 & 4 Plug in other stores by building providers Isolated Storage Sync Logic Collections Silverlight Data Caching Client Windows Azure Application SQL Azure Provider SQL Azure Provider Sync Logic Sync OData-Sync Endpoint Business Logic

13 Demo 2 3-Screens MIX Attendee Application on desktop Silverlight and Windows Phone 7 Series

14 Session Planner App Architecture Sync Components Silverlight Desktop Data Layer Isolated Storage Collections Desktop Presentation Layer Windows Phone 7 Series Data Layer Device Presentation Layer OData-Sync Sync Components Isolated Storage Collections SQL OData-Sync Endpoint OData-Sync Endpoint Sync FX ASP.NET OData Browser Clients Offline Clients OData Endpoint OData Endpoint HTML Online OData Clients Multiple clients access the same service Silverlight app for desktop and phone: Utilize OData-Sync protocol Cache data for offline operation Identical code base, except for UI

15 Offline/Cached Mode Apps On Any Platform Same basic conceptual model Capable of any storage available on the platform Simple code on the client required to plug in Cached Mode Application Custom Client Sync Controller and Asymmetric OData-Sync Proxy Custom Client Sync Controller and Asymmetric OData-Sync Proxy Storage Any Platform Data Caching Client Windows Azure Application SQL Azure Provider SQL Azure Provider Sync Logic Sync OData-Sync Endpoint Business Logic

16 Demo 3 MIX10 Client Code on IPhone

17 W3C HTML5 Storage Standard WebApps support in future browsers Microsoft participating to evolve standard Perfect place for any client sync support Possibility of having some end to end support

18 Agenda Moving Data Where You Need It

19 Sample End to End Scenario App On-Premises SQL Server Cloud North America Europe Asia SQL Azure Client Storage Cached Mode Clients App Client Storage App Client Storage North America Europe Asia

20 Getting Data Where You Need It On-premises to cloud continuum Sync Benefits Makes cloud extension rather than replacement Enables moving workload to cloud in stages New scenarios spanning enterprise and cloud Preserve investment in existing infrastructure Sync SQL Azure to SQL Azure Sync Benefits Scale-out read or read/write Geo replication of data Edge network data distribution Content delivery networks SQL Azure

21 Agenda Conclusions

22 H1’10 – SyncFX V2.1 Wave Sync Framework V2 with full support for Windows Azure Platform SQL Azure provider and SyncFX deployable to a web role Incremental DB provider improvements H2’10/H1’11 – SyncFX V3 Wave Extended client reach via sync protocol and server/service-side sync End 2 End support for Silverlight on desktop and phone Integrate offline with “online” frameworks VS tooling for client and server/service

23 Call To Action Use the demo attendee app Get the SQL Azure DataSync CTP Start building apps today Watch for invitation only CTP for Silverlight coming in next couple of months Give us your feedback

24 Resources Sync Framework MSDN Dev Center – http://msdn.com/sync http://msdn.com/sync Email – michael.r.clark@microsoft.com michael.r.clark@microsoft.com Team blog – http://blogs.msdn.com/sync http://blogs.msdn.com/sync Forums – http://social.msdn.microsoft.com/Forums/en- US/syncdevdiscussions/threads http://social.msdn.microsoft.com/Forums/en- US/syncdevdiscussions/threads

25

26


Download ppt "Building Offline/Cache Mode Web Apps Using Sync Framework Mike Clark Group Manager Cloud Data Services Team"

Similar presentations


Ads by Google