- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于内存数据库FastDB的NET数据提供程序
基于内存数据库FastDB的MSSQL中间件设计与实现
杜思良,陈克,魏鹏,孟宁
(中国科学技术大学软件学院,江苏省苏州市,215123)
摘要:本文阐述一个基于高速内存数据库FastDB的.NET数据提供程序的实现,及其带来的性能提升。 本系统主要是利用ADO.NET实现一个Date Provider for FastDB,从而向程序员提供一个基于ADO.NET的统一接口,使程序员可以方便快速的使用高速内存数据库FastDB。该数据提供程序可以进行对FastDB数据库进行查询、添加、删除、更新操作,主要适用于进行查询这类的读操作。在数据量比较大时,使用FastDB可以使性能得到明显提升。
The design and implementation of a middleware based on Main Memory Database FastDB for MSSQL
Du Si-liang, Chen Ke, Wei Peng, adviser: Meng Ning
(University of Science and Technology of China, Software School, Suzhou, 215123, China)
Abstract: This paper describes an implementation of a .NET Data Provider for FastDB, a high-speed memory database. The improvement of performance is also depicted. The system is to use ADO.NET to implement a Date Provider for FastDB, and thus to provide programmers an uniform interface based on ADO.NET, so they can easily and quickly using the high-speed memory database FastDB. The data provider can execute the common instructions: select, insert, delete, and update, on FastDB. It is mainly applied to read operation such select. When the database is large enough, the use of FastDB performance can be significantly improved.
一. 引言
目前,国内外存在大量基于磁盘数据库的信息管理系统,例如学校的选课系统、考试成绩查询系统等。这些系统大都使用传统的磁盘数据库管理系统对数据进行管理,如SQL Server,Oracle等。这些数据库管理系统都比较成熟稳定,安全性好。由于其它们均基于磁盘,虽然有一定容量的内存作为缓存,在一定程度上减少了磁盘读写操作,但当数据量稍大,缓存就需要与磁盘进行大量的数据交换,导致执行效率较低下,特别是在网络环境下,当并发访问人数激增时,系统响应时间更是常让用户无法忍受。
众所周知,计算机对内存的读写时间,远远小于对磁盘的读写时间。内存数据库系统,其基本原理,便是将数据保存在内存中,在内存中对数据进行各种操作和管理。因此,使用内存数据库进行查询等常用操作,将使系统性能得到明显提升。目前,内存数据库已成为电信、金融等实时性要求高、访问量大的领域的重要解决方案。
现阶段国内外有各种各样内存数据库产品,其中Oracle TimesTen, Altibase, eXtremeDB都是十分优秀的内存数据库产品,但其高昂的价格也往往让人对其敬而远之。于是便产生了许多开源产品,如BerkeleyDB, SQLite? 等,而FastDB便是一个高效的开源内存数据库系统,它使用C++开发,具备实时能力及便利的C++接口。FastDB通过位图实现对内存进行分配,最小单位块是分配量子(16字节)。如此大大提高了数据引用的局部性(对象数据尽可能分配在连续的内存区域),最小化修改页的数目和减少了事务提交时间。[1]
本系统主要是利用ADO.NET实现一个Date Provider for FastDB,从而向程序员提供一个基于ADO.NET的统一接口,方便的对FastDB进行访问。
二. ADO.NET介绍
ADO.NET 是一组向 .NET 程序员公开数据访问服务的类。ADO.NET 为创建分布式数据共享应用程序提供了一组丰富的组件。它提供了对关系数据、XML
文档评论(0)