巫师之巫师3 昆特牌全收集界面都有什么用 巫师之巫师3 昆特牌全收集界面作用分

如何更改在Informix的SQL表名
第1步打开您的操作系统的命令行,键入&dbAccess的&(不带引号),然后按&输入&推出的DB -访问实用工具。第2步按&C&键来打开数据库接入&连接&菜单。第3步选择&连接的&连接&子菜单&,然后按&Enter&键。第4步提供您的用户名和密码提示时,按下&回车&后每个提示。第5步选择你的数据库服务器使用键盘的箭头键,然后按&Enter&键。第6步选择你的数据库使用键盘的箭头键,然后按&Enter&键。第7步返回到主数据库接入,然后按屏幕的&Q&键打开的&查询语言&菜单。第8步选择&新建&选项使用键盘的箭头键,然后按下&Enter&键。第9步键入以下命令:重命名表current.name要new.name以&current.name与当前表的名称和&new.name用新名称&&你想申请表。按&Enter&键运行该命令,改变你的表的名称。
请各位遵纪守法并注意语言文明&>&&>&&>&&>&Informix 系统表(syscolumns)中字段类型(coltype)字段的含义
Informix 系统表(syscolumns)中字段类型(coltype)字段的含义
上传大小:6KB
Informix 系统表(syscolumns)中字段类型(coltype)字段的含义,
字段类型说明和查询SQL语句
综合评分:5(2位用户评分)
所需积分:1
下载次数:12
审核通过送C币
创建者:qq_
创建者:nigelyq
创建者:ccbhnldlrb
课程推荐相关知识库
上传者其他资源上传者专辑
数据库热门标签
VIP会员动态
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
android服务器底层网络模块的设计方法
所需积分:0
剩余积分:720
您当前C币:0
可兑换下载积分:0
兑换下载分:
兑换失败,您当前C币不够,请先充值C币
消耗C币:0
你当前的下载分为234。
Informix 系统表(syscolumns)中字段类型(coltype)字段的含义
会员到期时间:剩余下载次数:
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:通过ontape修改数据库日志方式
本文所属图书&>&
这本书主要协助你提升Informix产品的使用技能,协助你成功地管理Informix数据库服务器,基于Informix数据库进行二次开发,同时,也有一些章节是介绍如何进行应用开发的,如存储过程、触发器、分片的介绍等。在读...&&
ontape的-A、-B、-N和-U选项用于修改的日志模式。当要将从不记日志修改为记日志时,-A、-B和-U选项必须要和-s选项一起使用,在事务开始前,数据库需要通过备份来记录一个一致状态。如果是将日志方式从unbuffered修改为buffered,或者反过来修改,则不需要使用-s选项。在修改数据库的日志方式时,服务器必须可以对数据库获得一个独占锁,因此不能有用户连接使用这个数据库,如果有用户仍在使用这个数据库,在修改数据库的日志模式时,将报-107的错误,此时,你通过onstat -g sql可以看到哪些用户在使用这个数据库,可以退出这些程序,或者通过onmode -z杀死这个连接的线索。
可以通过一个简单的命令修改多个数据库的日志方式。例如,将stores9数据库从unbuffered修改为不记日志,将salary和personnel数据库从不记日志修改为buffered logging。
ntape -s -N stores9 -B salary personnel
您对本文章有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力&&
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。如何向表中增加、修改字段? -
- ITeye技术网站
alter table 表名 add 字段名 数据类型 default 默认值
说明:数据类型如,varchar(50)
alter table BANK_SOKECT_INFO ADD COLUMN DEPTNO& varchar(8);
如何删除表中字段
ALTER table 表名 DROP column 字段名
ALTER TABLE — 更改表属性
语法
ALTER TABLE table [ * ]
&& ADD [ COLUMN ] column type
ALTER TABLE table [ * ]
&& ALTER [ COLUMN ] column { SET DEFAULT value | DROP DEFAULT }
ALTER TABLE table [ * ]
&& RENAME [ COLUMN ] column TO newcolumn
ALTER TABLE table
&& RENAME TO newtable
ALTER TABLE table
&& ADD table constraint definition
Inputs
table
试图更改的现存表的名称.
现存或新的列名称.
新列的类型.
现存列的新名称.
表的新名称.
table constraint definition
表的新的约束定义. New table constraint for the table输出
ALTER
从被更名的列或表返回的信息.
如果一个列或表不存在返回的信息.
描述
ALTER TABLE 变更一个现存表的定义.ADD COLUMN 形式用与 CREATE TABLE一样的语法向表中增加一个新列/字段。ALTER COLUMN 形式允许你从列/字段中设置或者删除缺省(值)。注意缺省(值)只对新插入的行有效。RENAME 子句可以在不影响相关表中任何数据的情况下更改一个表或者列/字段的名称。因此,表或列/字段在此命令执行后仍将是相同尺寸和类型。ADD table constraint definition 子句用与 CREATE TABLE一样的语法向表中增加一个新的约束。
向表中增加一个 VARCHAR 列:
ALTER TABLE distributors ADD COLUMN address VARCHAR(30);
对现存列改名:
ALTER TABLE distributors RENAME COLUMN address TO
对现存表改名:
ALTER TABLE distributors RENAME TO
向表中增加一个外键约束:
ALTER TABLE distributors ADD CONSTRAINT distfk FOREIGN KEY (address) REFERENCES addresses(address) MATCH FULL
***********************************************
DB2取前十条记录 DB2修改字段长度 DB2增加字段方法
DB2取前十条记录:
DB2 =& select istop from news where id =370 fetch first 10 rows only& DB2
修改字段长度:
DB2 alter table DB2admin.config alter cvalue set data type varchar(255)&& DB2 =& alter table news alter AUTHOR set data type varchar(250)&& DB20000I SQL 命令成功完成。
DB2 =& describe table news& DB2
增加字段方法:
alter table table_name&& add column column_name data type varchar(250)
浏览 60353
浏览: 87883 次
来自: 广州developerWorks 社区
Informix 数据库中的大对象数据类型包括简单大对象:byte、text ,智能大对象:blob,clob。在众多数据库系统中都广泛采用大对象数据类型来存储文本、图形、声音、录像等多媒体内容。如何正确使用和操作大对象数据直接影响处理性能。本文通过介绍 Informix 大对象数据类型的特点、使用方法的同时,重点讲解如何存储、访问大对象数据以获取最佳性能。
, 高级软件工程师,
孙国荣,目前在 IBM 中国开发中心任职,主要从事 Informix 数据库技术的研究和推广。在 IT 行业有丰富的工作经验。是 IBM 认证的 Informix 技术专家。
Informix 大对象数据类型介绍简单大对象 (Simple large objects)Informix 简单大对象包括 TEXT 和 BYTE 类型。Text:大字符对象,存储大块文本信息,如:文档、程序源代码及文本文件等。尽管你可以存储任何数据到 Text 中,但正常情况下,尽量在 Text 类型中存储可打印的 ASCII 文本信息。Text 数据类型相对于 char(n) 、varchar(n) 和 lvarchar(n) 的优势就是 TEXT 容量大:最大支持 2G,而 LVARCHAR 最大支持 32739 byte,varchar 最大支持 255。但是也有较明显的缺陷:空间浪费,如果存储在 blobspaces 上,一个 Text 对象需要独立占用一个磁盘数据页空间,所以小对象会浪费空间。同时也有 SQL 支持的限制,访问 Text 数据的 SQL 有较多的限制。Byte:二进制数据,最大支持 2G,可以用来存储如:图像、程序对象文件、Word 文档、Excel 等。相对 Text 和 Char(n) 而言,Byte 数据类型的优势是可以存储任意数据。缺陷和 Text 一样。智能大对象 (Smart large objects)智能大对象包括 CLOB 和 BLOB 类型。CLOB:智能大字符对象,一般用来存储文本类信息,最大支持 4T 大小,存储在 sbspaces 上,存储大块文本信息相对于 blobspaces 而言,sbspaces 有如下优势:可以通过 API 读取、写入 sbspaces 的数据;可恢复性,可以设置日志记录所有的写操作,因此当事务过程中发生失败,可以对事物进行回滚操作;遵守事务隔离级别模式,可以对智能大对象进行不同级别的锁;一个语句可以只访问一个智能大对象的部分信息。BLOB:智能二进制对象,一般用来存储数字对象,如图像、声音、视频等,最大支持 4T 大小,与 CLOB 一样相对于 BYTE 有同样的优势。如何选择适当的大对象类型当我们需要使用 Informix 存储和管理大对象数据时,我们可以根据如下情况来选择合适的数据类型。尽量选择 char、varchar、lvarchar 来存储字符数据,这些基本类型提供更好的性能和更多的功能支持。只有当需要更大的数据类型时,如一个大对象记录超过 2 个 pages,我们才考虑大对象数据类型。由于大对象数据类型支持无日志、可以不使用 buffer pool 方式,所以对于数据量较大的情况,大对象数据类型能有效提高处理性能。另外有一种特殊情况下,需要考虑使用大对象数据类型,那就是分离表的基本字段和大字段的存储,当表的 rowsize 较大情况下,访问表的某一些 SQL 不需要访问大对象字段数据,或者另外一部分 SQL 只需要访问大对象字段数据,那么如果采用大对象数据类型来存储,可以将表的这些字段进行分离,访问表的 I/O 也分离,只需要查询表基本列的 SQL 就不需读取大对象字段的数据,这样可以提高 SQL 速度。一般情况下,推荐使用智能大对象类型,智能大对象提供更多的函数、访问等支持。从理论上讲简单大对象比智能大对象的性能更好些,若要获取最佳性能,使用简单大对象。Informix 大对象使用介绍如下将介绍 Informix 简单大对象、智能大对象的使用情况。简单大对象清单 1. 创建一个表包含 Text 和 Byte 数据类型 create table t_simple_objects(
id_num integer,fname char(15),lname char(15),
BYTE in blobspace1
);读取和存储 Text 或者 Byte 数据,我们一般使用支持嵌入 SQL 的程序方式,如 Java、ESQL/C,可以 select、insert 或者 update 来访问和操作简单大对象数据。在非 SQL 语句中,可以对 Text/Byte 列进行如下操作:
数学运算和布尔表达式
Group by 和 order by
UNIQUE 检测
可以是索引的一部分在 SELECT 语句中,可以在 TEXT/Byte 上进行:
Select 返回 Text/byte 列值
使用 LENGTH() 测试长度
使用 is[not] null 进行过滤
SELECT vita[1,1000] FROM t_simple_objects WHERE id_num=100;Insert 语句,只能将 null 值插入,不过可以使用 insert ... select ... from 方式拷贝数据。Update 语句,只能将更新为 null,不过可以同通过子查询方式返回 Text/Byte 来更新。智能大对象清单 2. 创建一个表包含 BLOB 和 CLOB 数据类型 CREATE TABLE t_smart_objects
id_num int,
picture blob,
felony clo
)PUT picture in(sbspace2);与 Text 或者 Byte 数据一样,读取和存储智能大对象数据,我们一般使用支持嵌入 SQL 的程序方式,如 Java、ESQL/C,可以 select、insert 或者 update 来访问和操作简单大对象数据。同时 Informix 针对智能大对象数据提供了专用的 API 来更智能的操作智能大对象数据。同时,Informix 还提供了如下直接访问智能大对象的 SQL 函数:表 1. Informix 提供的直接访问智能大对象的 SQL 函数
Function name
FILETOBLOB()
拷贝一个文件到 BLOB 列中
FILETOCLOB()
拷贝一个文件到 CLOB 列中
复制 BLOB 或者 CLOB 数据到另外一个 BLOB 或者 CLOB 列中
LOTOFILE()
复制 BLOB 或者 CLOB 到一个文件中
清单 3. 函数使用示例 INSERT INTO t_smart_objects
VALUES(1,FILETOBLOB('D:\pic.jpg','client'),FILETOCLOB('/tmp/test.txt','server'));
UPDATE t_smart_objects (picture)
picture =(SELECT LOCOP(mugshot,'inmate','picture') FROM fbi_list WHERE fbi_list.id=200)
WHERE t_smart_objects.id_num=100;
SELECT id_num,LOTOFILE(picture,'picture_100.jpg','client')
FROM t_smart_objects
WHERE id_num=100;其中:client 表示文件位于客户端,server 表示文件位于服务器端。大对象数据的存储结构本节讲述 Informix 大对象数据的磁盘存储结构和访问过程,按简单大对象和智能大对象分别进行介绍。简单大对象简单大对象存储空间 Blobspaces,只能用来存储简单大对象数据(Text 和 Byte),Blobspace 针对 Text 和 Byte 数据的特点进行了特殊设计的一种存储空间。Informix 使用不同方法访问不同的存储空间数据。简单大对象(Text 或者 Byte)可以存储在 dbspaces 或者 blobspaces 中。如果简单大对象存储在 dbspace 上,如图 1 所示,简单大对象和其他字段作为一个整体存储在 dbspace 上,使用 56-byte 的描述符指向简单大对象。简单大对象写入磁盘的方法和普通表数据一致,即先将数据缓存在共享内存的 buffer 中,然后再刷新到磁盘,同时,数据库需要记录简单大对象 DML 操作的物理、逻辑日志信息。图 1. 简单大对象存储结构示意 -- 存储在 dbspace 上若将简单大对象数据存储在指定的 blobspace 上,同样使用一个 56byt 的指针指向大对象的存储位置信息。此时,数据库服务器将使用不同的方法写入简单大对象数据到磁盘上,而是通过虚拟段单独使用一个较小的缓存将数据直接、快速写入磁盘,类似 light append 方式,而不需要占用大量的 buffer-pool 内存空间,从而可能将其他表或者索引从内存中挤出。所以该方式对系统影响较小,写入速度较快,同时对 checkpoint 无影响。处于性能的考虑,该方式也减少了逻辑、物理日志量,数据库也不将 Text 或者 Byte 数据的日志信息写入逻辑日志、物理日志文件。当你备份了逻辑日志时,而是直接将日志写入逻辑日志备份空间上。但是对简单对象的 DML 操作(insert、update、delete)将记录到逻辑日志中。图 2. 简单大对象存储结构示意 -- 存储在 blobspace 上当将简单大对象存储在 blobspace 上时,对简单大对象数据的读、写过程将有别于普通的方式,如下图所示。图 3. 简单大对象读、写过程Blobpage buffers 是在 Informix 虚拟段中根据需要申请的用来缓存简单大对象数据 blobpage 的内存缓存。当从应用客户端接收简单大对象数据时,数据库服务器端将创建一对 blobspace buffers, 一个用来读操作,另外一个用来写操作。每一个 Blobpage buffer 的大小为一个 blobspace blobpage 大小。每一个用户只能有一组 blobspace buffers,因此,每一个用户每次只能访问一个简单大对象。简单大对象数据以 1 KB 大小从客户端应用程序进程传送到数据库服务器端。数据库服务器将这 1KB 的信息填入 blobspace buffers,当填满一个 blobpages 时,就指向下一个 blobpage。而数据库服务器何时将第一个 blobspace buffer 写入磁盘是由用户定义的 blobpage 的大小决定。例如:假设 blobpage 的大小为 32KB,数据库服务器试图以 32KB 为增量读取或者写入数据。如果硬件环境(如磁盘控制器)不支持单个 I/O 操作完成 32KB 的数据量,操作系统将内部循环多次完成 I/O 请求。当创建该 blobspace buffers 的线程结束时,blobspace buffers 才会被回收。智能大对象智能大对象(CLOB 和 BLOB)必须存储在 Sbspaces 上,智能大对象的存储结构和 I/O 行为由 sbspace 特性确定。sbspace 的第一个 chunk 总是包含 3 个部分:元数据区域、用户数据区域和保留区,其他 chunk 可以共用第一个 chunk 的元数据区域。图 4. sbspace 的组成部分元数据区域(Metadata area):元数据标识 sbspace 的关键信息和存储在该 sbspace 上的每一个智能大对象,这样数据库服务器可以对智能大对象操作和恢复。(请使用中文输入法的冒号)用户数据区域(User-data area):该区域保存用户定义的智能大对象数据,一个 chunk 可以有 1-2 个用户数据区域。保留区(Reserved area):当元数据区域和用户数据区域需要更多空间时,可以从保留区进行分配,一个 chunk 可以有 1-2 个保留区。智能大对象智能存储在 sbspace 中,通过 ONCONFIG 参数 SBSPACENAME 指定默认存储空间。可以通过 put ... in (sbspace) 来指定存储空间,当指定多个空间时,将自动采用 round-robin 方式将数据均匀存储在多个空间上。图 5. 智能大对象存储结构示意数据库服务器通过共享内存 buffer pool 来访问智能大对象数据,和存储在 dbspaces 上的数据一样。不过智能大对象中的用户数据部分的内存优先级较低,写入数据时,当一个 buffer page 被填满时,立即写入磁盘。图 6. 简单大对象读、写过程对于 sbspace,也可以设置不使用 buffer pool,详见下节内容。如何提高大对象性能基于 Informix 大对象数据类型的特性,我们可以从数据存储设置、日志模式、缓存模式、访问控制等方面进行性能优化。存储规划和设置对于简单大对象 (TEXT、BYTE) 而言,如果存储在 dbspaces 中,那么数据的处理方式和正常的表数据方式一样通过共享内存的 buffer 然后刷新到磁盘,如果存储在 blobspaces 中,那么不需要将数据通过常驻内存段中,而通过虚拟段的 big buffer 直接写入磁盘。同时,也不将相关的信息写入逻辑、物理日志。可以通过如下方式将简单大对象存储在 blobspace 上。清单 4. 将简单大对象存储在 blobspace 上// 创建 2 个 blobspace 空间:
onspaces -c -b blobdbs01 -g 6 -p /opt/dbs/blobdbs01 -o 0 -s 102400
onspaces -c -b blobdbs02 -g 6 -p /opt/dbs/blobdbs02 -o 0 -s 102400
// 创建表指定简单大对象存储的 blobspace 空间信息:
create table t_simple_objects(
id_num integer,
fname char(15),
lname char(15),
text in blobdbs01,
BYTE in blobdbs01
);将简单大对象存储在 blobspaces 上相对 dbspaces 上有如下 4 个优势:
减少表的 rowsize,如果将简单大对象存储在 dbspace 上,那么表的 rowsize 非常大。若存储在 blobspace 上,那么简单大对象只需要在表中使用 56-byte 指针指向简单大对象数据。可以单独访问,假设只访问表的其他非简单大对象列时,就不需要读取简单大对象数据,可以有效减少 I/O。
并行访问表数据和简单大对象数据,I/O 上有多个线程同时并行访问表的其他数据和简单大对象数据。
数据存储在 blobspace 上,简单大对象数据直接写入磁盘,而不经过 buffer pool,那么可以减少 buffer pool 的使用,减少对其他常用表的内存缓存使用的影响。同时也可以减少对 checkpoint 的影响。
简单大对象存储在 blobspace 上,对简单大对象的操作,将不记录日志,较少逻辑日志 I/O,可以提高性能。当有大量的简单大对象访问操作时,将简单大对象存储在 blobspace 上有较大的性能优势,性能比日志更为重要时使用。将简单大对象存储在 blobspace 上时,需要根据实际数据的长度选择合理的 blobpage size。由于一个 blobpage 上只能存储唯一一个简单大对象数据,所以不合理的 blobpage size 将浪费空间。如下通过举例来说明如何选择合理的 blobpage size。表 2. 假设 160 个简单大对象,120 个 12kb 和 40 个 16kb 的数据
Blobpage size
需要空间大小浪费空间大小
120 +40*2=200 blobpages
=200*12KB=2400KB
40*(24-16)=320 KB
120 +40=160 blobpages
=160*16KB=2560KB
120*(16-12)=480 KB
所以,在该场景下,选择 12KB 比 16KB 的 blobpage size 更有效。实际情况,需要根据数据的平均大小来确定,另外,可以通过 oncheck -pB 来检查简单大对象空间的使用情况。如:oncheck -pB demodb:t_blob13。输出如下:清单 5. 通过 oncheck -pB 来检查简单大对象空间的使用情况 BLOBSpace Report for demodb:informix.t_blob13
Total pages used by table
BLOBSpace usage:
Percent Full
-----------------------------------------------------------------
............................................................................
Page Size is
3000智能大对象只能存储在 sbspace 上,而且对于 sbspace 而言,我们不能指定其 page size,只能采用默认的 page size(IBM AIX 和 Windows 采用 4K,其他默认为 2K)。对于智能大对象,我们将数据存储在多个 sbspaces 上,可以均衡 I/O,可以进行并行访问。可以通过如下方式对智能大对象数据进行 round-robin 方式分片存储。清单 6. 对智能大对象数据进行 round-robin 方式分片存储// 创建 3个 sbspace空间: onspaces -c -S sbspace1 -p /opt/dbs/sbspace1 -o 0 -s 102400
onspaces -c -S sbspace2 -p /opt/dbs/sbspace2 -o 0 -s 102400
onspaces -c -S sbspace3 -p /opt/dbs/sbspace3 -o 0 -s 102400// 创建表指定智能大对象存储在多个 sbspace空间上: CREATE TABLE catalog (
catalog_num SERIAL,
stock_num SMALLINT,
manu_code CHAR(3),
cat_descr LVARCHAR,
cat_photo BLOB)
PUT cat_photo in (sbspace1, sbspace2, sbspace3);在创建 sbspace 时,可以通过 -Df 选项设置 sbspace 如下属性:表 3. 通过 -Df 选项设置 sbspace 属性属性值范围默认值备注
ACCESSTIME
记录访问时间
BLOB/Key RANG
是否使用BUFFER POOL缓存
AVG_LO_SIZE
记录大小,近用来估算Meta area大小,一般默认即可
EXTENT_SIZE
4 to 2**31 K
初始extent大小
4 to 2**31 K
扩这extetn大小清单 7. 创建 sbspace 示例: onspaces -c -S sbspace2 -p /opt/dbs/sbspace2 -o 0 -s 102400
-Df "AVG_LO_SIZE=64,LOGGING=OFF,BUFFERING=OFF,
LOCK_MODE=BLOB,EXTENT_SIZE=1024,NEXT_SIZE 2048"清单 8. 通过 onstat -g smb s 命令查看 sbspace 属性设置情况 onstat -g smb s
address b6f6ed68
-------- 1
informix sbspace6
Defaults : LO_NOLOG
LO_BUFFER LO_LOCKALL
avg s/kb max lcks
-------- 8096
: 1st sz/p nxt sz/p min sz/p mx io sz
HdrCache : max
512清单 9. 可以通过 onspace -ch sbspacename -Df ... 来修改 sbspace 的 Df 属性。如: onspaces -ch sbspace1 -Df LOGGING=OFF
onspaces -ch sbspace1 -Df BUFFERING=OFF如果需要使用智能大对象的临时表,那么需要创建临时表并设置 ONCONFIG 参数 SBSPACETEMP 指定默认的 sbspace 临时空间。清单 10. 创建临时表并设置 ONCONFIG 参数 onspaces -c -S tempsbsp -t -p ./tempsbsp -o 0 -s 1000出于从性能角度考虑,创建多个临时 sbspace 空间,使用时加上 with no log 选项。性能测试记录
测试环境:PC Server 双核 CPU,普通单磁盘,Informix 11.7FC6测试场景:记录长度 7760,记录数 3000 的文本信息。采用不同数据类型存储,测试数据加载时间,I/O 量对比。表 4. 采用不同数据类型存储,测试数据加载时间,I/O 量 数据类型
日志量 lvarchar建表语句116K的page size加载:2.5 秒+checkpoint:7.1秒1204811932Text建表语句216K的page size加载:2.1秒+checkpoint:7秒1211211813Text建表语句3Blobpage size 4K加载:155秒+checkpoint:0.1秒W:15025+R:3000 390Text建表语句4Blobpage size 8K加载:2.5秒+checkpoint:0.1秒12013288Clob建表语句5LOGGING=OFF BUFFERING=ON加载:59秒+checkpoint:0.1秒12758974Clob建表语句5LOGGING=ON BUFFERING= OFF加载:100秒+checkpoint:0.1秒1278514576Clob建表语句5LOGGING=OFF BUFFERING=OFF加载:56秒+checkpoint:0.1秒12758974测试结果分析:由于测试环境单磁盘,所以 I/O 对性能影响较大,有无日志影响较大。
使用 lvarchar 导入速度较快,但对 checkpoint 影响较大;
text 数据存储在 dbspace 上,和 lvarhcar 情况一样;
text 存储在 blobspace 上,日志少,数据直接写入磁盘,对 checkpoint 无影响,但是何时大小的 blobpage size 对 I/O 行为有非常大影响,过小的 pagesize 导致每一个对象存储 2 个 page,同时需要额外的读操作;
采用 clob 时,是否有日志对性能有影响,如果 I/O 较快的系统,影响就不明显。BUFFERING 模式影响不大,BUFFERING=ON 情况,只分配较小的 BUFF,实时进行磁盘写入,所以对 checkpoint 无影响。提高访问查询由于大对象数据类型一般用来存储较大的存储对象,那么客户端应用程序访问的网络流量一般较大,需要消耗较大的网络和 CPU 资源。所以如何减少网络流量成为提高性能的重要因素,根据实际系统的性能测试对比来看,将应用部署在数据库同一服务器情况下,可以获取更好的性能。当网络流量超过 100M/s 情况下,处理网络数据包需要消耗非常多的系统资源。如果应用和数据库独立部署情况,可以考虑设置网络参数 IFX_NETBUF_SIZE。一般在如下几个场景下 ( 发生数据超过 4K) 都可以考虑增加 IFX_NETBUF_SIZE 的值。
Loading a table
插入 rowsize &4 K记录
发送简单大对象
访问智能大对象IFX_NETBUF_SIZE 为数据库服务器环境变量,缺省值为 4KB,最大值为 64KB。不能单独对某一个会话进行设置。也可以通过 sqlhosts 文件的 b 选项进行设置 IFX_NETBUF_SIZE 值。 可以通过如下命令监控网络缓存的使用情况:onstat -g afr global | grep net。另外,对于智能大对象数据时,如果通过 buffer pool 进行访问,同时记录日志信息,那么需要设置足够的 BUFFERPOOL, 同时设置较大的 LOGBUF。结束语当需要使用 Informix 简单大对象或者智能大对象时,应该充分利用 Informix 大对象数据类型的优势。相对于 lvarchar,Informix 对大对象数据类型提供较少的功能支持,但是支持更大的存储对象,同时可以获取更好的性能。简单对象具有最高的性能,而智能大对象可以提供更多的访问支持。
参考资料 加入 ,搜索更多 Informix 大对象数据类型内容。加入 ,Informix 性能优化指南。 在 ,了解关于信息管理的更多信息,获取技术文档、how-to
文章、培训、下载、产品信息以及其他资源。 加入 。查看开发人员推动的博客、论坛、组和维基,并与其他 developerWorks 用户交流。
developerWorks: 登录
标有星(*)号的字段是必填字段。
保持登录。
单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件。
在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。
所有提交的信息确保安全。
选择您的昵称
当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。昵称长度在 3 至 31 个字符之间。
您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。
标有星(*)号的字段是必填字段。
(昵称长度在 3 至 31 个字符之间)
单击提交则表示您同意developerWorks 的条款和条件。 .
所有提交的信息确保安全。
文章、教程、演示,帮助您构建、部署和管理云应用。
立即加入来自 IBM 的专业 IT 社交网络。
免费下载、试用软件产品,构建应用并提升技能。
static.content.url=/developerworks/js/artrating/SITE_ID=10Zone=Information ManagementArticleID=968913ArticleTitle=Informix 大对象数据类型的使用和优化publish-date=

我要回帖

更多关于 巫师3昆特牌mod 的文章

 

随机推荐