|
原帖由 unixnewbie 于 2008-10-30 10:26 发表 ![]()
You're not caching every LOBs at the same time, are you? My understanding of your case is that the SP is suffering from excessfive overflow, so you don't want those VARCHAR fields to adversely affect the SP. The access to VARCHAR fields is limited.
that's right, the current major bottleneck is the overflow for varchar columns. HOWEVER, it may not a good idea if the change will cause performance degradation for other operations such like INSERT or UPDATE.
Of course this approach will resolve the slowness for SELECT (because FETCH or TBSCAN will not read LOB data), however it could cause negative effect to insert/delete.
Note that the slowness will happen several days after reorg. that means right after reorg the data is organized. In that case, insert/delete/update may not have to take multiple I/Os if it's VARCHAR. After changing to LOB the performance might be affected in this "good case" (right after reorg).
But yeah, I agree that if the table is really messy and more than 60-70% records are overflowed, LOB won't make performance worse for insert/update/delete, and it will make performance good for SELECT 
guess this is the coolest one i've heard in this thread (of course the best/correct approach is redesign the application, but changing to LOB is a cool one that I didn't think too much into). I just quickly thought about it when discussing with cust and thought changing to LOB would significantly decrease I/O performance. But after thinking more into it now, it's not THAT bad as it looked like.... |
|