电脑交换区

电脑交换区,第1张

交换区(swap)是存在于高速存储设备上的一块区域,是虚拟内存系统重要的组成部分。通过交换区,我们不再局限于有限的物理内存空间,理论上可以无限地扩大虚拟内存系统,从而运行更多的程序,进行更多的业务交易,更充分地发挥硬件资源。交换区采用换入换出技术和存储器间互相交换进程或数据页面。根据一定的调度原则,内存中部分不常用的进程或数据页定期交换到交换区中,以便为需要运行的程序留出更多的可用空间。交换出去的进程或数据页根据需要时再交换进来,这样一来就实现了大量并发进程的管理。不适当的交换区设置不仅使换页守护进程忙于交换页面进出而消耗时间,而且使进程运行的速度、系统效率都大大降低,很大程度上影响了 *** 作系统的性能。当前,应用程序的日益庞大,运行业务的急剧增加,高性能数据库如Informix Online Dynamic Server为响应对数据的快速存取而使用的共享内存技术等,都对有限的物理内存空间提出了更高的要求,因此实施对交换区的有效管理具有重要作用。交换区容量的计算交换区一般在 *** 作系统初始安装时要求设定,大多数程序要求最少所需的交换区容量以正常运转。一般来说,当物理内存不超过256M时,主交换区容量设置为内存的两倍,超过256M时,则选择与物理内存的容量相同。 *** 作系统安装完毕后,随着应用程序的不断增加和业务的变化,原有的交换区设置可能满足不了需要,对系统的性能也产生影响,系统管理员可增加新的交换区作为辅助交换区与主交换区配套使用。管理员还应经常监视交换区的使用情况,根据需要及时作出必要的调整。业务总是处于一定的变化和发展中,因此管理员需要定期监控交换区的使用情况,如果可用容量不足,就要进行合理的增加。在HP-UX系统中,常用swapinfo来监控交换区的使用状况, 在SCO OpenServer中则使用swap命令,它们均可显示所有的交换区信息。HP-UX更以百分比的形式直观显示使用状况,如果使用比超过80%,管理员要及时分析原因,制定策略,谨慎调整,确保所有用户均可正常使用他们的应用程序,也使整个系统处于良好的运行状态。

1.物理日志

物理日志的作用在于保持一批dbspace页的前映象。这些“前映象”代表了所有数据在物理上与逻辑上都保持一致的这样一个时刻。将物理日志中的前映象与逻辑日志中的逻辑日志记录结合起来,可以恢复数据库自上一次已知的一致点以来发生的所有事务。这样的已知的一致点称为检查点。在快速恢复过程中,第一步首先用到物理日志,将整个系统恢复在Online中最近一次检查点时所处的物理一致的状态。

1) 物理日志的存放地址

当IDS初始化时,将会在rootdbs中创建物理日志。

当IDS处于静止方式时,用户可将物理日志从一个dbspace移到另一个dbspace中。用户这样做的目的是想尽量提高效率。

物理日志的位置由配置文件中的PHYSDBS参数指定。这个参数仅当用户决定将物理日志从 rootdbs中移到另一个dbspace中才必须被改变;否则,该参数在缺省情况下,仍包含着rootdbs的名称。

物理日志的大小由配置参数PHYSFILE指定,以kb为单位。用户可以修改物理日志文件的位置和大小。

2) 物理日志的内容

物理日志是一组连续的磁盘页面,每一个都包含有一个特别的Online页的副本。物理日志中的页面可以是除了blobspace中blobpage以外的其它任何Online页面。甚至可对应于系统开销页,例如chunk空闲链页、blobspace空闲映象页、blobspace位图页等等,这些页也必须在其上的数据被修改并刷新到磁盘上之前被复制到物理日志中去。

Blobspace blobpage并不出现在物理日志中,这是因为blob采用与其它数据类型不同方法记录日志。

3) 物理日志前映象

在某一次检查点后,某个页面第一次被修改时,该页的“前映象”将被写入共享内存中的物理日志缓冲区。在该被修改的页从共享内存刷新到磁盘上之前,该页的“前映象”应首先被刷新到磁盘上物理日志中。需要注意的是,仅当对页面的第一次修改才会导致往物理日志中写“前映象”。先写日志文件原则是为快速恢复所必需的。

