SybaseIQ性能调优
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1性能监控 (2)
1.1操作系统性能监控 (2)
1.2数据库性能监控例程 (2)
1.3使用Sybase Cenral性能监控器监控 (2)
2数据库参数调优 (3)
2.1SybaseIq 12.7 建议设置选项 (3)
2.2SybaseIq服务参数说明 (3)
2.3文件存放 (4)
3数据加载调优 (5)
3.1推荐办法 (5)
3.2装载数据时提示虚拟内存不足 (5)
3.3使用union all 视图以便更快装载 (5)
3.4单行处理 (5)
4其它调优 (5)
4.1选择合适的数据类型 (5)
4.2无符号数据类型 (6)
4.3性能优化选项 (6)
1性能监控
1.1操作系统性能监控
使用如下命令对操作系统进行性能监控
●vmstat
●sar
●topas
●ps
1.2数据库性能监控例程
●sp_iqconnection 显示连接用户和版本
●sp_iqcontext 显示运行参数
●sp_iqspaceinfo 输出数据库对象使用空间情况
●sp_iqstatus 数据库各种信息展现
●sp_iqtablesize 输出制定表的大小
●sp_iqgroupsize 输出指定成员
如何获得Sybase IQ系统存储过程呢,我们使用select * from sysobjects where name like 'sp_iq%';返回结果中“name”列中显示为系统存储过程,我们可以研究其它的存储过程的含义
1.3使用Sybase Cenral性能监控器监控
可以按照如下所示使用Sybase Central监控服务器的统计信息。
●选择服务器
●在“Statisticcs”选项卡上,右键单击名称并选择“Add to Performance Monitor“
●单击“Performance Monitor“选项卡。
Sybase Central 仅跟踪从一个快照到下一个快
照的差异,因此,在性能监视器中某些所选统计信息可能显示为无活动。
若要查看每项统计的说明,请在“Statistics“选项卡上右键单击其名称,并选择”Properties
“。
通过在”Properties“选项卡上单击相应的复选框,并选择”Apply“和”ok“,还可能在性能监视器上一图形的方式显示该统计项。
2数据库参数调优
2.1SybaseIq 12.7 建议设置选项
●set option public.query_temp_space_limit=0; (默认为2000M),设置临时缓存的最大
值。
0表示不限制。
●set option public.force_no_scroll_cursors='on'; (默认为“off”)禁止缓存用户的查询结
果。
●set option public.OS_File_Cache_Buffering='off'; 关闭文件系统缓冲区从文件系统缓
存的数据复制到主存储缓冲区高速缓存。
●set option public.disk_striping='on';默认为“on”
●set option public.disk_striping_packed='on'; 默认为“on”
●set option public.append_load = 'on'; 更改为“on”以提高load、insert数据装载性能。
●set option public.minimize_storage='on';最小化使用IQ存储中的空间。
●et option public.Query_Plan='OFF'; (默认为“on”)禁止将用户的查询计划打印到IQ
Message File中,因为查询计划可以会使之大小迅速增加。
2.2SybaseIq服务参数说明
●-n = 服务名
指出ASIQ的服务名,此名在局域网内必须唯一
●-cl = 元数据表空间使用的cache最小大小
可以动态分配给元数据表空间使用
建议至少16MB 以便将整个元数据放在其中
●-gp = 元数据表空间页面大小
缺省= 1024
建议设置为4096以便表结构中可以容纳更多的字段
●-gm = 当前最多并发用户数
default = 10
●-gc = 检查点时间间隔(分钟为单位)
default = 60, 建议6000分钟
●-gr = 由于操作系统原因导致数据库需要恢复动作的时间间隔(分钟为单位)
default = 2, 建议6000
●-ti = 客户端自动中断连接时间间隔(分钟为单位)
中断非活动的客户端的时间间隔
缺省= 240, 建议4400 (~73 hours)
●-tl = 网络超时时间间隔(秒为单位)
interval a 'liveness' packet is sent to a client
缺省= 120, 建议300 或更高
●-iqmc = 数据表空间分配的cache
单位是MB
设置后会覆盖缺省值
●-iqtc = 临时数据表空间分配的cache
单位是MB
设置后会覆盖缺省值
2.3文件存放
●使用相对链接,可以使文件的重分配更容易
●对主存储和临时存储使用符号链接。
●事物日志和事物日志镜像存放在大文件系统上,每个IQ节点推荐5GB的文件系统
用于存储事物日志、消息、脚本等。
3数据加载调优
3.1推荐办法
●显示的日期类型转换,不用iq猜测性能更优
●尽可能的单个表装载多个文件
3.2装载数据时提示虚拟内存不足
在使用SybaseIQ LOAD装载数据时,会遇到提示虚拟内存不足的问题,在SybaseIQ中存在LOAD_MEMORY_MB参数选项,缺省值为0,表示装载数据时内存不受限制,允许设置值范围为0-500MB,建议设置为非0 以防止消耗尽所有的虚拟内存。
例:SET OPTION PUBLIC.LOAD_MEMORY_MB = 300
3.3使用union all 视图以便更快装载
若要使非常大型的表的装载时间最小,可以使用UNION ALL视图。
SYBASE IQ允许你通过将数据拆分到几个单独的基表中(例如,按时间)对表进行分区。
数据将装载到这些较小的表中。
然后,通过UNION ALL视图,将表重新连接在一起,形成一个逻辑整体,之后可以对其执行查询。
3.4单行处理
●INSERT………V ALUES()性能比批量装载差,每小时不会超过5000~20000行。
●尽量避免单行数据操作。
4其它调优
4.1选择合适的数据类型
尽可能使用最小的数据类型;例:如果不需要时分秒的日期类型,尽量使用DA TE 代
替DATETIME。
4.2无符号数据类型
尽可能使用无符号数据类型,特点是具有更快的比较性能;
4.3性能优化选项
●Set option Public.Force_No_Scroll_Cursors = …On‟;缺省为Off,允许scrolling of data;
置为ON 关闭缓冲,性能更好;
●Set option Public.OS_File_Cache_Buffering = …Off‟;NT 和Solaris 缺省On ,对裸
设备无效;
●Disk_Striping (default = ON);如果为ON, IQ 将同时写所有的dbspaces,否则将在
第一个dbspaces,写满后在写后继dbspaces
●Disk_Striping_Packed (default = ON);如果为ON,强制最好的空间使用和最少的碎
片。
Sybase iq性能调优的方式及方面还很多,比如数据库设计调优,服务器主机调优本文档还没有提到,由于本人水平有限,还需要继续研究,完善此文档。