Informix TRAIN文档详细解说

一、磁盘数据组织结构

在INFORMIX-OnLine的磁盘数据组织结构中的最上层为逻辑概念上的数据库空间dbspace,每一个数据库空间都有一个或若干个物理单位数据存储块chunk组成,镜像数据存储块mirror保证当根数据存储块故障时,OnLine能够继续工作。每一个数据存储块都有若干个数据页page组成,为了提高输入和输出效率,若干个连续的数据页组成数据连续页extent。用户的数据库database和数据表table存储在缺省的或者指定的数据库空间中,数据表的逻辑概念上的存储空间数据表空间tblspace有一个或若个安数据连续页extent组成,数据记录row存放在数据页page中。

为更好的的支持多媒体应用,多媒体数据可以存放在二进制大对象数据页Blobpage中,若干个二进制大对象数据页在此二进制大对象空间Blobspace。 OnLine使用逻辑日志Logicallog、物理日志Physicallog来管理数据库日志操作。

1.数据存储块chunk

INFORMIX-OnLine的数据存放在物理上连续的数据存储块chunk中,数据存储块是OnLine数据存储的最大的物理单位。数据存储块可以有两种构造方法,其一是直接构造在系统的物理磁盘上,其二是构造在操作系统的文件或者卷上。

在第一种情况下,在操作系统上仅仅定义了这个(块)磁盘但没有格式化这个(块)磁盘,因此在这上面的所有数据操作都有OnLine来完成,操作系统对它不存在任何管理,数据空间在物理磁盘上连续,这种数据的存储空间称为原始空间rawspace。

而在第二种情况下,操作系统不仅定义了这个数据存储空间(文件),还管理这个数据存储空间(文件),数据文件操作时的内存缓冲、输入与输出。数据空间的建立受操作系统的制约,在物理存储上不连续。我们称这种数据存储空间为非原始空间cookedspace。

比较这两种数据的存储空间,原始空间在磁盘上连续,没有操作系统的缓存和制约,非原始空间在磁盘上不连续,存在着操作系统的缓存和操作系统的输入/输出的制约,因此在实际应用中,采用原始空间效率高于非原始空间,由于原始空间与系统设备有关,同时不同操作系统对设备的定义的不一致性,定义非原始空间比定义原始空间来得简单。我们将原始空间所对应的磁盘称原始设备rawdevice,而将非原始空间所对应的操作系统文件称操作系统文件cookedfile。

为了进一步提高数据库运行的效率,我们通常选用字符设备作为存放实际的原始设备,这样在我们输入/输出数据时,可以充分发挥系统的DMA能力。当我们使用原始设备时,可以在同一个原始设备上建立多个数据存储块。通过对数据存储块的参数OFFSET和SIZE的定义,其单位为KB,我们可以定义多个数据存储块在同一个磁盘或磁盘块上,参数OFFSET定义数据存储块的起始位置,参数SIZE定义数据存储块的大小,用户在设置参数OFFSET和SIZE时必须保证在物理磁盘上没有相互覆盖。

在原始设备/dev/rdsk/c0t1d1s0上建立三个数据存储块chunk1、chunk2和chunk3,它们的大小分别为50MB、30MB和50MB,由于chunk的SIZE单位为KB,因此chunk1、chunk2和chunk3的SIZE分别为50000、30000和50000。在通常情况下,第一个数据存储块chunk1的OFFSET为0,这样第二个数据存储块chunk2的OFFSET应为第一个数据存储块chunk1的SIZE,而第三个数据存储块chunk3的OFFSET则为第二个数据存储块chunk2的OFFSET加上第二个数据存储块chunk2的SIZE。为保证在两个数据存储块的相邻边界处不发生重叠,可以将后一个数据存储块的起始位置稍微挪后一点。如果采用操作系统文件作为数据存储空间时,一般不在一个文件中建立多个数据存储块。一个文件中建立多个数据存储块,操作系统对文件中数据的定位时间将更长。

不管是原始设备还是非原始设备,OnLine的概念是一致的。在实际应用中,可以一部分数据存储块用原始设备而另一部分用非原始设备,只是原始设备采用OnLine的管理的I/O机制,而非原始设备采用操作系统unix的I/O机制。

2.数据页page

