Buffered Logging 不如 UnBufferd Logging安全
由于日志缓冲区充满时才进行刷新,如果系统出现故障,则日志缓冲区的内容会被丢失。当然发生故障时,缓冲区会良好保存未写向磁盘的提交记录,Online快速恢复将回滚这些事务。所有数据库自身保持一致,而从应用程序的观点看,应用程序认为已经成功提交的事务实际上却回滚了,这是不一致的。
CKPTINTVL参数
正常操作期间,两个主要的事件会导致检查点发生:超过检查点时间间隔或是物理日志75%已充满。在检查点间的工作量决定了系统故障后快速恢复所需要的时间长短。
如果恢复时间十分重要,则应设置检查点间隔以使恢复时间可以接受,否则可以加长时间间隔,从而让系统根据物理日志充满度(75%)来决定何时生成检查点。
连接
客户机----数据库服务器和数据库服务器----客户机
选择最佳的通讯机制 本地客户机:共享内存和管道
对于与服务器运行在同一主机上的客户机,应选择共享内存(ipcshm)或管道(ipcstr)方式。管道通常要比共享内存方式更快、更灵活、更安全、避免让本地客户使用网络连接(TCP/IP),因为那样比ipcshm或ipcstr连接性能要大大降低。
远端客户机:TCP/IP
远端客户要使用TCP/IP,只有在特殊情况下才使用Netware IPX/SPX进行连接。改变缓冲区大小(FET_BUF_SIZE环境变量)以及socket缓冲区大小(在sqlhosts文件中设置)观察其效果。使用前面叙述的方法减少客户机/服务器间的交换量。
轮询线索和网络VP
轮询线索处理从客户机送来的数据
从服务器到客户机的数据是由各自的sqlexec线索来发送的。
一个轮询线索可以处理大约200个典型客户机
数目要依许多因素而定,此处只是个原则数字。
对大量非常活跃的客户,或大量的数据输入可能需要更多的轮询线索。
轮询线索在CPU虚处理器(内联轮询)(inline poll)或NET VP中。
任意时刻,只有一个“内联”的协议
内联轮询线索
客户数目越少,性能越好
可以帮助TCP/IP
增加CPU VP额外开支
不可有多于CPU VP数目的轮询线索
用于轮询线索的NET VP
对大量的客户而言,可能会提供更好的性能
想要多少就可以有多少轮询线索
可减轻CPU VP的工作负荷
监视会话
可以用onstat 及SMI监视会话
应检查有问题的会话过程
线索的数目
磁盘I/O
内存的使用情况
SQL语句
SINGLE_CPU_VP标志
让系统消除一些互斥操作
如只使用一个CPU虚处理器,并确信不需要再动态增加,一定要设置ONCONFIG文件中的SINGLE_CPU_VP标志为ON。这样可以让Online 消除许多用于内部CPU VP同步的互斥调用。
监视OnLine性能
onstat
命令行工具,显示系统操作不同方面的有关信息
SMI
是通过SQL接口的输出与onstat 相近的信息,它可以开发用户的监视工具。
Onperf/Xtree
基于图形(X/Motif)的性能监视工具,可以运行在许多平台上,可以显示OnLine服务器的查询树。
Oncheck
检查表,索引的完整性等等。
最新相关文章
发表评论