加载小csv文件后Java中的内存大小爆炸

加载小csv文件后Java中的内存大小爆炸,java,csv,data-science,Java,Csv,Data Science,我将一个251Mb的CSV文件加载到java中,现在我被告知该文件的内存使用量为6.8Gb 我使用一个映射来保存所有的行,每一行都保存在一个对象中,其中有一个字符串,long和另一个映射用于其他字符串,因为其中可能有多少字符串存在一些变化 内存是如何爆炸的?您可以使用各种JVM探查器来确定内存的去向。VisualVM(我相信)是免费的,并且附带了JDK的旧版本。我不知道它是否已经更新为最新的java版本(取决于您使用的是什么)。但是JProfiler和YourKit也在那里(尽管我相信它们是为商

我将一个251Mb的CSV文件加载到java中,现在我被告知该文件的内存使用量为6.8Gb

我使用一个映射来保存所有的行,每一行都保存在一个对象中,其中有一个字符串,long和另一个映射用于其他字符串,因为其中可能有多少字符串存在一些变化


内存是如何爆炸的?

您可以使用各种JVM探查器来确定内存的去向。VisualVM(我相信)是免费的,并且附带了JDK的旧版本。我不知道它是否已经更新为最新的java版本(取决于您使用的是什么)。但是JProfiler和YourKit也在那里(尽管我相信它们是为商业用途付费的)。