4) 检查点 *** 作逻辑地清空物理日志

每次Online检查点 *** 作以后,物理日志中逐渐被填上发生修改的“前映象”。当再一次检查点 *** 作发生以后的瞬间,这时Online中的数据在物理上是一致的,这时也就再不需要原来的Online物理日志中的“前映象”了。(这对于继续执行的事务也同样适用。如果某一个这样的事务需要执行回滚 *** 作,则执行回滚所需的信息都已包含在逻辑日志文件中了。)在检查点 *** 作完成时,Online将逻辑上清空逻辑日志,Online仅仅重置物理日志中的指针,标明下一组“前映象”所存储的起始位置。Online 循环使用物理日志,不断地覆盖那些已过时的数据。

检查点 *** 作是唯一可以清空物理日志的机制。如果物理日志75%的空间已被占用,则Online将启动一次检查点 *** 作。

2.逻辑日志

逻辑日志文件的作用在于自上一次Online archive以来,对Online数据所发生的变化进行记录。Online把逻辑日志分成三个或更多个相互分离的磁盘空间,每磁盘空间称为一个逻辑日志文件。相应于每一个逻辑日志文件有一个唯一标识号。

1) 逻辑日志与快速恢复

Online使用逻辑日志可以恢复自上一次已知的物理一致点以来发生的所有事务。这一已知的物理一致点在Online系统中称为检查点。快速恢复中,当Online使用物理日志将整个系统恢复到上一次检查点时所处的状态以后,Online将使用逻辑日志记录将整个系统恢复到最近一次逻辑日志记录时刻的逻辑一致性状态,这实际上是快速恢复的第二步骤。

2) 逻辑日志与数据恢复

将逻辑日志文件的备份磁带与最近一次的Online的archive结合在一起,可以将Online系统重新恢复到最近一次逻辑日志记录时的状态。

3) 逻辑日志文件被循环使用

Online通过标识一个逻辑日志文件为used(使用)状态来保护逻辑日志文件不被覆盖,直至该文件被备份到磁带上并且快速恢复已不再需要该逻辑日志文件时为止。当一个逻辑日志文件中的所有记录对应的事务都已完成时,快速恢复过程将不再需要该逻辑日志文件。如果上面所说的两个重要条件都已被满足,即逻辑日志文件已被备份到磁带上,并且快速恢复也已不再需要该逻辑日志文件,这时Online将该逻辑日志文件标记为free(空闲)状态,该文件也就可以被再次用以填如逻辑日志记录。

在 Online处理过程中,Online按数字顺序依次填充空闲的(即状态为free)的逻辑日志文件。当第一个逻辑日志文件变满时,Online接着开始填充下一个逻辑日志文件,如果下一次逻辑日志的状态为“used”而不是“free”,则正常的Online处理将被挂起。Online不能跳过该标记为“used”状态的逻辑日志文件而去填充别的空闲的日志文件。保证空闲的逻辑日志文件在Online处理过程中总可以被得到,这是Online管理员的职责。

Online至少需要三个逻辑日志文件以便循环使用逻辑日志文件,当一个逻辑日志文件在接收当前记录时,Online有可能正将另一个日志文件往磁带上备份,第三个日志文件是当前日志文件已满,而备份另一个日志文件的工作尚未完成时所需要的。(这个使用三个逻辑日志缓冲区的考虑是类似的)。

4) 逻辑日志文件:标识号与备份

逻辑日志备份带以逻辑日志所包含的唯一数值标记。每当一个日志文件填满时,逻辑日志标识号就增加数值1。例如,如果一个Online系统包含三个逻辑日志文件,则相应的三个日志文件的标识号为1、2、3。当逻辑日志文件1第一次被释放以便循环使用时,它将变为逻辑日志文件4,第二次它又将变为逻辑日志文件7。

5) 逻辑日志文件的内容

逻辑日志文件中包含下述五种类型的记录:

所有数据库的SQL定义语句。

检查点记录。

有关配置修改的记录。

对于那些创建时使用日志登录的数据库的SQL数据 *** 纵语句。

