【发布时间】:2012-08-10 07:51:01
【问题描述】:
您好,我正在从事自然语言处理的拼写校正项目,我应该从大小为 6.2 MB 1 GB 的文件中读取数据。虽然它工作正常,但我面临的问题是,每次运行 java 程序时,我都必须将数据加载到内存中,并且每次运行都需要相同的时间。
有没有什么办法可以将这些数据缓存到 java 中的内存中?有人可以建议我解决这个问题吗?
基本上我想知道的是,将大文件的内容存储在内存中以便我不必再次读取它的过程是什么?可以说文件是GB。
【问题讨论】:
-
如果它是同一个文件,你能生成某种索引并将其存储在一个文件中吗?
-
您希望您的数据在程序停止时保留在内存中?请添加一些行以明确您想要什么。看来我没听懂你的意思。
-
您是否尝试分析您的代码以查看是否存在瓶颈,例如解析文件?
-
将其编辑为 1GB 是一个完全不同的问题。
-
@NoxHarmonium 是的,这就是我最初想要的。实际上我现在拥有的文件很小,但在一周左右的时间里,我将合并来自小说和其他在线资源的数据.所以它必然会增加。所以那时我将不得不使用像缓存这样的高效东西来确保我不会再次读取内容。我希望这现在很清楚
标签: java algorithm memory-management garbage-collection nlp