INFORMIX-OnLine在数据存储块中以数据页page为单位来组织存放数据,并以数据页为单位来输入输出数据,它的大小与数据在共享内存中数据缓冲区相一致,所以OnLine的数据页的大小是不可以改变的。数据页是OnLine组织存放数据的最小的物理单位。

根据不同从操作系统,OnLine的数据页的大小是不同的。例如在SCO、AT&T、UNISYS和HP等操作系统平台上,每一个数据页的大小为2KB,而在IBM和SEQUENT等操作系统平台上,每一个数据页的大小则为4KB。同时数据在共享内存中的缓冲区的大小也是根据操作系统的不同而不同,其值与数据页的大小一致。

3.数据连续页extent

为提高数据操作的效率,OnLine将若干个在物理磁盘上连续的数据页组成一个数据连续页extent。当用户创建一个数据表时,OnLine以数据连续页为单位在数据存储块中分配一块连续的空间,当用户的数据写满了这个数据连续页后,OnLine将以数据连续页为单位在数据存储块中申请一块连续空间,以存放更多的用户数据。在缺省情况下,初始化时第一个数据连续页为8个数据页。

数据连续页不能跨越数据存储块,当OnLine需要申请较多的数据页构成数据连续页时,如果OnLine找不到如数的在物理设备上连续的数据页时,OnLine将放弃这些不够构成一个数据连续页的数据页,OnLine将去下一个数据存储块去申请如数的在物理设备上连续的数据页。因此在实际系统中,过小的数据存储块将不利于数据操作性能和数据存取效率。

4.数据库空间dbspace

在INFORMIX-OnLine的磁盘数据组织中,数据库空间dbspace处于一个比较上层的位置。数据库空间是数据库在逻辑概念上的存储空间,一个或若干个数据库空间组成OnLine数据实体。在物理磁盘上,每一个数据库空间总对应于一个或几个数据存储块,在这些与数据库空间对应的数据存储块中,一定有一个数据存储块是根数据存储块,而其它的则是后继数据存储块。从功能上来看,根数据存储块除了具有后继数据存储块能够存储用户数据外,它还具有管理本数据库空间的功能;从数据存储块的保留页来看,根数据存储块具有56个保留页,而后继数据存储块仅有3个保留页。当然不同版本的OnLine在主、后继数据存储块的保留页的数量可能不同,但是根数据存储块需要更多的保留页来保存本数据库空间的定义。

在OnLine初始化后有一个称为根数据库空间rootdbs的数据库空间,它是OnLine系统的第一个数据库空间。当建立根数据库空间时,它的根数据存储块将被建立,所有数据库的日志和所有的定义信息都必须存放在该数据存储块中,它比所有其它根数据存储块的保留页更多。由于数据库日志定义的需要,因此对根数据库空间的根数据存储块的定义尤其重要,关于如何正确地定义根数据库空间的根数据存储块将在后面详细介绍。

为了提高数据库系统运行的效率,INFORMIX新的动态服务器OnLineDynamicServer7.1中引入了临时数据库空间的概念。在没有临时数据库空间的系统中,临时数据将建立的缺省的根数据库空间中,由于临时数据操作需要频繁的增加、删除,会给根数据库空间的数据存储块中造成很多碎片,将导致数据库操作效率的降低;另外当数据库备份时,那些临时数据也一起作备份,从而增加了数据备份量,降低了数据备份的效率。引入临时数据库空间后,用户的临时数据或者数据操作的中间结果将被存放在临时数据库空间中,同时当数据备份时临时数据库空间将不再被备份。

时间: 2025-01-29 07:59:43

Informix TRAIN文档详细解说的相关文章

mahout文档自动分类(有监督学习)问题求救

问题描述 mahout文档自动分类(有监督学习)问题求救 Hadoop2.2.0 mahout0.6想做一个word文档自动分类的程序(有监督学习类别事先已经定义好就两类财务和人事)始终不成功求救一训练数据搞了7个finance的word和7个hr的word用程序生成一个分词后的文本.如下:terms.txtfinance 会计 会计制度 会计 制度 会计核算 会计 核算 aafinance 会计 会计制度 会计 制度 会计核算 会计 核算 aafinance 会计 会计制度 会计 制度 会计核

