gavi's picture
From gavi rss RSS  subscribe Subscribe

AJAX World 2007 



Handling Large Data in Rich Ajax Applications

 

 
 
Tags:  ajax  rich  data  web  application  server  client 
Views:  1534
Downloads:  11
Published:  July 06, 2007
 
0
download

Share plick with friends Share
save to favorite
Report Abuse Report Abuse
 
Related Plicks
S/W Development on the Web Platform

S/W Development on the Web Platform

From: gavi
Views: 2214 Comments: 0
Platform
Web Platform
The old web development
The new web development technique
The Barriers
How to overcome? (more)

 
Rich Internet Application

Rich Internet Application

From: annaharris
Views: 52 Comments: 0

 
Load Testing - Changing IT Infrastructure Demands Superior Testing Tools

Load Testing - Changing IT Infrastructure Demands Superior Testing Tools

From: anon-524660
Views: 73 Comments: 0

 
Asynchronous Javascript and Rich Internet Aplications

Asynchronous Javascript and Rich Internet Aplications

From: anon-103119
Views: 770 Comments: 0

 
Atlas - AJAX Programming for the.NET 2.0 Framework

Atlas - AJAX Programming for the.NET 2.0 Framework

From: gavi
Views: 3076 Comments: 1
Atlas:
Defined, Business Value, Requirements
Architecture: Client-Side, Server-Side
Demonstrations
Wrap-Up
Questions & Answe (more)

 
See all 
 
More from this user
Microsoft Office Business Scorecard Manager 2005

Microsoft Office Business Scorecard Manager 2005

From: gavi
Views: 3229
Comments: 0

Google Earth

Google Earth

From: gavi
Views: 4531
Comments: 1

Comparing J2EE with .NET

Comparing J2EE with .NET

From: gavi
Views: 3696
Comments: 0

flash

flash

From: gavi
Views: 1887
Comments: 0

Evolution Of Soa - Gartner

Evolution Of Soa - Gartner

From: gavi
Views: 3785
Comments: 0

 
See all 
 
 
 URL:          AddThis Social Bookmark Button
Embed Thin Player: (fits in most blogs)
Embed Full Player :
 
 

Name

Email (will NOT be shown to other users)

 

 
 
Comments: (watch)
 
 
Notes:
 
Slide 1: Handling Large Data in Rich Ajax Applications ThinkFree
Slide 2: Ajax on Desktop • Ajax based Web apps are replacing traditional desktop apps –Zimbra, Gmail & Google Calendar (Outlook replacement) –Google Docs & Spreadsheets, Zoho, Ajax Office, ThinkFree (Office suite replacement) • But can they really handle the work of traditional desktop apps?
Slide 3: Barriers to Adoption • What are the barriers to adopting Ajax apps to replace traditional desktop apps? –Can't use offline –Data size limitations –Data loading time –Data handling performance
Slide 4: Rich AJAX Applications Desktop Full access to local resource Highest client load No server load No server Load Shortest esponse time Highest rendering power Web/AJAX No access to local resource High client load Highest "peak" server Load Low "average" server Load Short response time Lower rendering power Rich AJAX Applications More restricted access to local resource Low client load High "peak" server load High "average" server load Shorter response time Low rendering power RIA Restricted access to local resource Higher client load Low "peak" server Load Higher "average" server Load Shorter response time High rendering power Web/Classic No access to local resource Lowest client load Lower "peak" server Load Highest "average" server load Long response time Lowest rendering power
Slide 5: Data Handling on Desktop • Terminal/Server model – Data & view reside on Server • Stand alone PC model – Data & view reside on desktop • Client/Server model – View runs on client – Initial data loads from server then cached on client – Incremental loading of data from server as needed
Slide 6: Data Handling in Web App • • • • • Data resides on server Client sends data request to server Server sends data to client View data via HTML Communication between client & server using HTTP requires frequent data reloading • Maximum client data storage allowed for web app: limited to 4k browser cookies
Slide 7: Data Handling in Ajax App • • • • Data resides on server Server sends serialized XML data to client JavaScript code renders data Since only needed data is passed between client & server, data transmission time is reduced. However, data loss may occur when connection breaks • Data & code size still restricted by browser memory limitation
Slide 8: Data Handling in Google D&S Limited to 500KB
Slide 9: Data Handling in Zoho 800KB XLS file cannot be opened
Slide 10: Data Handling in ThinkFree 4.9MB spreadsheet loads in 2.53 sec.
Slide 11: Data Handling in TF 2
Slide 12: Efficient Large Data Handling • Client fetches needed data fragments asynchronously on demand • Server keeps data fragments in buffer cache, instead of keeping the whole data in memory • Client sends modified data fragments to server • Server merges modified data fragments into the whole data • Client keeps redo log in browser local storage to recover from disconnected use • Java, Apollo, etc... may be used to overcome browser restrictions especially for mission critical applications
Slide 13: Browser Local Storage • Having data persist across multiple browser sessions can reduce data loading time but must pay attention to security • Data persistence may also be used to back up edited data when network connection is not reliable • Data persistence may be achieved by using – – – – Cookies Flash Local Storage FireFox DOM Storage Internet Explorer userData behavior
Slide 14: Cookies • Most commonly used mechanism for data persistence • Supported in all web browsers • Weak security • Unstructured data • Limited to 4KB/domain
Slide 15: Flash Local Storage • Flash installed on 96% of computers • Maybe used by non Flash apps • Easy to use • Weak security • Unstructured data • Requires Flash plug-in • Limited to 100KB/domain (10MB total)
Slide 16: FireFox DOM Storage • Supported only in Mozilla browsers • Easy to use • Weak security • Unstructured data • Limited to 5MB
Slide 17: IE UserData Behavior • Supported only in Internet Explorer • Maximum amount of UserData storage available Security Zone Intranet Internet Restricted Document 512KB 128KB 64KB Domain 10240KB 1024KB 640KB
Slide 18: Embedded Database • Mozilla Storage(via extension) • MDB with ActiveX • Derby with Java applet • PROS –Structured data –No size limit • CONS –Requires additonal installation step.
Slide 19: Browser & Local Storage Browser All Flash Player 6 and above IE5 and above FF2 and above Storage Cookies Flash local shared object userData DOM stoage Max Size 4KB/domain 100KB/domain (max 10M) 1MM/domain 5MB/domain Embedded DB Java applet with Derby MDB with ActiveX Mozilla storage
Slide 20: DemandFetch & SmartMerge Client-side(Browser) Client Application View (HTML) Data Fragments [real-memory] Server-side Server Application Structured Data Fragments [virtual-memory] Model [paging-unit] [buffer-cache] MMU over AJAX AJAX/HTTP MMU over AJAX Browser Local Storage [redolog] offline online checkout Unstructured large data (doc,xls,ppt...) [file system] commit Repository
Slide 21: Breaking the Barriers • Divide up the work between client and server to handle large data • Fetch only needed data, only when needed and do it asynchronously • Use browser local storage to overcome issues relating to unreliable connection • Wait until FF3 or use Java et al to provide offline support

   
Time on Slide Time on Plick
Slides per Visit Slide Views Views by Location