精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● 数据库技术>>INFORMIX 产品>>Informix Dynamix Server技术白皮书 III

主题:Informix Dynamix Server技术白皮书 III
发信人: garyjan()
整理人: chedong(2000-05-05 18:22:09), 站内信件
隔离级别
         隔离级别规定了读操作与其它数据库服务器进程并发的程度,即对正在
读 的记录其它服务器进程可做哪些更改, 以及对其它服务器正在读或修改的数
据 可进行读的数据。隔离级别只作用于读操作, 有以下几种:读脏数据、事务
提 交读、静态游标和重复读。
读脏数据:没有隔离,不加锁,什么都不用考虑,用户可以读任何事务中或提 交
后的数据。
提交读:只能读没有加锁的数据。
游标读:只有当数据库在最后一条记录上加锁时才会影响它, 即一次只锁一 条
记录,当一个新记录读入后才释放上一个锁。 该级别可保证程序检测记录 时不
会发生变化。
 重复读:可保证在同一事务中反复读取的记录保持一致。它不仅对已读到的记 
录加锁,而且禁止对数据库中的数据加以更改。
商业规则
       该规则保证字段级数据一致性, 它定义了数据可取的值,字段的默认值
及 字段间关系。所有对数据存取的应用均要遵守该规则。动态服务器也独立地遵
 守该规则。这一独立遵守方式可保证当应用违背规则所引起的问题不影响服务 
器。
       动态服务器支持完整性约束、存贮过程和触发器来遵守该规则。
完整性约束
        Informix动态服务器遵从 ANSI SQL 完整性约束,有两类:参照完整性
和实 体完整性。参照完整性允许用户定义并遵守字段间关系。例如:在子表中相
关 记录存在时不可删除主表中对应的记录。实体完整性允许DBA定义字段的取值
 范围和缺省值。
存贮过程
         存贮过程是 SQL 命令或一段程序,它被命名为一个过程, 存贮于数据
库 服务器端,并做为普遍操作提供一种数据一致性保证方法,它有别于应用程序
 。
         存贮过程减轻了网络传输负载,它在进程调用后仅返回结果值。
触发器
       触发器提供了调用存贮过程的一种可选方法,当在表中做INSERT,UPDATE
 或DELETE时, 可用它定义, 使数据库服务器自动执行某一存贮过程。 由于触
 发器存贮于系统目录中, 在使用时需对冗余码做修改, 否则完整性限制会加到
 所有存贮过程中。
磁盘镜像
        Informix动态服务器使用镜像提高读的效率,因为数据的两个版本存放
在不 同的硬盘上。数据页面或者从主Chunk读入,或者从镜像Chunk读入,这由哪
半个Chunk中包含数据页面的地址来决定。 这称作分裂读。 由于减少了磁盘搜索
 的时间。所以分割读能提高性能。磁盘搜索时间的减少是由于磁头移动的最大 
距离减半了。 对主块和镜像块写操作的异步提高, 导致了性能的进一步改进。
 这些写操作不是顺序地而是并行地完成的。
Informix 动态服务器并行备份
       Informix动态服务器在多设备可用的情况下,提供了将系统备份到第二处
设 备的方法(例如磁带、 硬盘),大大降低了备份的时间。
并行恢复
         Informix动态服务器用On archive并行恢复物理和逻辑系统。如果可用
多个 磁带机,恢复时间将大大降低。对于非正常退出的情况,Informix动态服务
器会 立即进行快速恢复。快速恢复可使用户在存取数据前,依照逻辑日志文件检
查 事务完成情况,并对未完事务回滚保证数据一致性。
支持64位及大内存寻址(LMA)
        大多数UNIX和NT系统由于32位寻址的限制而局限于2GB(或更少)的内 
存, 这种限制随64位寻址而取消并提高了数据库运行效率。
      Informix动态服务器提供64位支持及大内存寻址,在联机事务处理和分布
