当前位置:  开发笔记 > 编程语言 > 正文

应用程序的内存中搜索索引占用了太多内存 - 任何建议?

如何解决《应用程序的内存中搜索索引占用了太多内存-任何建议?》经验,为你挑选了0个好方法。

在我们的桌面应用程序中,我们使用倒排索引实现了一个简单的搜索引擎.

不幸的是,我们的一些用户的数据集可能变得非常大,例如在创建反向索引之前占用大约1GB的内存.反向索引本身占用大量内存,几乎与索引的数据一样多(另外1GB的RAM).

显然这会产生内存不足错误的问题,因为每个应用程序的32位Windows限制为2GB内存,或者具有较少规格的计算机的用户难以应对内存需求.

我们的倒排索引存储为:

Dictionary>

这是在处理每个对象的数据加载期间创建的,这样applicationObject的键字符串和描述字存储在倒排索引中.

所以,我的问题是:是否有可能在空间方式更有效地存储搜索索引?也许需要使用不同的结构或策略?或者可以创建一种CompressedDictionary?由于它存储了很多字符串,我希望它是高度可压缩的.

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有