2013-04-05 441 views

回答

10

您沒有在設置clob時精確定義大小(與varchar不同)。它只是簡單的clob

吊杆的最大尺寸是4Gb。

存儲明智如下它將使用空間:

  1. 如果吊射被定義爲行內,與高球小於〜4KB,它只會佔用的空間量,該文件是。 (例如,存儲一行512字節的行,它將使用512字節)
  2. 如果lob被定義在行外(或超過4kb),那麼它將使用您定義的「塊」大小的倍數在創建表

創建一個LOB列時,可以指定它的存儲子句來控制行和亂排選項是這樣的:

LOB (c) STORE AS lobseg (DISABLE STORAGE IN ROW CHUNK 16384) 

即會指定的lob永遠不會與常規表數據內聯存儲,並且會以每塊16kb的倍數分配存儲空間,因此即使您的文檔爲1kb,也需要16kb的存儲空間憤怒。如果你的xml文檔只有5kb,你可能要考慮行內存儲,並把一個小塊大小(最小塊大小是1塊,所以如果你有一個4kb大小的表空間,你的最小塊大小將爲4kb;如果指定較少,則將被忽略)。允許排內龍珠的缺點是桌子會更大,所以大範圍掃描可能會受到一些影響(但是吊球檢索速度更快)。

另外在11g中,您可以選擇壓縮您可能需要考慮的高音段(如果您的許可證覆蓋它)。儘管有這樣的小文件,你可能沒有太大的收益。

閱讀更多這裏:http://docs.oracle.com/cd/B28359_01/appdev.111/b28393/adlob_tables.htm

+5

在11g,一個LOB的最大尺寸是(4 GB - 1)*(DB塊大小),該工程以TB 8和128之間。並不是很多人需要超過舊的4 GB的限制,但你可以。 http://docs.oracle.com/cd/B28359_01/server.111/b28320/limits001.htm – 2013-04-06 00:47:48