Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle 如何选择HugePage大小_Oracle_Page Tables_Huge Pages - Fatal编程技术网

Oracle 如何选择HugePage大小

Oracle 如何选择HugePage大小,oracle,page-tables,huge-pages,Oracle,Page Tables,Huge Pages,据我所知,为了访问RAM中的物理内存,我们需要页表中的一个条目。因此,如果Oracle数据库中有60 TB的数据和125GB的RAM,那么HugePages的最佳大小和数量是多少 Oracle文档[]建议允许memlock锁定“至少90%的当前RAM” 如果我分配1GB(1048576KB)的页面条目大小,是否意味着我需要静态分配90%的125GB,如下所示 112 000 000 KB/1 048 576 KB~=106页 或者对于2MB的页面输入 112000KB/(2MB*1024KB/1

据我所知,为了访问RAM中的物理内存,我们需要页表中的一个条目。因此,如果Oracle数据库中有60 TB的数据和125GB的RAM,那么HugePages的最佳大小和数量是多少

Oracle文档[]建议允许
memlock
锁定“至少90%的当前RAM”

如果我分配1GB(1048576KB)的页面条目大小,是否意味着我需要静态分配90%的125GB,如下所示

112 000 000 KB/1 048 576 KB~=106页

或者对于2MB的页面输入

112000KB/(2MB*1024KB/1MB)~=54687页


我最大的困惑是,如果页表条目占用了90%的RAM,那么实际的数据去了哪里?

数据库的大小是不相关的。您希望配置足够的hugepages来保存SGA(如果在同一台服务器上运行多个Oracle实例,则“全部”SGA)。可能最好的计算器脚本(也是我使用的)是我的Oracle支持文档ID 401749.1。当然,你必须有一个付费的支持合同才能到达那里。缺少这一点,就需要一个脚本和描述。回顾一下,我发现您引用的文档还包含一个脚本,用于在/etc/sysctl.conf中推荐vm.nr_hugepages=value。总而言之,我只想看看你的引证医生,因为你已经有了。至于你的问题“实际数据到哪里去了?”它在磁盘上。直到它被读取,在这种情况下,它进入内存中的数据缓冲区。听起来你需要复习一下