Message-Id: <10541.110591@fatcity.com> From: "Steve Orr" Date: Tue, 27 Jun 2000 14:48:23 -0700 Subject: RE: 8i CLOB data needs a labotomy This is a multi-part message in MIME format. ------=_NextPart_000_0014_01BFE046.BE1A2420 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit What about the CRTS_QISI_LOB tablespace? What's the before/after on it? Did the clobs start out in the CRTS_DATA tablespace? No lobs in the system tablespace, right? Check the tablespace_name in dba_segments where segment_type in('LOBSEGMENT','LOBINDEX'). Just some ideas... happy lob hunting. HTH, Steve Orr -----Original Message----- From: root@fatcity.com [mailto:root@fatcity.com]On Behalf Of John Barron Sent: Tuesday, June 27, 2000 2:28 PM To: Multiple recipients of list ORACLE-L Subject: 8i CLOB data needs a labotomy Hi I think my 8i CLOB data needs a labotomy. This is my problem and my work around. We use perl DBD::Oracle to load our database from flat files. Part of it is to load embedded text data into CLOB columns in our table CR_HLD_QISI_CALLS. The CLOB cols are PROBLEMTEXT, ANALYSISTEXT, etc. When we run the perl script the 100M text file mushrooms out to 900M in the tablespace. Using the tablespace coalesce command has no affect on the tablespaces. If we MOVE the tables and CLOB data to another tablespace (or even in the same tablespace) and compress to one extent it shrinks the 800M down to 40M. Why does it take so much tablespace? Is it the way perl loads data? We have set default storage on the tablespace and tables to PCTFREE=0 as there will be no updates to this table. The database is UTF8 with NLSLANG=ja16euc and we do have some indexes on the tables but none of this accounts for the huge space requirements for the initial upload. Any comments, pointers would be appreciated. Ive added our move sql and the space used before and after the table move and coalesce. tia John Barron The SQL for moving the CLOBS and tables ------------------------------------------------------ alter table CRTS.CR_HLD_QISI_CALLS move tablespace CRTS_DATA lob (PROBLEMTEXT) store as (tablespace CRTS_QISI_LOB storage(minextents 1)); alter table CRTS.CR_HLD_QISI_CALLS move lob (ANALYSISTEXT) store as (tablespace CRTS_QISI_LOB storage(minextents 1)); alter table CRTS.CR_HLD_QISI_CALLS move lob (HISTORY) store as (tablespace CRTS_QISI_LOB storage(minextents 1)); alter tablespace CRTS_QISI_DATA coalesce; alter table CRTS.CR_HLD_QISI_CALLS move tablespace CRTS_QISI_DATA lob (ESC_SUMMARY) store as (tablespace CRTS_QISI_LOB storage(minextents 1)); The BEFORE and AFTER space output ------------------------------------------------- Oracle8i Enterprise Edition Release 8.1.6.0.0 - Production With the Partitioning option JServer Release 8.1.6.0.0 Production Table CLOB Col CR_HLD_QISI_CALLS PROBLEMTEXT 64,430,080 CR_HLD_QISI_CALLS ANALYSISTEXT 469,114,880 CR_HLD_QISI_CALLS HISTORY 279,552,000 CR_HLD_QISI_CALLS ESC_SUMMARY 1,597,440 CR_HLD_QISI_CALLS Total 814,694,400 Table altered. Table altered. Table altered. Tablespace altered. Table altered. CR_HLD_QISI_CALLS PROBLEMTEXT 39,936,000 CR_HLD_QISI_CALLS ANALYSISTEXT 532,480 CR_HLD_QISI_CALLS HISTORY 532,480 CR_HLD_QISI_CALLS ESC_SUMMARY 532,480 CR_HLD_QISI_CALLS Total 41,533,440 ------=_NextPart_000_0014_01BFE046.BE1A2420 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
What=20 about the CRTS_QISI_LOB tablespace? What's the before/after on it? Did = the clobs=20 start out in the CRTS_DATA tablespace? No lobs in the system tablespace, = right?=20 Check the tablespace_name in dba_segments where segment_type=20 in('LOBSEGMENT','LOBINDEX'). Just some ideas... happy lob=20 hunting.
HTH,
Steve=20 Orr
-----Original Message-----
From: root@fatcity.com=20 [mailto:root@fatcity.com]On Behalf Of John = Barron
Sent:=20 Tuesday, June 27, 2000 2:28 PM
To: Multiple recipients of = list=20 ORACLE-L
Subject: 8i CLOB data needs a=20 labotomy

