|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
MySQL的支持者们却认为,MySQL所保留的功能都是精华,并且是你部署、MySQL学习教程配置和维护这个数据库所必不可少的一些功能。oracle
link:
http://www.eygle.com/faq/db_file_multiblock_read_count&OracleIO.htm
初始化参数db_file_multiblock_read_count影响Oracle在实行全表扫描时一次读取的block的数目.
db_file_multiblock_read_count的设置要受OS最年夜IO才能影响,也就是说,假如你体系的硬件IO才能无限,
即便设置再年夜的db_file_multiblock_read_count也是没有效的。
实际上,最年夜db_file_multiblock_read_count和体系IO才能应当有以下干系:
Max(db_file_multiblock_read_count)=MaxOsIOsize/db_block_size
固然这个Max(db_file_multiblock_read_count)还要受Oracle的限定,
今朝Oracle所撑持的最年夜db_file_multiblock_read_count值为128.
我们能够经由过程db_file_multiblock_read_count来测试Oracle在分歧体系下,单次IO最年夜所能读获得数据量:
$sqlplus"/assysdba"
SQL*Plus:Release10.1.0.2.0-ProductiononWedAug1123:43:522004
Copyright(c)1982,2004,Oracle.Allrightsreserved.
Connectedto:
OracleDatabase10gEnterpriseEditionRelease10.1.0.2.0-64bitProduction
WiththePartitioning,OLAPandDataMiningoptions
SYSASSYSDBAon11-AUG-04>showparameterread_count
NAMETYPEVALUE
-----------------------------------------------------------------------------
db_file_multiblock_read_countinteger16
SYSASSYSDBAon11-AUG-04>createtablespacedfmbrc
2datafile/opt/oracle/oradata/eygle/dfmbrc.dbf
3size20Mextentmanagementlocaluniformsize2M;
Tablespacecreated.
SYSASSYSDBAon11-AUG-04>createtablettablespacedfmbrcasselect*fromdba_objects;
Tablecreated.
SYSASSYSDBAon11-AUG-04>insertintotselect*fromt;
9149rowscreated.
SYSASSYSDBAon11-AUG-04>/
18298rowscreated.
SYSASSYSDBAon11-AUG-04>/
36596rowscreated.
SYSASSYSDBAon11-AUG-04>commit;
Commitcomplete.
SYSASSYSDBAon11-AUG-04>altersessionsetdb_file_multiblock_read_count=1000;
Sessionaltered.
SYSASSYSDBAon12-AUG-04>showparameterread_count
NAMETYPEVALUE
-----------------------------------------------------------------------------
db_file_multiblock_read_countinteger128
SYSASSYSDBAon11-AUG-04>altersessionsetevents10046tracenamecontextforever,level12;
Sessionaltered.
SYSASSYSDBAon11-AUG-04>altersystemflushbuffer_cache;
Systemaltered.
SYSASSYSDBAon11-AUG-04>selectcount(*)fromt;
COUNT(*)
----------
73192
SYSASSYSDBAon12-AUG-04>@gettrace
TRACE_FILE_NAME
--------------------------------------------------------------------------------
/opt/oracle/soft/eygle_ora_24432.trc
$cat/opt/oracle/soft/eygle_ora_24432.trc|grepsca
WAIT#26:nam=dbfilescatteredreadela=18267p1=10p2=10p3=128
WAIT#26:nam=dbfilescatteredreadela=8836p1=10p2=138p3=127
WAIT#26:nam=dbfilescatteredreadela=8923p1=10p2=265p3=128
WAIT#26:nam=dbfilescatteredreadela=8853p1=10p2=393p3=128
WAIT#26:nam=dbfilescatteredreadela=8985p1=10p2=521p3=128
WAIT#26:nam=dbfilescatteredreadela=8997p1=10p2=649p3=128
WAIT#26:nam=dbfilescatteredreadela=9096p1=10p2=777p3=128
WAIT#26:nam=dbfilescatteredreadela=583p1=10p2=905p3=12
$
我们能够看到,在以上测试平台中,Oracle最多每次IO可以读取128个Block,因为block_size为8k,也就是每次最多读取了1M数据.
体系平台为:
$uname-a
SunOSbilling5.8Generic_108528-23sun4usparcSUNW,Ultra-4
固然详细的,Oracle一次IO能读取几block还和良多要素有关,好比存储是不是一连,磁盘是不是经由条带等体例分别,而且Oracle的
单次IO读取不克不及超过Extent界限等.某些平台还和操纵体系的参数设置有关.
人人能够测试一下分歧的平台,Oracle的单次IO最多能够读取的Block数目.
曾经的功能列表可能会迅速变得过时了。而且,有些功能对有的应用程序非常重要,但是对别的应用程序则不一定。 |
|