Path: text.usenetserver.com!out04b.usenetserver.com!news.usenetserver.com!in04.usenetserver.com!news.usenetserver.com!nx01.iad01.newshosting.com!newshosting.com!post01.iad01!not-for-mail
Date: Thu, 07 Feb 2008 21:58:39 -0800
From: DA Morgan <damorgan@psoug.org>
Organization: Puget Sound Oracle Users Group
User-Agent: Thunderbird 2.0.0.9 (Windows/20071031)
MIME-Version: 1.0
Newsgroups: comp.databases.oracle.server
Subject: Re: Convert SAP Oracle Database to IBM DB2 Database??
References: <rq2dnfaTXJ7fjjTanZ2dnUVZ_gSdnZ2d@comcast.com> <1202316971.894290@bubbleator.drizzle.com> <60ubpdF1t3oruU1@mid.individual.net> <1202406159.596824@bubbleator.drizzle.com> <611af0F1tb1ggU1@mid.individual.net> <1202426766.884747@bubbleator.drizzle.com> <611ta1F1sn9cmU1@mid.individual.net> <1202440247.467059@bubbleator.drizzle.com> <6120aqF1sjflgU1@mid.individual.net>
In-Reply-To: <6120aqF1sjflgU1@mid.individual.net>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <1202450291.996022@bubbleator.drizzle.com>
Cache-Post-Path: bubbleator.drizzle.com!unknown@dsl-216-162-218-178.drizzle.com
X-Cache: nntpcache 3.0.1 (see http://www.nntpcache.org/)
Lines: 106
X-Complaints-To: abuse@csolutions.net
Xref: usenetserver.com comp.databases.oracle.server:441265
X-Received-Date: Fri, 08 Feb 2008 00:58:12 EST (text.usenetserver.com)

Serge Rielau wrote:
> DA Morgan wrote:
>> Serge Rielau wrote:
>>> DA Morgan wrote:
>>>> Serge Rielau wrote:
>>>>> DA Morgan wrote:
>>>>>> Serge Rielau wrote:
>>>>>>> DA Morgan wrote:
>>>>>>>> My testing of Oracle compression versus DB2 compression 
>>>>>>>> indicates that
>>>>>>>> DB2 has some catching up to do.
>>>>>>> Interesting, care to elaborate? Always thriving to improve...
>>>>>>> Given Oracle's DeWitt clause I'll gladly accept any information 
>>>>>>> you have by email as to not get you into trouble.
>>>>>> Going to have to disappoint you this time for reasons I am sure 
>>>>>> you can
>>>>>> appreciate.
>>>>> So an unsubstantiated claim... Aside you should use DB2 9.5 to 
>>>>> compare to Oracle 11
>>>>
>>>> If I'd used Oracle 11 I would have.
>>>>
>>>> But as long as you are actively participating how about a brief
>>>> technical presentation from the expert explaining to us how compression
>>>> in DB2 differs from that in Oracle 10g and 11g.
>>>>
>>>> Please include also information as to how headers are designed and how
>>>> blocks are filled? Top down as in Informix for both Top-Down and
>>>> Bottom-Up as in Oracle? Or some other means.
>>> http://blogs.ittoolbox.com/database/technology/archives/compression-in-11g-vs-db2-9-21173 
>>>
>>> Maybe we can also take the discussion there....
>>>
>>> Cheers
>>> Serge
>>
>> I would but there is a rather substantial problem: Chris Eaton's
>> understanding of Oracle compression appears to not even include
>> the marketing materials much less the rather substantial discussion
>> of the concepts and architecture.
>>
>> What I'm saying is that it is not just superficial ... from a 
>> technical point-of-view it is mostly incorrect. He needs to learn how 
>> to read the
>> on-line docs.
> Well the nice thing about BLOGs is the ability to give feedback.
> You are a teacher, no? Teach!
> 
> Cheers
> Serge

Teach someone from IBM? I wouldn't presume to do such a thing.

But here's something for those might want to consider the value
of that blog entry.

CREATE TABLE t1 (
testcol VARCHAR2(50))
TABLESPACE uwdata;

CREATE TABLE t2 (
testcol VARCHAR2(50))
TABLESPACE uwdata COMPRESS;

DECLARE
  x t1.testcol%TYPE;
BEGIN
   FOR i IN 1 .. 100000 LOOP
     SELECT dbms_crypto.randombytes(25)
     INTO x
     FROM dual;

     INSERT INTO t1 VALUES (x);
     INSERT INTO t2 VALUES (x);
   END LOOP;
   COMMIT;
END;
/

-- some sample rows:
3605CAA721159CAC4E462B841419CCB7390F1AE3484FF14963
05B7AE0B6BB076EEAF3E8E7DBA1BE9D5C8F97737AA1FDF21A5
40756BCEBF00CCB80ACA5F4F6BF3AFE6BC19D19EA74F10212B
234812A15930421A208BCF19C943762B5FA11D0C0C7E811F5E
4177AFC94C248D6B6765B8CE45FE3E49E2E5456BA6BA48C147

exec dbms_stats.gather_table_stats(USER, 'T1');
exec dbms_stats.gather_table_stats(USER, 'T2');

SELECT table_name, blocks
FROM user_tables
WHERE table_name IN ('T1', 'T2');

TABLE_NAME                         BLOCKS
------------------------------ ----------
T1                                    780
T2                                    701

Hmmmmm.
-- 
Daniel A. Morgan
Oracle Ace Director & Instructor
University of Washington
damorgan@x.washington.edu (replace x with u to respond)
Puget Sound Oracle Users Group
www.psoug.org
