Chinaunix首页 | 论坛 | 博客
  • 博客访问: 588307
  • 博文数量: 772
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 4980
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-17 13:02
文章分类

全部博文(772)

文章存档

2011年(1)

2008年(771)

我的朋友

分类:

2008-10-17 13:12:32

    本文从数据库基本原理的角度入手,通过对Exchange Server Store模块的分析,来揭示Exchange Server邮件系统的工作原理和维护技巧。文章适合有一定Exchange Server管理经验的专业IT人员阅读,目的是使读者在维护Exchange Server邮件系统时,能够做到知其然,更知其所以然。

  Information Store和Extensible Storage Engine的层次关系

  众所周知,在Exchange Server中,Information Store (简称IS)Service是至关重要的。这个服务控制了对邮箱和公共文件夹数据库的操作请求。

  更进一步的来看,事实上Exchange Server的数据库系统是由名为Extensible Storage Engine(简称ESE)的数据库引擎来管理的。这个ESE引擎是微软专门为保存非关系型数据而开发的,在微软的很多系统中都有应用:例如,AD的数据库(ntds.dit文件)、 DHCP、 WINS、SRS等,后台都是由ESE数据库来提供支持的。

  


    
    我们知道,Exchange Server的数据库由edb文件、stm文件和众多的log文件组成。在这些文件内部,微软使用了名为“B+树”的内部数据结构,ESE引擎的任务之一,就是当Information Store服务请求访问数据库的时候,把这些请求转化成对内部数据结构的读写访问。B+树的特点是能够对在磁盘上的数据提供快速的访问能力。微软选用 B+树作为ESE后台结构的一个原因,就是尽可能提高访问数据时的I/O性能。这些B+树的结构对于Exchange Server Store服务来说是透明的,Store只需要把请求发给ESE即可,ESE会对这些数据结构进行操作。

  另外,作为一个数据库系统,ESE有责任提供事务(Transaction)级别操作的支持,并维护整个数据库的完整性和一致性。对于现代数据库系统,当我们提到事务时,一般用ACID这样的缩写来描述事务的特点:

   

    
    我们会在后面的篇幅中详细的讨论Exchange Server和ESE是怎样实现上述的要求的。 

[1]       

【责编:Zenghui】

--------------------next---------------------

阅读(285) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~