dbTalk Databases Forums  

CLOB: Why are they so slow (compared with VARCHAR2)

comp.databases.oracle comp.databases.oracle


Discuss CLOB: Why are they so slow (compared with VARCHAR2) in the comp.databases.oracle forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Mat Hess
 
Posts: n/a

Default CLOB: Why are they so slow (compared with VARCHAR2) - 01-17-2005 , 03:22 AM






We are currently developing a new application. In this application, we
have a table which will hold a large number of rows, where many text
fields (one text field per row) will be stored. The users would prefer
to have an unlimited field size (in spite of the fact that most of all
fields have much less than 4000 characters), so we chose CLOB as the
datatype of the corresponding column.

We experienced very poor performance when we were using CLOB field,
compared with VARCHAR2. Please try the following:

create table test (test_text clob)
/
insert into test values ('this is just a test')
-- REPEAT THE INSERT 2000 TIMES
/

In my Database, a SELECT * FROM test takes 0.890 seconds.
If I run the same script, but use VARCHAR2(4000) for the test_text
column, then the SELECT takes only 0.031 seconds.

My Questions:
1. Why are CLOBS so slow ?
2. Is there a way to improve the performance of the CLOB Fields ?

Kind Regards
Mat Hess

Reply With Quote
  #2  
Old   
DA Morgan
 
Posts: n/a

Default Re: CLOB: Why are they so slow (compared with VARCHAR2) - 01-17-2005 , 04:12 PM






Mat Hess wrote:
Quote:
We are currently developing a new application. In this application, we
have a table which will hold a large number of rows, where many text
fields (one text field per row) will be stored. The users would prefer
to have an unlimited field size (in spite of the fact that most of all
fields have much less than 4000 characters), so we chose CLOB as the
datatype of the corresponding column.

We experienced very poor performance when we were using CLOB field,
compared with VARCHAR2. Please try the following:

create table test (test_text clob)
/
insert into test values ('this is just a test')
-- REPEAT THE INSERT 2000 TIMES
/

In my Database, a SELECT * FROM test takes 0.890 seconds.
If I run the same script, but use VARCHAR2(4000) for the test_text
column, then the SELECT takes only 0.031 seconds.

My Questions:
1. Why are CLOBS so slow ?
2. Is there a way to improve the performance of the CLOB Fields ?

Kind Regards
Mat Hess
And your Oracle version is?
And running StatsPack and looking at waits reveals?
And the difference in speed is a real or theoretical problem?
--
Daniel A. Morgan
University of Washington
damorgan@x.washington.edu
(replace 'x' with 'u' to respond)







Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.