Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

How to best use a ramdisk for Windows XP

670683Nov 3 2009 — edited Nov 5 2009
Hi.

The company that I work for uses Oracle10g Personal Edition to analyze data (usually from .csv files) on our user's desktop PCs.
The analyzed data is usually dumped into .csv files , and then loaded into Excel for presentation. Our analysts also keep archives of tens of gigabytes of old data in oracle, although that data generally does not require high-performance processing. In the past, some of our large-data analysis could run for a couple of days, with CPU load hovering at about 1% and the disk seeking like crazy.

I have been tasked with getting maximum performance for our users.

The desktops are running Windows XP 32 bit, and have been configured with 8GB or 16GB of RAM. I have installed Ramdisk software on the desktops, with Ramdisk sizes of 4GB or 11GB. I have also added the /3GB and /userva=2900 flags to boot.ini ,
and I've configured Oracle with a SGA_TARGET of about 2.3GB.

By putting a user data tablespace, a temporary tablespace, and an undo tablespace onto the ramdrive, I have been able to obtain huge performance improvements. Since the ramdisk is relatively small, I have configured these tablespaces as fixed size on the ramdisk, with an additional expanding datafile for each tablespace located on the hard drive for overflow.

Is this a reasonable way of getting adequate performance on this hardware/OS ?

However, this configuration is very unstable. If the machine reboots without saving the ramdisk, oracle will not start. I have been writing batch files to 'auto-recover' oracle when the machine boots, but in some cases I end up manually repairing the Oracle environment. Also, saving/restoring an 11GB ramdisk to the hard drive adds about 20 minutes to a reboot. This seems extremely non-optimal.

Any suggestions for improving this concept? I've been toying with the idea of running two databases on each desktop, 'orcl' which starts automatically and runs off the hard drive , and 'ramorcl' , which is started manually and runs off the ramdrive (with extended datafiles on the hard drive). But would they be able to communicate properly?

Added tags
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Dec 3 2009
Added on Nov 3 2009
12 comments
1,638 views