用excel解析XML文档进行网站数据分析

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 较多的网站会选择将XML作为数据交换的文档,原因在于XML可以跨平台工作的,它包括了从XML文档中获取数据和将数据转化为XML文档两个方面.excel的VBA就能完成这样的工作,通过建立映射既能从XML中获取数据并在excel中显示,也可以通过映射将工作表中的数据转化为XML文档.这极大地方便了站长们对于站内一些数据的管理.统计和分析.接下来

PHP遍历XML文档所有节点的方法

 这篇文章主要介绍了PHP遍历XML文档所有节点的方法,实例分析了php操作XML文件的技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了PHP遍历XML文档所有节点的方法.分享给大家供大家参考.具体实现方法如下: 1. contact.xml代码: ? 1 2 3 4 5 6 7 8 9 10 11 12 <contact id="43956"> <personal> <name> <first>J</fir

win7系统电脑打印文档后出现隐藏的网站链接怎么去掉?

  win7系统电脑打印文档后出现隐藏的网站链接怎么去掉?         方法一: 1.按ALT+F9可将文档中的域代码全部显示出来(特有字会被链接替换); 2.然后编辑--替换,在查找内容中输入除{ }符号的其它字符(如果将符号{}一并拷贝过来的话会自动换为特有字),在"替换为"中输入特有字,"全部替换"即可. 方法二: 1.工具--选项,在"打印"选项卡中找到"打印文档的附加信息",取消勾选"域代码"

word文档-如何在360浏览器中直接 打开word文件 ?

问题描述 如何在360浏览器中直接 打开word文件 ? 在IE浏览器中可以.碰到WORD文档,自动就下载了!为什么? 解决方案 需要有浏览器插件,IE一般有OFFICE插件,所以可以直接打开 解决方案二: 因为360是非法流氓软件,它根本就是粗陋地用IE的内核拼凑了一个山寨的浏览器,做一个稍微有点用的软件功能只是它实施违法犯罪侵害用户计算机和数据的幌子而已. 解决方案三: 这个好像需要转换吧.吧word转成pdf格式的然后在线显示!

让你的WPS office文档美丽动人

文档有就像我们人类一样也需要梳妆打扮.一篇好的文档,不但要内容精彩.感人,同时也要具有华丽的外表,才能算是完美.因为我们打开文档时,首先映入我们眼帘的是文档的页面布局,其实才是文档的内容,所以,如果文档的页面设置合理,那么在一定程度上也能为文档锦上添花,使之更加"美丽动人". 那究竟怎样才能让我们的文档"美丽动人"呢?除去格式设置及文档背景外,页眉的设置也是一个也是相当重要的,通过页眉我们可以完成一些其它设置所无法完成的操作.比如说我们需要制作一个文档,而要求在页面

win7电脑上"我最近的文档"显示为空的原因

电脑总是会记录我们平常操作电脑打开的一些文档.一般来说我们浏览过的文档历史记录会在我最近的文档列表中看到,不过有时也会遇到最近的文档的列表显示为空,最近的文档浏览的历史记录都不存在了,那该怎么解决呢? 方法一: 1.在运行对话框中输入"regedit"打开注册表,然后依次展开定位到"HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer"项; 2.接着在窗口右侧中找到"

Win7环境下Excel文档乱码如何修护

  Win7环境下Excel文档损坏修复策略. 损坏的Excel文档 借用WPS软件打开Excel文档依然是不行 Excel文档乱码 一.自动修缮: Excel乱码修复工具 下载 ExcelFIX(Excel损坏修复) 下载 自动修复法: 此法适用于Excel XP程序运行出现故障关闭程序或断电导致的文件受损.重新运行Excel XP,它会自动弹出"文档恢复"窗口,并在该窗口中列出已自动恢复的所有文件.用鼠标选择要保留的文件,并单击指定文件名旁的箭头,根据需要选择"打开&qu

MFC框架下 单文档视图中多视图切换问题

问题描述 MFC框架下 单文档视图中多视图切换问题 在MainFrm.cpp 里对主视图进行了切分 BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs CCreateContext* pContext){ // TODO: Add your specialized code here and/or call the base class // CRect rc; // 获取框架窗口客户区的CRect对象 GetClientRect(&rc);