式 环境 两方面大大提高了运行效率。64位以较小的物理 I/O操作数允许更大的
数 据页和更多的数据被传入缓存中。对 LMA 而言, Informix动态服务器现在可
支 持几十GB的物理内存和几百GB 的虚址空间,这样允许更多的数据存入缓存中
 ,  同时可支持大量 用户,  提高数据库容量,  并且降低高负荷联机事务处
理 (OLTP) 环境中交换频率。
支持多媒体
        Informix动态服务器具备存贮文本文件,图像和多媒体数据的能力,可
使用 户在数据库中的一条记录上存贮 2GB 的文本文件或二进制数据。二进制大
对象 (BLOBs)的TEXT和BYTE数据类型可象 其它数据类型一样通过SQL存取。
        TEXT 数据类型设计成类似于商业表格或源码一样独立存贮。  这种数据
类 型要符合INFORMIX开发工具要求的TEXT数据类型,是可打印的ASCII 格式的 
要求。
       BYTE 数据类型包括任何程序所生成的数据类型,例如:图形图像,  对
象 代码 、广播稿和字处理文档等。
        由于BLOB 会很大,Informix动态服务器将对BLOB 数据进行处理以保证
数 据一致性,同时不牺牲执行效率。Informix动态服务器指定BLOB 数据在磁盘
中 的存贮方向,称blobspace(大对象存贮空间),当DBA要使用一个blobspace
 时 ,BLOB内容直接被写入硬盘而不用数据指针,  这样就为逻辑日志节约了空间
。 BLOB存贮的内存管理也不同,BLOBs  由于可能需要大量内存而设计成不通过
 内存读取,而是读入到用户虚存中或系统文件中。
          为防止系统出错,使用Informix动态服务器的数据恢复方法恢复BLOB
s 数据。
管理特性
以下是Informix动态服务器特殊的功能特点和扩充的管理控制。
系统监控界面(SMI)
        Informix动态服务器通过对系统控制数据库(称为sysmaster)的维护来
追踪 数据库服务器的有关信息。Sysmaster的一个组成部分就是SMI,SMI包括可
提 供数据库状态信息的表和虚表, 可通过对这些表的查询来确定处理瓶颈, 资
源使 用情况,跟踪数据库的活动等等。
可提供的一些信息有:
 数据库名,所有者和逻辑状态;
 正在等待数据库资源的用户状态;
 性能概要信息;
 用户和处理器使用系统CPU的情况;
 硬盘空间信息;
 事务日志(逻辑日志)信息;
 硬盘空间特定区域的信息(如dbspace);
 锁使用情况和区间信息(区间是分配给表空间的连续片断).
 
DB/Cockpit 
        DB/Cockpit是一个实用程序,它为DBA提供图形化环境中一种新的工作方
 法。 它包括对DBA进行辅助的若干种机制,如下:
 警报器。当系统参数达到预先设置的界限时,它通知DBA;
 严格检查。通知DBA可疑的、超出范围的值;
 活动监控器。提供各种系统资源的使用细节;
 历史记录和分析器。使得DBA能够追踪特定的数据元素;
 仿形屏幕。可以把它定制成正文、图表、或图形格式。
       定义警报器,设计仿形屏幕,以及设置严格界限,以预先对异常情况发出
 警告的灵活性保证了 DBA  能够在所有的时间里管理和维护一个运行良好的数 
据库系统 ,为完成这些任务,DB/Cockpit采用了客户/服务器结构,使DBA 能 够
监控远程Informix数据库服务器。
      DB/Cockpit有两个主要成分: 探查器和用户界面。探查器与被监控的Info
rmix 动态服务器驻留在同一台服务器上,它从 SMI 数据库,或直接从共享内存
采集 数据。 探查器使用收集到的数据去初始化警报器, 记录预先定义的历史活
动, 并按照用户的请求向联机监控传送数据。 用户界面可以驻留在网络中心任
何一 台主机上, 也可以驻留在数据库服务器上。 DBA 使用它来监控Informix动
态服 务器,发出关于当前数据 库活动和配置信息的请求,分析历史活动,接收
警报 。
        DB/Cockpit的结构保证了对远程系统和低档机器装载的控制,最重要的