Hi =

I think=20 my 8i CLOB data needs a labotomy. This is my problem and my work = around. We=20 use perl DBD::Oracle to load our database from flat files. Part of it = is to=20 load embedded  text data into CLOB columns in our table=20 CR_HLD_QISI_CALLS. The CLOB cols are PROBLEMTEXT, ANALYSISTEXT, etc. = When we=20 run the perl script the 100M text file mushrooms out to 900M in the=20 tablespace. Using the tablespace coalesce command has no affect on the = tablespaces. If we  MOVE the tables and CLOB data to another = tablespace=20 (or even in the same tablespace) and compress to one extent it shrinks = the=20 800M down to 40M.

Why does it take so much tablespace? Is it = the way=20 perl loads data? We have set default storage on the tablespace and = tables to=20 PCTFREE=3D0 as there will be no updates to this table. The database is = UTF8 with=20 NLSLANG=3Dja16euc and we do have some indexes on the tables but none = of this=20 accounts for the huge space requirements for the initial = upload.

Any=20 comments, pointers would be appreciated. Ive added our move sql and = the space=20 used before and after the table move and = coalesce.

tia

John=20 Barron


The SQL for moving the CLOBS and=20 = tables
------------------------------------------------------
alter table CRTS.CR_HLD_QISI_CALLS move tablespace=20 CRTS_DATA
lob (PROBLEMTEXT) store as (tablespace=20 CRTS_QISI_LOB
storage(minextents 1));
alter table = CRTS.CR_HLD_QISI_CALLS=20 move
lob (ANALYSISTEXT) store as (tablespace=20 CRTS_QISI_LOB
storage(minextents 1));
alter table = CRTS.CR_HLD_QISI_CALLS=20 move
lob (HISTORY) store as (tablespace = CRTS_QISI_LOB
storage(minextents=20 1));

alter tablespace CRTS_QISI_DATA coalesce;

alter = table=20 CRTS.CR_HLD_QISI_CALLS move tablespace CRTS_QISI_DATA
lob = (ESC_SUMMARY)=20 store as (tablespace CRTS_QISI_LOB
storage(minextents=20 1));


The BEFORE and = AFTER=20 space=20 = output
-------------------------------------------------
Oracle8i Enterprise Edition Release 8.1.6.0.0 - = Production
With=20 the Partitioning option
JServer Release 8.1.6.0.0 =20 = Production

Table        &n= bsp;      =20 CLOB Col
CR_HLD_QISI_CALLS   =20 = PROBLEMTEXT          &n= bsp;    =20 64,430,080
CR_HLD_QISI_CALLS   =20 = ANALYSISTEXT          &= nbsp;  =20 469,114,880
CR_HLD_QISI_CALLS   =20 = HISTORY           =        =20 279,552,000
CR_HLD_QISI_CALLS   =20 = ESC_SUMMARY          &n= bsp;     =20 1,597,440
CR_HLD_QISI_CALLS   =20 = Total           &n= bsp;        =20 814,694,400

Table altered.


Table = altered.


Table=20 altered.


Tablespace altered.


Table=20 altered.

CR_HLD_QISI_CALLS   =20 = PROBLEMTEXT          &n= bsp;    =20 39,936,000
CR_HLD_QISI_CALLS   =20 = ANALYSISTEXT          &= nbsp;      =20 532,480
CR_HLD_QISI_CALLS   =20 = HISTORY           =            =20 532,480
CR_HLD_QISI_CALLS   =20 = ESC_SUMMARY          &n= bsp;       =20 532,480
CR_HLD_QISI_CALLS   =20 = Total           &n=