1

我正在使用 GraphDB loadrdf 工具来加载本体和相当大的数据。我将 pool.buffer.size=800000 和 jvm -Xmx 设置为 24g。我尝试了并行和串行模式。一旦回购总报表超过约 10k,它们都会放慢速度。它最终会减慢到 1 或 2 个语句/秒。有谁知道这是 loadrdf 的正常行为还是有办法优化性能?

编辑我增加了元组索引内存。请参阅我的 repo ttl 配置的一部分:

owlim:entity-index-size "45333" ; 
owlim:cache-memory "24g" ; 
owlim:tuple-index-memory "20g" ; 
owlim:enable-context-index "false" ; 
owlim:enablePredicateList "false" ; 
owlim:predicate-memory "0" ;  
owlim:fts-memory "0" ; 
owlim:ftsIndexPolicy "never" ; 
owlim:ftsLiteralsOnly "true" ; 
owlim:in-memory-literal-properties "false" ; 
owlim:transaction-mode "safe" ; 
owlim:transaction-isolation "true" ; 
owlim:disable-sameAs "true";

但不知何故,这个过程仍然放慢了速度。它以“全球平均速度:1,402 st/s”开头。但在“回购声明:61,831”之后放缓至“全球平均速度:20 st/s”。我给我的jvm:-Xms24g -Xmx36g

4

2 回答 2

1

您可以发布您的存储库配置吗?在其中,有一个参数tuple-index-memory - 这将确定我们被允许保留在内存中的更改量(磁盘页)。这个值越大,我们要做的刷新量就越少。

检查您的设置中是否将其设置为 20G 之类的值,然后重试该过程。

于 2016-08-19T07:57:54.840 回答
0

我已经查看了您的存储库配置 ttl。有这个参数:entity-index-size=45333,需要增加它的值,比如设置为1亿(entity-index-size=100000000)。GraphDB 7 中该参数的默认值为 10M,但由于您已明确设置它,它会被覆盖。

您可以在此处阅读有关该参数的更多信息

于 2016-08-30T08:57:29.967 回答