如何解决我应该为TimesTen数据库使用大页面吗?如果是,该如何配置?
我听说建议对TimesTen数据库使用的内存使用大页面。那是对的吗?如果是这样,我如何配置OS和TimesTen以确保其使用大页面?
解决方法
如果您的数据库很大,则使用大页面是有益的;如果数据库的大小> = 256 GB,则必须使用大页面。您应该使用显式配置的大页面非透明大页面。为了配置合适的操作系统,您需要:
-
确定总共需要多少个大页面(所有并发活动数据库的总和)。对于每个数据库,确定数据库共享内存段的大小,然后除以系统巨大的页面大小(默认为2 MB)并四舍五入。将这些值相加即可得出大页面的数量。对于系统上的所有其他活动,您必须保留没有分配给大页面的足够内存,这一点至关重要。
-
编辑文件 /etc/sysctl.conf 并添加(或修改)行
vm.nr_hugepages = N
其中 N 是您确定的值。
- 您还需要添加/修改此行
vm.hugetlb_shm_group = timesten_instance_admin_gid
其中 timesten_instance_admin_gid 是TimesTen实例管理员的用户的数字组ID。
-
确保允许TimesTen实例管理员用户锁定足够的内存(始终锁定大页面)。通常,这是通过 /etc/security/limits.conf (内存锁参数)中的条目完成的,但是如果您正在systemd下运行TimesTen守护程序,则需要查阅相关文档以了解如何应用设置在那种环境中。
-
如果必须进行上述任何更改,请重新启动系统。
-
检查是否已配置了预期的大页面数量( cat / proc / meminfo )。
TimesTen 18.1和更高版本在创建数据库内存段时将自动尝试使用大页面。如果尝试失败,它将尝试转而使用常规内存。因此,不需要在TimesTen侧进行特殊配置。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。