是否有一种方法来检查有多少数据加载到缓冲区?



我遇到一点小麻烦。我试图加载一个3GB的XML文件到内存中。我已经将JVM堆大小增加到10GB,但似乎文件仍然无法加载。是否有一种方法可以检查我已加载的数据的百分比?当我将XML数据加载到缓冲区中时,我可以在代码中添加堆大小检查吗?我可以使用分析器吗?

下面是我如何使用FSDataInputStream加载XML文件。

val hdfsPath: Path = new Path("./dblp.xml")
val fs: FileSystem = hdfsPath.getFileSystem(conf)
val inputStream: FSDataInputStream = fs.open(hdfsPath)
val xml_load = XML.load(inputStream)

是的,您可以使用profiler。使用VisualVm

或者你甚至可以使用eclipse内存分析器