数据库性能优化:Sybase数据库的性能优化(-)



Sybase数据库性能优化(-)
个大型数据库中性能成为人们关注焦点的如何让数据库高效有效运行成为广大数据库管理人员和开发人员必须要考虑问题

何谓“好性能”
性能是个应用或多个应用在相同环境下运行时对效率衡量性能常用响应时间和工作效率来表示响应时间是指完成个任务花费时间可以从以下 3方面来减少响应时间:
· 减少竞争和等待次数尤其是磁盘读写等待次数
· 利用更快部件
· 减少利用资源所需时间
绝大多数性能获得来自于优秀数据库设计、精确查询分析和适当索引最好性能获得能够通过确立优秀数据库设计在开发时学会使用SQL Server查询优化器来实现
为了取得更好数据库性能我们就需要对数据库进行优化减少系统资源竞争如对数据cache,过程cache系统资源和CPU竞争
在SQL Server中有如下优化层次:
· 应用层——大部分性能获得来自于对你SQL应用中查询优化这必须是以好数据库设计为基础
· 数据库层——应用共享在数据库层中资源这些资源包括硬盘事务日志和数据cache
· 服务器层——在服务器层有许多共享资源包括数据高速缓存Cache过程高速缓存CacheCPU等
· 设备层——指是存储数据磁盘及其控制器在这你应尤其关注磁盘I/O
· 网络层——指连接用户和SQL Server网络
· 硬件层——指可利用CPU
· 操作系统层——理想地SQL Server是台机器主要应用它必须和操作系统以及其他sybase软件Software如Backup Server或SQL Server Monitor共享处理器、内存以及其他资源
在大多数情况下面我们是对应用层进行优化对应用性能优化是大家最乐于接受功能其结果能被观测及检验查询性能是SQL应用整个性能个关键
应用层上问题包括以下内容:
· 决策支持VS.和在线事务处理(OLTP)需要区别性能策略
· 事务设计能够减少并发事务保持占用锁也就减少了其他用户对相关数据存取
· 关联致性对数据修改需要join操作
· 支持Select操作索引增加了修改数据时间
· 为了安全而设立审计限制了性能
在应用层优化选项包括:
· 远程处理或复制处理能够把决策支持从OLTP机器中分离出来
· 利用存储过程来减少编译时间和网络利用
· 利用最少量锁去满足你应用需要
数据库层问题包括:
· 建立备份和恢复方案
· 在设备上分布存储数据
· 审计操作影响性能;仅审计你所需
· 日常维护活动将导致性能降低和导致用户不能操作数据库表
在数据库层上优化选择包括:
· 利用事务日志阀值来自动转储事务日志防止其超出使用空间
· 在数据段中用阀值来监视空间使用
· 利用分区来加速数据装入
· 对象定位以避免硬盘竞争
· 把重要表和索引放入cache中保证随时取得

服务器层问题有:
· 应用类型——服务器是支持OLTP还是DSS或者两者都支持
· 所支持用户数影响优化决策——随着用户数增加对资源竞争会发生改变
· 网络负荷
· 当用户数和事务数达到数量时复制服务器或其他分布式处理是个解决思路方法
服务器层优化选项包括:
· 优化内存——个关键配置参数和其他方面参数
· 决策是客户端处理还是服务器端处理——有些处理能在客户端进行吗
· 配置cache大小和I/O大小
· 增加多个CPU
· 为空闲时间排定批处理任务和生成报表
· 工作负荷发生改变重新配置特定参数
· 决定是否可能把DSS移到另个SQL服务器中设备层
设备层问题包括:
· 主设备、包含用户数据库设备用户数据设备或数据库日志是否要镜像
· 怎样在设备的间分布系统数据库、用户数据库和数据库日志
· 为获得对堆表插入操作高性能是否有必要进行分区
设备层上优化选项包括:
· 用多个中等大小设备及多个控制器可能比用少量大设备有更好I/O性能
· 分布数据库表和索引以在区别设备上进行I/O装载

网络层
实际上SQL Server所有用户都是通过网络存取他们数据网络层上主要问题有:
· 网络流量
· 网络瓶颈
· 网络速度
网络层上优化选项包括:
· 配置包大小以使其和应用需要相匹配
· 配置子网
· 分隔出繁忙网络运用
· 创建个高容量网络
· 配置多个网络引擎
· 更好地设计应用限制所需网络传输

硬件层
在硬件层上问题包括
· CPU效率
· 磁盘存取:控制器和磁盘
· 磁盘备份
· 内存使用
在硬件层上优化选项包括:
· 增加CPU以适应工作负荷
· 配置调度以提高CPU利用率
· 遵循多处理器应用设计指导以减少竞争
· 配置多个数据cache操作系统层
操作系统层主要问题有:
· 文件系统——是否被SQL Server独占使用
· 内存管理——精确估算操作系统和其他内存占用
· CPU利用——整个系统共有多少处理器可用?有多少分配给SQL Server
在操作系统层优化选项包括:
· 网络接口
· 在文件和原始分区的间选择
· 增加内存
· 把客户操作和批处理移到其他机器上
· SQL Server利用多个CPU


Tags:  sybase数据库配置 sybase数据库 数据库的性能优化 数据库性能优化

延伸阅读

最新评论

发表评论