[Zope-dev] OracleStorage Used in a Production Environment

Matthew T. Kromer matt@zope.com
Wed, 30 Jan 2002 12:00:25 -0500


Eric Roby wrote:

>Is anyone successfully using OracleStorage in a production system or
>(better yet) as a storage server in a ZEO configuration ?  It doesn't
>appear that any work has been done on it for nearly 18 months.  Will
>OracleStorage work with the DCOracle2 product in support of 9i ?
>
>Thanks in advance
>
>Eric
>
>
>__
>


Hi Eric,

There's a modified version of OracleStorage in DCOracle2 -- thats why 
you don't see any activity on the other module.

I've loaded an extremely large data set into it in in-house testing, and 
there are one or two clients out there using it, but I cannot identify 
them to you.

With a well-tuned Oracle, I find that Oracle Storage is about 5 times 
slower than File Storage -- which is actually fantastic, given that its 
a lot easier to append onto the end of a file than it it to update 
tables in a RDBMS, so that a factor of 5x is really quite good!  I 
actually think you can do better than 5x, but it requires having a very 
IO-balanced system -- the one I tested on was Oracle 9i using 3 drives 
to separate out data areas.

However, keep in mind that Oracle Storage still stores pickled data into 
Oracle -- it doesn't do any object-relational mapping for you or 
anything like that; so you can't do operations on Zope data easily from 
within Oracle (although it's notionally possible to integrate a 
de-pickler as a PL/SQL loadable module so that you could actually 
inspect a pickle from inside PL/SQL.)

I have used this in a ZEO envrionment; it works as you would expect (you 
pop out the ZEO server's FileStorage and replace it with an 
OracleStorage).  Because the ZEO clients will cache objects if they have 
the ZEO_CLIENT environment variable set, I normally focus on write speed 
as being the dominant storage limiting factor, not read speed.

And of course, as the obligatory plug: Zope Corporation is always 
willing to undertake specific support engagements should you have the 
requirement to have on-call support.  Our web page with an overview of 
this is http://www.zope.com/Services/SupportContracts should you have an 
interest.