我正在使用C语言编写一个类似数据库的东西(即它将存储和操作大约500,000条记录)。我将在内存受限的环境(VPS)中运行它,因此我不希望内存使用量过高。我不会处理大量数据-最多可能达到总共200MB,但我希望内存占用保持在30MB左右(这些数字是随意取的)。
我的直觉是自己进行页面处理(真正的数据库就是这样做的),但我收到了建议,说我应该分配所有内存,并允许操作系统为我执行虚拟内存分页。我的数字永远不会超过这个数量级。在这种情况下,哪种选择最好?
假设选择第二种方法,那么什么时候对于程序来说自己进行分页才是明智的?显然,可以处理吉比字节的RDBMs必须这样做,但在某个点上,这个问题一定值得考虑。
谢谢!
我的直觉是自己进行页面处理(真正的数据库就是这样做的),但我收到了建议,说我应该分配所有内存,并允许操作系统为我执行虚拟内存分页。我的数字永远不会超过这个数量级。在这种情况下,哪种选择最好?
假设选择第二种方法,那么什么时候对于程序来说自己进行分页才是明智的?显然,可以处理吉比字节的RDBMs必须这样做,但在某个点上,这个问题一定值得考虑。
谢谢!