整个Oracle数据库在内存中

时间:2015-06-19 22:48:47

标签: database oracle ram sizing

假设我有一个Oracle数据库,其数据文件大小为256 GB。为了将整个数据库托管在RAM中,使用具有384 GB RAM的服务器是一个好主意吗?

如果你只有128 GB内存,那有什么区别吗?

我在谈论缓存和Oracle内部工作,而不是基于内存的文件系统。假设OLTP和100 GB工作集。

此致

2 个答案:

答案 0 :(得分:4)

假设您正在谈论Oracle使用内存进行缓存和其他进程而不是基于内存的文件系统(这是一个糟糕的想法)......更多内存几乎总是比内存更少。

现实世界的答案取决于它。如果您的工作数据集是几GB或更少,那么额外的内存将无法提供帮助。

您需要多少内存以及额外内存何时停止帮助取决于您的应用程序和DB(OLTP,DSS)的样式,并且没有简单的是/否答案。

答案 1 :(得分:1)

使用观看次数V$SGA_TARGET_ADVICEV$PGA_TARGET_ADVICE来预测额外内存的性能提升。

Oracle记录了许多有关物理(磁盘)和逻辑(总)I / O请求的统计信息。人们常常对buffer cache hit ratio进行过痴迷。它可能会有所帮助,但这个数字并不能说明整个故事。如果该比率为99%,那么您的缓存可能已足够,添加更多内存将无济于事。如果它低,则可能从更多内存中受益,或者使用磁盘的进程可能不是时间关键。

在请求更多内存之前要小心。我已经看到大量的内存浪费,因为有些人认为更多的内存将解决所有问题。 Oracle具有许多I / O功能,可帮助减少内存需求。 "内存数据库"时尚主要是炒作。