RE: $dbh-{RowCacheSize} = 1000

2006-08-31 Thread Garrett, Philip \(MAN-Corporate\)
Loo, Peter # PHX wrote:
 Hi,
 
 Can someone please tell me what the size is when I set it to 1000?  Is
 it one meg?

It's $your_query_row_size * 1000.  It's not a byte size, it's a number
of rows.

Regards,
Philip


RE: $dbh-{RowCacheSize} = 1000

2006-08-31 Thread Ronald J Kimball
Loo, Peter # PHX [mailto:[EMAIL PROTECTED] wrote:
 Sent: Thursday, August 31, 2006 5:17 PM
 To: DBI-Users
 Subject: $dbh-{RowCacheSize} = 1000
 
 Hi,
 
 Can someone please tell me what the size is when I set it to 1000?  Is
 it one meg?
 

perldoc DBI:

   RowCacheSize  (integer)
   A hint to the driver indicating the size of the local
   row cache that the application would like the driver
   to use for future SELECT statements.  If a row cache
   is not implemented, then setting RowCacheSize is
   ignored and getting the value returns undef.

   Some RowCacheSize values have special meaning, as
   follows:

 0 - Automatically determine a reasonable cache size for each SELECT
 1 - Disable the local row cache
1 - Cache this many rows
0 - Cache as many rows that will fit into this much memory for each
 SELECT.

   Note that large cache sizes may require a very large
   amount of memory (cached rows * maximum size of row).
   Also, a large cache will cause a longer delay not only
   for the first fetch, but also whenever the cache needs
   refilling.

   See also the RowsInCache statement handle attribute.



RE: $dbh-{RowCacheSize} = 1000

2006-08-31 Thread Loo, Peter # PHX

Hi All,

What would you recommend I set this option to if I am sending all the
SELECTed rows to a named pipe?
 
Peter

-Original Message-
From: Ronald J Kimball [mailto:[EMAIL PROTECTED] 
Sent: Thursday, August 31, 2006 2:23 PM
To: Loo, Peter # PHX; DBI-Users
Subject: RE: $dbh-{RowCacheSize} = 1000

Loo, Peter # PHX [mailto:[EMAIL PROTECTED] wrote:
 Sent: Thursday, August 31, 2006 5:17 PM
 To: DBI-Users
 Subject: $dbh-{RowCacheSize} = 1000
 
 Hi,
 
 Can someone please tell me what the size is when I set it to 1000?  Is

 it one meg?
 

perldoc DBI:

   RowCacheSize  (integer)
   A hint to the driver indicating the size of the local
   row cache that the application would like the driver
   to use for future SELECT statements.  If a row cache
   is not implemented, then setting RowCacheSize is
   ignored and getting the value returns undef.

   Some RowCacheSize values have special meaning, as
   follows:

 0 - Automatically determine a reasonable cache size for each
SELECT
 1 - Disable the local row cache
1 - Cache this many rows
0 - Cache as many rows that will fit into this much memory for
each
 SELECT.

   Note that large cache sizes may require a very large
   amount of memory (cached rows * maximum size of row).
   Also, a large cache will cause a longer delay not only
   for the first fetch, but also whenever the cache needs
   refilling.

   See also the RowsInCache statement handle attribute.



This E-mail message is for the sole use of the intended recipient(s) and
may contain confidential and privileged information.  Any unauthorized
review, use, disclosure or distribution is prohibited.  If you are not
the intended recipient, please contact the sender by reply E-mail, and
destroy all copies of the original message.


RE: $dbh-{RowCacheSize} = 1000

2006-08-31 Thread Garrett, Philip \(MAN-Corporate\)
Loo, Peter # PHX wrote:

 RowCacheSize  (integer)
 
 What would you recommend I set this option to if I am sending all the
 SELECTed rows to a named pipe?

I'd recommend you leave it alone, unless your database roundtrips are
really expensive.  And if they are, the only thing that can tell you
what the best value would be is to benchmark different settings.

It will only help if the program on the other end of the named pipe can
accept data faster than you can send it.

Philip


RE: $dbh-{RowCacheSize} = 1000

2006-08-31 Thread Garrett, Philip \(MAN-Corporate\)
I would expect a C program to be able to write to a file faster than any 
database loader could load data.



From: Loo, Peter # PHX [mailto:[EMAIL PROTECTED]
Sent: Thu 8/31/2006 5:49 PM
To: Garrett, Philip (MAN-Corporate); DBI-Users
Subject: RE: $dbh-{RowCacheSize} = 1000




The reason I asked the question is that the Pro*C program appears to be
writing the output to a file faster than my Perl program can write to
the named pipe.  The other end of the named pipe is a native database
utility similar to the sqlldr (nzload).  I don't know where the bottle
neck is so I might have to break up the program into to separate parts.
Have Perl dump the table to a file then feed the file using nzload and
calculate the total time for each step.

Peter

-Original Message-
From: Garrett, Philip (MAN-Corporate)
[mailto:[EMAIL PROTECTED]
Sent: Thursday, August 31, 2006 2:44 PM
To: DBI-Users
Subject: RE: $dbh-{RowCacheSize} = 1000

Loo, Peter # PHX wrote:

 RowCacheSize  (integer)

 What would you recommend I set this option to if I am sending all the
 SELECTed rows to a named pipe?

I'd recommend you leave it alone, unless your database roundtrips are
really expensive.  And if they are, the only thing that can tell you
what the best value would be is to benchmark different settings.

It will only help if the program on the other end of the named pipe can
accept data faster than you can send it.

Philip


This E-mail message is for the sole use of the intended recipient(s) and
may contain confidential and privileged information.  Any unauthorized
review, use, disclosure or distribution is prohibited.  If you are not
the intended recipient, please contact the sender by reply E-mail, and
destroy all copies of the original message.