首页 数据库 mysql教程 Oracle capability i/o(压力测试数据库服务器i/o性能)

Oracle capability i/o(压力测试数据库服务器i/o性能)

Jun 07, 2016 pm 04:48 PM
oracle数据库

简单说明一下怎么影响重做数据的一个因素,那就是i/o吞吐量,oracle的介质恢复依赖于i/o,如果i/o存在瓶颈,那么势必会影响备库的

简单说明一下怎么影响重做数据的一个因素,那就是i/o吞吐量,Oracle的介质恢复依赖于i/o,如果i/o存在瓶颈,那么势必会影响备库的介质恢复。
 
那么i/o stack包含hbas,存储相关的交换机、存储物理磁盘。那么oracle建议在应用程序部署的时候,建议去验证i/o避免存在问题。但是之前有一个很刺手的问题,那就是如何去验证i/o侧吞吐量,换句话说怎么去验证i/o吞吐量更符合真实的生产环境。
 
  In Oracle Database 11g, the Real Application Testing feature (Capture/Replay) was introduced to inject real (captured) workload into the system. However, another new 11g feature is available to help assess the I/O capability of the database's storage system, and gauge maximum IOPS and Mbytes/s.

  capability i/o feature 是依据一个数据库内部的函数(dbms_resource_manager.calibrateio()),该函数是oracle database内部集成的,更能满足测试i/o问题,且在最后将输出相关报告信息。
 
  那么执行这个包需要注意什么呢?
 
1、权限,,必须具有sysdba执行该过程的权限,另外需要打开timed_statistics。
 
2、确定异步i/o在数据库的所有数据文件和临时文件都已经得到应用启动,我们可以通过v$datafile 和v$iostat_file视图关联进行、确认。
 
eg:
 
col name format a50
 select name,asynch_io from v$datafile f,v$iostat_file i
 where f.file#=i.file_no
 and (filetype_name='Data File' or filetype_name='Temp File');
 
如果异步i/o没有启动,设置disk_asynch_io=true启动该功能,但默认是开启的,如果在linux中最大slots使用完毕,那么将自动关闭噶 功能,这也就是为什么虽然设置了disk_asynch_io=true了却依然没有达到效果。最大的slots可以查看/proc/sys/fs/aio-max-nr  当前使用的可以查看/proc/sys/fs/aio-nr去分别确认。
 
3、确保服务器只有需要测试的数据库开启,避免 其他应用软件的影响。
 
4、对于RAC,需要确保所有的实例都开启,因为 将会对所有节点做全面的校对,执行该过程只需在一个实例即可。
 
5、确保只有一个用户执行一个校对i/o的操作。可以通过v$io_calibration_status查看当前鉴定状态。
 
另外查看资料了解到有这么几个过程:
 
The calibration will run in different phases. In the first phase, small block random I/O
 workload is performed on each node and then concurrently on all nodes. The second
 phase will generate large block sequential I/O on each node. Note, that the Calibrate
 I/O is expecting that a datafile is spread across all disks specified in NUM_DISKS
 variable. Furthermore, offline files are not considered for file I/O.
 
一旦执行完毕,其结果将存在于dba_rsrc_io_calibrate表中。
 
 
 
好了。
 
了解到这些,下面开始去实验操作。让实践得真知。
 
语法如下:
 
SET SERVEROUTPUT ON
 DECLARE
  lat  INTEGER;
  iops INTEGER;
  mbps INTEGER;
 BEGIN
 -- DBMS_RESOURCE_MANAGER.CALIBRATE_IO (, , iops, mbps, lat);
    DBMS_RESOURCE_MANAGER.CALIBRATE_IO (2, 10, iops, mbps, lat);
 
  DBMS_OUTPUT.PUT_LINE ('max_iops = ' || iops);
  DBMS_OUTPUT.PUT_LINE ('latency  = ' || lat);
  DBMS_OUTPUT.PUT_LINE ('max_mbps = ' || mbps);
 end;
 /
 参数介绍如下:
 
Parameter Description
num_physical_disks
  Approximate number of physical disks in the database storage(物理磁盘个数 input)
 
 max_latency
  Maximum tolerable latency in milliseconds for database-block-sized IO requests(最大可用容忍延迟的毫秒数 input)
 
 max_iops
  Maximum number of I/O requests per second that can be sustained. The I/O requests are randomly-distributed, database-block-sized reads.(持续中每秒请求最大i/o的数量 output)
 
 max_mbps
  Maximum throughput of I/O that can be sustained, expressed in megabytes per second. The I/O requests are randomly-distributed, 1 megabyte reads.(持续中最大的吞吐量M为单位)
 
 actual_latency
  Average latency of database-block-sized I/O requests at max_iops rate, expressed in milliseconds(平均延迟)