有关某个数据库日志登录状态变化的记录。

即使没有一个数据库创建时使用了事务日志登录,在处理过程中,Online也会将前面三种类型的记录写入逻辑日志文件。逻辑日志记录可以跨越Online的整个页面,但它们却不能跨越逻辑日志文件。

6) 逻辑日志文件的配置

当Online初始化时将会在rootdbs中创建逻辑日志文件。在Online处于静止方式以后,用户可以从rootdbs中删除一个或多个逻辑日志文件,也可以往另一个dbspace中增加一个或多个逻辑日志文件。用户有可能为了提高效率而这样做。

在Online磁盘空间初始化以后,用户就不能再修改逻辑日志文件的大小了。如果一逻辑日志文件被删除,则由该逻辑日志文件占据的空间将被释放掉,并被链入chunk空闲链页。

7) 大小与数目方面的限制

Online管理员决定每一个逻辑日志文件的大小,以及分配给整个逻辑日志的磁盘空间的大小。每个逻辑日志文件至少要被分配到200K的磁盘空间。

逻辑日志文件的最小数目为3,最大数目则由一页上可容纳的逻辑日志描述字的数目所决定。对于一个2K大小的页,最大的日志文件数目为60。

8) 影响逻辑日志文件填充速度的因素

下列四个因素会影响一个事务的大小与持续时间:

逻辑日志文件记录的大小

事务打开时间的长度

CPU与逻辑日志的活动级别(Actirity Level)

事务回滚的频率(Freqency)

逻辑日志记录的长度随处理 *** 作与当前Online的环境而变化。一般来讲,数据行越长,逻辑日志记录也就越大。

不仅如此,其它一些因素还会影响单一事务的大小与 *** 作时间。例如,一条Alter table语句将会为每一次往新修改了的表中的插入 *** 作生成一条逻辑日志记录。数据行的大小与表的大小都将会影响生成的逻辑日志记录的数目与大小。然而在一些情况下,数据行大小是无关紧要的。例如,逻辑日志中的一条检查点记录将包含对应于所有检查点发生时刻仍处于打开状态的事务的项目。检查点记录的大小仅仅反映了当前的数据库活动的级别与类型,而不涉及到任何特定的行的大小。

事务的持续时间也是一个不能为用户所控制的主要的变化量。一个应用,也许并不需要过多的逻辑日志记录空间,但如果用户允许事务在很长时间内保持打开,这时就可能造成生成长事务错误。在保证不产生长事务错误的前提下,可用的逻辑日志空间越多,就有可能允许越长的事务保持打开状态。

CPU的能力可能影响Online服务器进程完成事务的能力。重复地往逻辑日志文件写,增加了每个服务器进程完成事务所需的CPU时间。逻辑日志 *** 作的增加,可能还隐含着同时增加了对逻辑日志锁与latch的竞争。(也正是这个原因,用户才有可能需要将逻辑日志文件从rootdbs移到另一个不太活跃的dbspace中去)。

回滚的频率也影响着逻辑日志被填充的速率。尽管回滚记录很小,但回滚本身也需要逻辑日志文件空间。而且,回滚也增加对逻辑日志的 *** 作。

为了准确的计算informix的表空间,极佳的做好的磁盘的I/O和表空间的利用,主要从如下几个方面考虑:

# 确定每个索引的长度。

# 确定索引的总长度。

# 计算索引开销。

# 确定表的初始大小。

# 索引空间需要的大小。

# 将索引空间转换成千字节(kilobyte)。

# 确定以字节为单位的页大小;用它减去 28 就可以获得可用的页面空间。

# 确定行的长度。

# 确定一页上可以完整放置多少行。

# 确定初始表的数据页的数目。

# 初始表中数据页面所需的空间大小。

# 将数据大小转换成千字节(kilobyte)。

# 确定以千字节(kilobyte)为单位的初始区段大小。

# 确定表的增长。

# 下个区段的大小。

给你个脚本,能看到dbspace下数据库和表的占用情况

#!/bin/bash

dbaccess << !

database sysmaster;

output to /tmp/dpmdbs1txt select cname dbspace,bdbsname database,btabname,

round(sum(dpe_size)2/1024) size_1m

