首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DolphinDB内存管理

DolphinDB内存管理
EN

Stack Overflow用户
提问于 2019-04-28 11:42:51
回答 1查看 104关注 0票数 0

我的台式机有32G内存。我需要在DolphinDB中使用一个500 to的分区表。每个分区大约200MB。如果我在做一个操作,比如对整个表上的一列进行求和,我想了解DolphinDB是如何管理内存的。在我看来,对于已分区的表和未分区的表,DolphinDB进行的内存管理是不同的。

EN

回答 1

Stack Overflow用户

发布于 2019-05-01 07:18:42

正如您所说,在处理分区表时,DolphinDB不必同时将所有数据加载到内存中。以你的例子为例。有大约2500个分区需要处理,并假设您的桌面有8个超线程。DolphinDB会将多达8个分区加载到内存中,并同时处理它们。也就是说,峰值内存使用不会超过200M *8加上一些工作内存。DolphinDB是一个列式数据库,它只在分区中加载必要的列。因此,内存使用量比您的示例中的200M *8要少得多,因为计算只涉及一列。

让我来解释一下DolphinDB的缓存机制。在分区上执行计算后,DolphinDB不会立即从内存中释放分区的缓存。当内存使用量达到设置的限制(由maxMemSize设置)时,DolphinDB开始逐出缓存。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55886822

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档