you do not determine the size exactly when installing clob (unlike varchar). it's just just a clob .
The maximum log size is 4Gb.
Storage will use the space as follows:
- if lob is defined as a string and lob is less than ~ 4kb, it will simply take up the amount of space the document is in. (e.g. store xml with 512 bytes per line and it will use 512 bytes.
- if lob is defined outside the row (or exceeded 4kb), then it will use a multiple of the "chunk" size that you specified when creating the table.
when creating a lob column, you can specify its storage clause to control the parameters in the row and outside the row as follows:
LOB (c) STORE AS lobseg (DISABLE STORAGE IN ROW CHUNK 16384)
i.e. which will indicate that lob can never be stored in the data line of a regular table and will allocate storage in multiples of 16kb per piece, so even if your document was 1kb, it will take 16kb of memory.
if your xml documents are only 5 kilobytes, you might want to look at the storage in a line and put a small block size (the minimum block size is 1 block, so if you have a table space with 4kb extents, the size of the minimum amount chunk will be 4kb if you specify less, it will be ignored). the lack of permissions in ordinary foreheads is that the table will be larger, so a large scan over the range can lose a little weight (but searching for fragments is faster).
Also in 11g you can compress scrap segments that you can consider (if your license covers it). Although with such small documents you may not win much.
more details here: http://docs.oracle.com/cd/B28359_01/appdev.111/b28393/adlob_tables.htm
source share