Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Memory based tables
You can use memory based disk storage. You can access the storage at
similar speed you access the memory.
But in most case, if your application is well designed/writtened, redo write will not be a bottleneck. We have several database generated GBytes of redo per minute during peak time and we don't see redo as the bottleneck. (But there is other bottleneck when load really comes that high)
Caching a whole table in memory does not garantee the speed, though you can. Define a keep pool big enough and increase your _small_table_threshold. Even you do a lot of full table scan, table can be cached.
On 7/19/05, Ondrej Florian <OFlorian.geo_at_yahoo.com> wrote:
> Hello,
> I would like to know if there is such a thing as memory based table
> in Oracle. What I mean be memory based is table which doesn't require
> any disk IO for storing or retrieving data. I am working on a project
> that includes price database which is obviously very IO intensive by
> nature. Since I can afford to loose some data during the server
> crash, I though about putting them all into memory. The reason why I
> cannot use something like MySQL or even some home grown kind of
> solution is that prices are to be combined with our static data and
> it is essential to keep everything in one database. One part of the
> solution is to cache data in the database for read access and this
> works very well. The problem is the write access. Since price updates
> are spread over long time period, it is very hard to do any type of
> mass import. So essentially you end up with a lot of small insert,
> update, delete transactions which means the the the performance
> suffers. Now I tried to do something every stupid. I moved the redo
> logs into a ramdisk. Something that the real DB would never do. Hey,
> I am not a DBA, I am programmer :-). Anyhow I got about 10x faster
> throughput without sweat. Obviously the problem is what happens when
> there is a crash. Loosing the data it self is not big deal. The
> problem is that as I found out Oracle has really hard time dealing
> with deleted redo logs. In the end I had to reinstall the whole
> database. Not really surprising outcome, but it got me thinking. Is
> there a safe way to eliminate disk IO in Oracle ?
>
> I hope my question is understandable enough,
> Thanks for your response,
>
> Ondrej
>
> --
> http://www.freelists.org/webpage/oracle-l
>
-- Regards Zhu Chao www.cnoug.org -- http://www.freelists.org/webpage/oracle-lReceived on Tue Jul 19 2005 - 05:01:05 CDT