更多详情见请继续阅读下一页的精彩内容:

linux

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

oracle怎么查看表属于哪个表空间 oracle怎么查看表属于哪个表空间 Jul 06, 2023 pm 01:31 PM

oracle查看表属于哪个表空间的方法:1、使用“SELECT”语句,并通过指定表名来查找指定表所属的表空间;2、使用Oracle提供的数据库管理工具来查看表所属的表空间,这些工具通常提供了图形界面,使得操作更加直观和方便;3、在SQL*Plus中,可以通过输入“DESCRIBEyour_table_name;”命令来查看表所属的表空间。

如何使用PDO连接到Oracle数据库 如何使用PDO连接到Oracle数据库 Jul 28, 2023 pm 12:48 PM

如何使用PDO连接到Oracle数据库概述:PDO(PHPDataObjects)是PHP中一个操作数据库的扩展库,它提供了一个统一的API来访问多种类型的数据库。在本文中,我们将讨论如何使用PDO连接到Oracle数据库,并执行一些常见的数据库操作。步骤:安装Oracle数据库驱动扩展在使用PDO连接Oracle数据库之前,我们需要安装相应的Oracl

oracle如何只取一条重复的数据 oracle如何只取一条重复的数据 Jul 06, 2023 am 11:45 AM

oracle只取一条重复的数据的步骤:1、使用SELECT语句结合GROUP BY和HAVING子句来查找重复数据;2、使用ROWID删除重复数据,可以确保删除的是精确的重复数据记录,或者使用“ROW_NUMBER()”函数删除重复数据,这将删除每组重复数据中的除了第一条记录之外的其他记录;3、使用“select count(*) from”语句返回删除记录数确保结果。

如何使用php扩展PDO连接Oracle数据库 如何使用php扩展PDO连接Oracle数据库 Jul 29, 2023 pm 07:21 PM

如何使用PHP扩展PDO连接Oracle数据库导语:PHP是一种非常流行的服务器端编程语言,而Oracle是一款常用的关系型数据库管理系统。本文将介绍如何使用PHP扩展PDO(PHPDataObjects)来连接Oracle数据库。一、安装PDO_OCI扩展要连接Oracle数据库,首先需要安装PDO_OCI扩展。以下是安装PDO_OCI扩展的步骤:确保

实现PHP和Oracle数据库的数据导入 实现PHP和Oracle数据库的数据导入 Jul 12, 2023 pm 06:46 PM

实现PHP和Oracle数据库的数据导入在Web开发中,使用PHP作为服务器端脚本语言可以方便地操作数据库。Oracle数据库作为一种常见的关系型数据库管理系统,具备强大的数据存储和处理能力。本文将介绍如何使用PHP将数据导入到Oracle数据库中,并给出相应的代码示例。首先,我们需要确保已经安装了PHP和Oracle数据库,并且已经配置好了PHP对Orac

oracle数据库需要jdk吗 oracle数据库需要jdk吗 Jun 05, 2023 pm 05:06 PM

oracle数据库需要jdk,其原因是:1、当使用特定的软件或功能时需要包含在JDK中的其他软件或库;2、需要安装Java JDK才能在Oracle数据库中运行Java程序;3、JDK提供了开发和编译Java应用程序的功能;4、满足Oracle对Java函数的要求,以帮助实现和实现特定功能。

如何高效地使用PHP和Oracle数据库的连接池 如何高效地使用PHP和Oracle数据库的连接池 Jul 12, 2023 am 10:07 AM

如何高效地使用PHP和Oracle数据库的连接池引言:在开发PHP应用程序时,使用数据库是必不可少的一部分。而在与Oracle数据库交互时,连接池的使用对于提高应用程序的性能和效率至关重要。本文将介绍如何在PHP中高效地使用Oracle数据库连接池,并提供相应的代码示例。一、连接池的概念及优势连接池是一种管理数据库连接的技术,它通过事先创建一批连接并维护一个

oracle如何查询表空间大小 oracle如何查询表空间大小 Jul 06, 2023 pm 01:45 PM

oracle查询表空间大小步骤:1、使用数据库管理员账号登录到Oracle数据库;2、使用“SELECT”语句来查看空间列表;3、查询表空间大小有3种方法:使用dbms_utility包查询、使用dba_segments视图查询、使用dba_data_files视图查询;4、使用“DBMS_OUTPUT.PUT_LINE”函数或者其他显示结果的方法来显示查询结果。

See all articles