Title: Mobile database access with a Pocket PC
1Mobile database access with a Pocket PC
- Rutherford Associates.
- http//www.eostar.com
- June 14, 2005
- West MI .NET Users Group
- Michael Rutherford
- Jovo Filips
2PresentersRutherford Associates, Inc.
- Rutherford Associates, Inc.
- Rutherford Associates specializes in
line-of-business applications for the
distribution industry. - Michael Rutherford
- Michael Rutherford is CEO and President of
Rutherford Associates. Michael's career spans
several industries (scientific, government,
medical and distribution) and several programming
languages over several decades. - Jovo Filips
- Jovo Filips is Vice President at Rutherford
Associates. Jovo has been involved in large-scale
IT projects spanning nearly 20 years with direct
involvement with network design, application
development, database design and multi-state
deployments.
3TopicMobile database access in a high-volume
transaction based system
- SQL Considerations
- Design and scalability issues from the MS SQL
side of the solution - Mobile (Pocket PC) Considerations
- Design, scalability and implementation issues
from the mobile side of the solution
4MS SQL Design Considerations for Mobile Data
Access
5Design overview
6SQL Considerations
- Triggers
- Pre-Accumulate Information
- Query Plan
- No embedded parameters
- Transaction
- Reliability
- History
- Auditing faults
7Web Service Considerations
- Performance
- When everyone posts data at the same time .. ?
- Reliability
- When communication fails. ?
- Scalability
- Session-less
-
8Pocket PC Considerations
- Reliability
- Always on
- Performance
- Data object must be efficient
- Usability
- Replaces route books
- Seamless integration
9Pocket PC Design Considerations for Mobile Data
Access
10Pocket PCOperational Environment
- Salespeople needs
- Up-to-date Customer, Product, Inventory, Pricing
information - Up-to-date Sales Analysis information
- Delivery people needs
- Accurate Customer and Order information
- Audit capabilities for delivery vehicle inventory
and cash reconciliation
All these needs and others make deep impact on
design goals
11Pocket PCDesign Goals
- Speed
- Performance needs
- Usability
- Unobtrusive interfaces
- Reliability
- The mobile user trust
- Scalability
- Everyone will synchronize at the same time
Bottom Line Mobile users dont want to use your
application. They want to go home.
12Pocket PCData Storage Tools
- Local Storage
- Pocket SQL
- Big (Mbytes), Slow (not sub-second)
- But.. Flexible
- Proprietary Serialized Objects
- Tight (Kbytes), Quick (sub-second)
- But.. Can be high-maintenance
- ADO .. ?
- Not much of a concern for live applications
13Pocket PCData Synchronization Tools
- Pocket SQL lt-gt MS SQL
- Built-in publisher-subscriber tools
- Slow, Slow, Slow on Pocket SQL 1.0
- Massive data payload
- Easy to setup
- Deployment sucks
- Private Objects lt-gt MS SQL
- Roll-your-own replication
- Needs translator (web service)
- Increases complexity
- Data payload is as efficient as possible
14Pocket PCData Storage and Synchronization
Design Summary
- Users dont care how you store
- UNLESS it impacts speed, reliability and
usability - Users dont care how you synchronize
- UNLESS it impacts speed, reliability, usability
and keeps them from going home
15Pocket PCWhat Rutherford Did
- Private object storage
- Speed
- Reliability Replicate locally
- ASP.NET Web Service
- Speed
- Scalability