I have table with 5 columns each column length varchar2(4000). This table will have approx 150000 rows every year. I am planning for creating a seperate tablespace for this table because of its row size .
While calculating rowsize i did it as below
5* 4000 + 15( Column overhead of 3 bytes because col length is more than 250 bytes) + 3 (Row overhead) . 20018 bytes per row
20018 * 150000 = Approx 2.8 Gig.
I have enough space. Is it a good idea to have a intial extent of 2.8 gig size ? Please advise
You could go ahead and create that large of an extent, but it tends to be a little unwieldy. You might want to go ahead with a smaller extent size or even consider partitioning your table - depending on what you expect to be doing with it.
You may or may not get chained rows. If you have a sufficiently large db_block_size (e.g., 22K), you won't have chaining. However, if you are using a smaller block size, you definitely WILL have chaining and there's nothing you can do about that.
However, if you use out-of-line CLOBs, then you will just have pointers in the table so row chaining should not occur. However, CLOBS will force you into more complex methods of loading/handling your data.