1 / 27

Occasionally Connected Systems Offline Data Synchronization and Caching with SQL Server Everywhere Edition

talia
Download Presentation

Occasionally Connected Systems Offline Data Synchronization and Caching with SQL Server Everywhere Edition

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Occasionally Connected Systems Offline Data Synchronization and Caching with SQL Server Everywhere Edition Steve Lasker Program Manager / Technical Lead Microsoft http://blogs.msdn.com/SteveLasker http://Team/Sites/OCS

    2. Agenda Architecture Evolution Caching Models Choosing the Right Tool Demos of a New Sync Runtime What we’re delivering in Orcas to enable Occasionally Connected Applications

    3. Slide 9 - The Next Data Explosion part 2 As we enter this new environment of distributed devices, desktops, servers, clusters, and services in the cloud, we need to think differently about data and applications. Data will now be on the move, processed close to the application, federated from multiple data sources, connected and disconnected. The default application model will evolve from client-server to multi-tier. Applications living on the edge of networks will be adaptive to connected and disconnected states, and will seamlessly synchronize with one or more data hubs. Applications today and moving forward are dealing in terms of “entities” – the “stuff” flowing between composite apps is not rows or objects but collections of rows that make a logical unit of work for an application, a message perhaps. Databases today don’t always provide the right level of abstractions for this entity based world To support all of this we really need to look at Data Management in a different way. From Jim Grey: We’re in a transition from session oriented databases to service oriented databases. Session Oriented Database: Input & Events processed by application, Passive Data, Little binding between data and “logic” Service Oriented Database: Service Logic bound to Services, Query Notifications, and Events. Service Logic Triggered by data changes, by message arrival, by timer firing, etc. Data becomes “active” Slide 9 - The Next Data Explosion part 2 As we enter this new environment of distributed devices, desktops, servers, clusters, and services in the cloud, we need to think differently about data and applications. Data will now be on the move, processed close to the application, federated from multiple data sources, connected and disconnected. The default application model will evolve from client-server to multi-tier. Applications living on the edge of networks will be adaptive to connected and disconnected states, and will seamlessly synchronize with one or more data hubs. Applications today and moving forward are dealing in terms of “entities” – the “stuff” flowing between composite apps is not rows or objects but collections of rows that make a logical unit of work for an application, a message perhaps. Databases today don’t always provide the right level of abstractions for this entity based world To support all of this we really need to look at Data Management in a different way. From Jim Grey: We’re in a transition from session oriented databases to service oriented databases. Session Oriented Database: Input & Events processed by application, Passive Data, Little binding between data and “logic” Service Oriented Database: Service Logic bound to Services, Query Notifications, and Events. Service Logic Triggered by data changes, by message arrival, by timer firing, etc. Data becomes “active”

    4. Dynamic switching

    5. Passive Caching

    6. Active Caching

    7. Caching Models Passive Caching Cache requests as they happen Saving that Pizza or Chinese Food delivery Can eat the completed meals you’ve saved Difficult to cook up other recipes Active Caching Pre-fetch raw resource needed to complete tasks Going food shopping for milk, meat, bread, spices, … Can cook endless combinations based on the raw materials Foodmart doesn’t need to maintain various specific “recopies”

    8. Complete, Independent, Applications

    9. Occasionally Connected Systems

    10. Lots of Toys (Technologies)

    11. Right tool for the right job

    12. Categorizing Techno Gadgets

    13. Synchronization Options

    14. RDA, Merge, Query Notifications RDA Easy to configure, manage and deploy Great for well partitioned data No real conflict detection Great scaling as the server has no additional overhead Doesn’t support incremental downloads Merge Replication Full spectrum of devices Many built in features More to configure, requires DBO/DBA privileges Feature of SQL Server SQL Query Notifications Provide query expiration, not what changed Great for mid tier / web caching Not granular, flexible or scalable for client caching

    15. OCS Scenarios Local Caching of Read Only Data Product Catalog, States, Codes Capture Incremental Changes (Inserts, Updates, Deletes) No active connection to the database required Offline Data Data is persisted using SQL Server Everywhere Edition Local Change Tracking for Sending Updates When Connected Developer Productivity “Pay to Play”, RAD Component Architecture Leveraging Developers ADO.NET Knowledge Auto Creation of Database and Table Schema

    16. Sync Component Architecture

    17. Sync Component Architecture

    18. Occasionally Connected Systems Sync Framework

    19. App Install

    20. Offline Changes

    21. Synching offline changes

    22. Synchronized

    23. Expense Report Approved

    24. Synchronize Server Changes

    25. Synchronized

    26. Database Schema Impact ”Pay to play”

    27. Summary Network resiliency doesn’t happen as an afterthought Building resilient applications is the future, not just a stop gap It’s how all important resources are managed Design your apps to work offline from the beginning When things are connected, they work great When stuff happens, your business continues to function SQL Server Everywhere Edition is your killer local store Sync technologies exist today, RDA, Merge Sync Services are coming, design for them today Be a part of the solution, not the problem Contribute to usability & fiscal responsibility

    28. Reference Info SQL Server Everywhere ships end of ’06 CTP @ http://Microsoft.com/SQL/Everywhere SQL Server Everywhere Edition Blog http://blogs.msdn.com/SQLServerEverywhere Public OCS Info http://blogs.msdn.com/SteveLasker How to get involved with our Private Sync CTP http://blogs.msdn.com/stevelasker/contact.aspx

More Related