from systabinfo a,systabnames b,sysdbspaces c,sysptnext d

where ati_partnum = bpartnum and

bpartnum = dpe_partnum and

partdbsnum(ati_partnum)=cdbsnum

and cname="dpmdbs1"

group by 1,2,3

order by 4 desc

!

设置以下环境变量:

INFORMIXDIR the location of your IDS installation

PATH add $INFORMIXDIR/bin

add $INFORMIXDIR/extend/<spatialDataBladeDir>/bin (see below)

安装Spatial DataBlade。安装指导可从 IDS 1110 信息中心获得(参考本文末尾的链接)。

下面的指令假设您已经在默认位置安装好了 Spatial DataBlade version 821: $INFORMIXDIR/extend/spatial821xC1,其中 ‘x’ 表示特定于平台的字母。对于 64 位 Linux x86,默认位置为 $INFORMIXDIR/extend/spatial821FC1。可根据您的环境对指令作出相应修改。

为空间数据创建 sbspace。注意:sbspace 名必须与 ONCONFIG 文件中的 SYSSBSPACENAME 值匹配。本例假设 sbspace 名为 syssbspace。

在与根dbspace相同的目录中创建名为 syssbspace 的空文件(ONCONFIG 文件中 ROOTPATH 的值指定根dbspace的名称和位置)。

将文件所有权改为informix:informix。

将文件权限改为mode 660。

以用户informix的身份,创建sbspace:

onspaces -c -S syssbspace -p <fullpath>/syssbspace -o 0 -s 100000

创建您的数据库。

dbaccess - -

create database spatialdb;

注册 Spatial DataBlade。

使用 blademgr 实用工具注册 Spatial DataBlade。Spatial DataBlade 依赖于 R-Tree DataBlade,后者由 IDS 自动附带。因此,必须同时向您的数据库注册这两个 DataBlade。

blademgr

register ifxrltree200 spatialdb

register spatial821FC1 spatialdb

list spatialdb

DataBlade modules registered in database spatialdb:

ifxrltree200 spatial821FC1

加载空间数据。

从City Limits 2007和Tsunami Inundation Line下载中提取文件,并分别保存在两个目录中,即citylim_2007和tsunami:

ls citylim_2007

citylim_2007dbf

citylim_2007prj

citylim_2007sbn

citylim_2007sbx

citylim_2007shp

citylim_2007shpxml

citylim_2007shx

ls tsunami

PRJdevelopmentpdf

tsunamidbf

tsunamihtml

tsunamipdf

tsunamiprj

tsunamishp

tsunamishpxml

tsunamishx

1安装oracle

11g会自带一个叫做sql

developer的工具,打开sql

developer,

2在sql

developer中我们新建一个连接,点击左上角的“绿色加号”

3填写完配置以后可以点击“test”来测试数据库连接是否正确,如上图所示,左下角有“status:success”则表明数据库连接正确。

创建新用户

1连接登陆数据库

2接着为orcl这个数据库创建新用户

3填写用户名和密码,以及为用户指定表空间

4为用户分配权限

5查看创建用户和分配权限所对应的sql代码。

6使用新用户创建数据库连接,使用新账户创建数据库连接的方法和第一步类似。

目前有许多DBMS产品,如DB2、Oracle、MicrosoSQLServer、SybaseSQLServer、Informix、MySQL等,它们在数据库市场上各自占有一席之地。

中间件所包括的范围十分广泛,针对不同的应用需求涌现出多种各具特色的中间件产品。但至今中间件还没有一个比较精确的定义,因此,在不同的角度或不同的层次上,对中间件的分类也会有所不同。由于中间件需要屏蔽分布环境中异构的 *** 作系统和网络协议,它必须能够提供分布环境下的通讯服务,将这种通讯服务称之为平台。基于目的和实现机制的不同,可以将平台分为以下主要几类:

远程过程调用(RemoteProcereCall)

面向消息的中间件(Message-OrientedMiddleware)

对象请求代理(ObjectRequestBrokers)

以上就是关于电脑交换区全部的内容,包括:电脑交换区、informix 逻辑日志与物理日志分配多大、informix多个表空间能否知道某个表空间对应哪些表等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9738789.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存