Java 带有Jena+的颗粒推理机;永久空间

Java 带有Jena+的颗粒推理机;永久空间,java,out-of-memory,jena,reasoning,pellet,Java,Out Of Memory,Jena,Reasoning,Pellet,我与Jena一起运行Pellet,如下所示: public void storeInferredModel(Data data) { System.out.println("creating inferred dataset "); Dataset dataset = TDBFactory.createDataset(data.getInferredResultsPath()); System.out.println("creating OntModel ");

我与Jena一起运行Pellet,如下所示:

public void storeInferredModel(Data data) {
    System.out.println("creating inferred dataset ");
    Dataset dataset = TDBFactory.createDataset(data.getInferredResultsPath());
    System.out.println("creating OntModel ");
    OntModel Infmodel = ModelFactory.createOntologyModel(
                          PelletReasonerFactory.THE_SPEC, 
                          dataset.getNamedModel(this.URL));
    System.out.println("adding schema (OWL) to OntModel");
    Infmodel.add(this.owl);
    System.out.println("adding data (RDF) to OntModel ");
    Infmodel.add(data.tdb);
    System.out.println("creating ModelExtractor ");
    ModelExtractor ext = new ModelExtractor(Infmodel);
    System.out.println("replacing OntModel by the Extracted Model");
    dataset.replaceNamedModel(this.URL, ext.extractModel());
    System.out.println("saving inferred model");
    Infmodel.close();
    System.out.println("closing inferred dataset");
    dataset.close();
}
我把上一篇文章写在下面。 我的TDB或原始数据为2.7G。我一直在针对TDB运行reasoner,但我遇到了“PermGen spaces java”的问题,尽管我给程序提供了大约70G内存,reasoner只占用了30G,然后崩溃了。换句话说,它没有达到计算机内存的最大值


我正在运行Linux和Java 64位,服务器中有83 G内存。我已经被这个问题困扰了一个星期。

佩莱在记忆中进行推理。与TDB一起使用它不会像我猜想的那样工作;TDB只是一种存储,Pellet将把执行推理所需的任何东西拉入内存

此外,告诉我们您的数据是2.7G一点用处都没有。TBox的表达能力对推理性能的影响与大小一样大,甚至更大(磁盘大小没有用处,知道三元组的#是一个更好的度量)

因此,了解TBox中的内容对于更好的诊断至关重要。考虑到我们不知道你们在给小球喂食什么,我只能猜测TBox非常有表现力,或者非常大,或者两者兼而有之

Pellet可以处理大型本体,它可以很好地处理NCI同义词表,但它无法处理TBox。DL推理很难,在规模上甚至更难


您可能还需要阅读DL手册,以便对一些有用的背景资料进行良好的回顾。

这并不能解释OP出现permgen错误(或OOME错误)的原因,也不能提供解决问题的具体建议。事实上,它确实存在。也可以在OP没有提供他们试图装入颗粒的TBox的情况下完成。根据他的描述,没有办法修复他所拥有的。他要么减小了尺寸,要么减小了表现力,我们无法判断是哪个,因为他没有提供输入。你可能还想看看DL手册。好的。如果你真的正确地解释了自己,你可能真的在回答这个问题。但是你的答案是如此的专业术语和参考自由,以至于OP可能需要能够回答他自己的问题,然后才能理解你的答案。要想开怀大笑,可以在谷歌上搜索“dl手册”和“tbox”。