利用数据缓存机制提高智能设备应用程序的数据访问性能

转载 2007年09月25日 13:22:00

刚看了 Chris Tacke 的《Improving Data Access Performance with Data Caching》一文,回想起以前做过的一些项目,对数据缓存在提高数据访问性能方面的作用颇有感受,跟大家分享一下。
我们在开发 MIS 项目时,要跟各种业务和数据在打交道。其中数据可以根据它们的用途,分为业务数据和参考数据两种。业务数据是业务的信息载体,如:采购进货单、销售出货单、盘点单等。参考数据是业务数据组成部分,如:度量单位、颜色、城市等。参考数据在英文里面通常叫 Lookup Data 或 Reference Data,它们是在系统中使用频率很高的一类数据。因此,这类数据的访问性能将会影响整个系统的用户体验。那么,如何提高 lookup data 的访问性能呢?
Chris Tacke 在他的文章中分析了三种数据访问方式。前两种访问方式差不多,主要区别在于:第一种在每次访问数据库时都会打开和关闭数据库连接;而第二种是在系统缓存一个数据库连接对象,每次使用后不关闭它。我相信大家都会认为第二种方式在频繁访问数据库时性能更优,因为打开一个数据库连接是比较耗系统资源的。然而结果却让人出乎意料,这两种方式的性能很接近,甚至第二种方式性能还更好。

测试结果1:

Device

Processor

Mean Execution (ms)*

OLDI SAM-L8

800MHz Geode x86

7.5 to 9.5

iCOP eBox 2300

200MHz Vortex86

47 to 52

Dell Axim x51

416MUz Intel PXA270

38 to 62


测试结果2:

Device

Processor

Mean Execution (ms)

OLDI SAM-L8

800MHz Geode x86

7.1 to 14.8

iCOP eBox 2300

200MHz Vortex86

51 to 52

Dell Axim x51

416MUz Intel PXA270

43 to 61


第三种方式利用数据缓存机制,在第一次获取数据时,将数据加载到一个Hashtable中,然后再返回。以后就直接从缓存获取数据。第三种方式的性能跟前面两种相比差了十万八千里呀!

Figure 1

测试结果3:

Device

Processor

Mean Execution (ms)

OLDI SAM-L8

800MHz Geode x86

0.0193 to 0.0201

iCOP eBox 2300

200MHz Vortex86

0.1014 to 0.1164

Dell Axim x51

416MUz Intel PXA270

0.0975 to 0.1437


Chris Tacke 的文章还提供示例代码和PDF格式下载:
Download the Source Code
Download the PDF

另外,Chris Tacke 说他们在那个项目中还开发了一个运行在 Windows CE 的轻量级 ASP.NET Web 服务器,用来展现报表,在后续文章中会详细介绍它的实现,期待ing...  
 

相关文章推荐

Windows8应用程序数据访问与存储的几种可选方式

原文地址:http://msdn.microsoft.com/en-us/magazine/jj991982.aspx?utm_source=feedly 作者:Rachel Appel   管理数据...

提高oracle大数据访问性能

  • 2016年03月11日 16:03
  • 5KB
  • 下载

android获取应用程序缓存的数据

在我们日常的开发过程中,我们的app经常需要缓存一些数据,比如已经登陆的用户信息...那些数据缓存了之后,我们怎么去获取它们呢?不外乎下面几种方法: 1.使用代码把数据读取出来然后显示,一般程序开发也...

缓存应用程序数据(二)

二、访问缓存的值      由于缓存中所存储的信息为易失信息,即该信息可能由 ASP.NET 移除,因此建议先确定该项是否在缓存中。如果不在,则应将它重新添加到缓存中,然后检索该项。 st...
  • wyh0318
  • wyh0318
  • 2012年05月09日 14:20
  • 199

android获取应用程序大小,缓存数据信息

x package com.xj.appinfo.activity; import java.lang.reflect.Method; import android.app.Activi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用数据缓存机制提高智能设备应用程序的数据访问性能
举报原因:
原因补充:

(最多只允许输入30个字)