What are the Advantages and Disadvantages of SMALL BLOCK SIZE (4096) ?
What are the Advantages and Disadvantages of LARGE BLOCK SIZE (16384) ?
Advantages of large block size:
1 Space wastage is very minimum.
2 Insert will be faster.
3 Fast Full table/index scan can be done in a less time.
Disadvantages of large block size:
1 Unwanted data/index will be cached in SGA.
Chances for row chaining is more in smaller block size than larger block size..
You are also more likely to do a full table scan for small tables because the entire table might fit into one block. Which I suppose isn't entirely bad.
Which one block size 4096/8192/16384 is best option for 1GB physical Ram and 4 processors machine on oracle8i/oracle9i with windows 2000 Adv.Server
What KIND of database do you have, I mean: what kind of data are there, how many columns are usually in a table (aprox.), do you have large tables (no of rows etc.), how critical is your storage-space (do you can afford some wastage) ... ?
Obviously, the equilibrium is 4K, but your database is almost never "a typical one", no matter who you are...
At least tell us how large do you expect to be your database over 1 month, aver 6 months, and over 1 year. This could be the minimal condition to make a vague recomandation. Though not the most proffesional point of start...
Tamilselvan, I do NOT agree with all you did say there, you know?
Think taking some risks and imprecissions in tuning process! Think you could wrongly set PCTUSED and/or PCTFREE on a large tablespace with a large block size. Do you think it would be "minimum wastage of space" ?
If ur database is in OLTP environment, it is recommended to have small block size. Becoz the queries will extract only small amount of data and it is advisable to keep the data in small blocks. If u have a big block size, unnecessariy u will be reading unwanted data into the cache.
If u have a DSS environment(Data whearhousing), where ur database is query intensive, it is recommended to have big block size, so that oracle can read more amount of data into the cache in one shot.
And again if u r table contain objects of big size like graphics files, it is recommended to have a big block size
Keeping small blocks in this case would mean lot of I/O and CPU overheads.
As a DBA, it is very important to decide abt the block size when u create the database; since this directly influences the performance. Once u have created the database u cant change the size of the block unless u recreate the database.
[Edited by sonia on 04-08-2002 at 12:37 AM]
Ya!! what sonia says is the perfect answer to decide the size of data block.
For OLTP - the small transactions are more in nos as compared to large blocks requested by queries. and for DSS system - no of transactions are less but the queries requesting the large data are more.
It is recommended that if you have a VLDB and a HYBRID system , then you should keep two databases on for OLTP ( Small data block size ) which is used for small transactions and other for DSS (Large data block size ) which is only for large requests, i mean only for reports used for MIS or so.
Even the rest of the answers are correct.
8i OCP DBA
My database is an OLTP , how i set the other SGA parameteres including db_block_size ?
Click Here to Expand Forum to Full Width