是 ,它允许探查器独立运行,起到对Informix动态服务器的监视器的作用。
OnPerf
         OnPerf  实用程序是一个图形用户界面,  它是  INFORMIX 以前的版
本中 tbstat实用程序的改进和提高。主要的改进包括:
 实时地图形化显示度量值;
 允许DBA选择对哪些度量值进行监控;
 允许DBA为了分析一个趋势而滚回到前面的度量值;
 将性能数据保存在文件中,以后以模拟实时的方式显示这些数据
        当你启动 OnPerf 时,总是启动了两个进程;OnPerf 进程和数据收集进
程, 你可以把它们理解为OnPerf实用程序的前端和后端。数据收集进程与共享内
存 相连,读入Informix动态服务器的性能度量值,数据收集进程将从共享内存收
集 到的数据传送给OnPerf进程,后者用OnPerf工具显示这些数据。

       OnPerf实用程序允许DBA 指定对一级度量值进行连续不断的缓冲存储,数
 据收集器将这些度量值写到数据收集器的缓冲区中。  DBA  可以定期地将数据
 收集器缓冲区中的内容保存到历史文件中,历史文件的内容可以在工具窗口中 
显示出来。
       有多个层次上的度量值可以被监控,包括数据库级、操作系统级、CPU、
 虚处理器、各个用户对话、表空间等各类度量值。
备份及恢复
          Informix 动态服务器提供一套复杂同时很完善的备份和恢复功能, 
可对各 部分进行备份和恢复,包括联机状态下,表和分片级的并行备份和恢复。
此外 ,INFORMIX内部用于分布式数据库备份和恢复的辅助管理使备份和恢复的功
 能更为完善。
        备份和恢复的处理分为两个步骤,    第一个步骤包括以使用备份和恢
复的 Informix服务器中采集和存贮数据,第二个步骤包含通过存贮管理员从存贮
介质 中提取和写入数据。在备份过程中,备份和存贮功能从服务器中提出数据传
给 存贮管理员并由存贮管理员写入存贮介质中。在恢复过程中正好反过来。
         通过备份和恢复这一功能,使得管理员可在本身Informix 存贮管理器
和第 三方存贮管理器中加以选择,INFORMIX 存贮管理器提供一套简单易用的方
法 帮助管理员们将数据存贮备份到磁带和硬盘上或从介质中将数据恢复到服务器
 上。
         备份和恢复为具有更复杂需求的用户提供了一套符合 X/Open 备份服务
应 用界面,(X/BSA)标准的应用开发界面,该界面使用户可以使用第三方存贮
 管理器厂商(SMV)提供的 子系统,象IBM  ADSM 或 HP Omniback II。 通过 
使用 SMV 的子系统,用户可充分利用先进的备份和恢复操作, 例如无人值守 备
份,计划备份、磁带管理器,解密和加密,压缩解压缩以及自动切换设备等 功能

Point - in - time恢复
         Point - in - time 恢复使管理员控制逻辑日志在某一时间点上与数据
库保持 同步的程度,就是说,管理员只需提供希望服务器恢复的日期和时间即可
,这 个日期和时间在恢复过程中传给服务器。一旦服务器完成了物理恢复,服务
器 再处理逻辑日志,找到比预定时间晚的第一个事务组的记录后停在该点,凡在
 该点之间未结束的事务全都回滚。
字典和存贮过程缓存
       只读数据字典(系统目录)中的数据和存贮过程由用户共享, 而不是拷
贝 。其结果是优化了的存贮器的利用和大量使用的过程的高速执行,这将给许多
 应用带来实质性的好处,特别是那些需要存取许多具有大量列的表或访问许多 
存贮过程的应用。
瀑布式删除
       瀑布式删除在父记录被删除时自动删除一个表中所有的子记录。 这样就
简 化了用户的应用程序。如果因为某种原因,最初的删除语句或作为删除的结果
 而被触发 的任何活动失败了,那么整个删除语句将回滚。
        瀑布式删除的能力不仅仅提供一个显著的实现性能上的优势,     而且
由于 Informix动态服务器自动地删除而无须在应用程序中编码,从而大大简化了
系统 的使用和管理。另外,你也不必浪费时间和精力去编制业务/参照规范,这
就导致了更好的数 据库 一致性和更清晰的应用程序。
滚动游标
         Informix 动态服务器包括对滚动游标的支持,滚动游标使用户可以在
一组 数据中上下滚动显示, 方便了用户。
表调整
        为了更加提高数据库的能力,Informix动态服务器允许管理员调整表结
构, 例如增加一个字段而不影响正常使用。更进一步地讲,表的更改只发生在表
本 身上,不需要数据库由于做这些更改而将表考备到第二份上做修改,这样也使
 得大表修改造成的磁盘占用减少很多。
生设备管理
         为了进行快速存贮,Informix动态服务器通过生设备进行连续存贮。因
为 UNIX    文件系统不做连续磁盘空间的分配。     通过对原始磁盘空间的分
配, Informix动态服务器可生成自己的数据存贮系统。
         数据存贮在生设备上可使  Informix 动态服务器进行直接内存存取(
DMA ), DMA 直接从盘上向内存写数据,避免了UNIX 文件系统中数据存贮所需
 的UNIX 指 针机制,这样加快了事务对盘读写的运行效率。
高可用性数据复制(HDR)
        高可用性数据复制 (HDR) 使得中央数据库服务器例程能被复制到一个辅
助 服务器上去。 这种形式的数据复制有两个目的。 它创建了一个"热"备份服
务 器,以防主结点发生故障, 而且, 由于现在对于相同的数据有两个不同的服
务 器可用,用户就可以把面向生产的OLTP应用与决策支持应用分离开。
           HDR 允许主服务器和辅助服务器之间进行角色转换,如果主服务器系
统 发生故障,   辅助服务器可以手工地或自动地变成新的主服务器,  继承原
来的 读/写能力。主服务器恢复后变成辅助的只读服务器。这种角色转换提高了
高可用性,避免了在服务器之间将主服务器角色转过来再转过去。
        当启动了复制功能时, 主服务器上的事务日志(逻辑日志)信息以同步
的 或异步的方式通过网络自动地传送到辅助服务器上去。
        当在客户/服务器配置上实现HDR时,你的应用系统可以编码成在发生主
服 务器故障时自动连接到辅助服务器上去, 在数据库管理员将两个系统配置组
成 主/辅数据复制时,可以提出自动服务器转换要求。
安全性
       Informix动态服务器提供两种级别的访问特权, 以保证数据库安全性。
数据 库特权控制对数据库的访问, 以及控制在数据库中创建表和索引的权限。
数据 表权限指定一个用户允许对该指定的表所 执行的操作。
       在数据表级别上,Informix动态服务器支持修改、 插入和删除安全性,
同时 在列的级别上确保选择和修改安全性。 分开的特权语句用来对用户进行授
权和 取消授权访问级别。由于Informix动态服务器将安全性应用于用户登录级别
上, 因此无需单独的数据库登录。
       通过存储过程来建立自己的许可权: 该许可权与数据许可权不同, 存储
过 程提供附加的安全机制。 存储过程的所有者授权给用户以执行存储过程,使
用 户能够执行存储过程中所有的 SQL 操作,但限制对数据库的其它访问。通过
使 用存储过程可以禁止用户对数据库进行操作, 除非该用户具有存储过程的权
限 ,因此 DBA 可以将安全级别提高到存储过程级别。
C2级安全检查
       对任何数据库对象的操作, 安全检查均提供可跟踪性和可统计性,允许
数 据库管理员对任何指定用户的操作进行审查。安全审查特性完全符合由美国国
 家计算机安全中心提出的C2级安全性要求 。
       通过Informix 动态服务器可以在系统上有选择的监测用户的行为。安全
检查 的接口是由命令行驱动的或者通过参数配置, 你即可定义你所希望监测的
某些 用户的行为。

--
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.99.12.234]

[关闭][返回]