【问题标题】:Why is Sesame limited to, lets say, 150m triples?为什么 Sesame 限制在 150m 三元组?
【发布时间】:2013-03-30 21:46:45
【问题描述】:

我不会确切地说它是有限的,但只要我能看到给出的建议是那种“如果你需要超越,你可以更改后端存储......”。为什么?为什么 Sesame 在超过 150-200m 三倍时不如 OWLIM 或 Allegrgraph 高效。为了做得这么大,实施了哪些优化?底层数据结构是否不同?

【问题讨论】:

标签: sesame


【解决方案1】:

@Jeen Broekstra 在这里回答: http://answers.semanticweb.com/questions/21881/why-is-sesame-limited-to-lets-say-150m-triples

  1. 构成 RDF 语句的实际值(即主体、谓词和客体)以相对简单的散列索引,将整数 ID 映射到实际数据值。该索引执行大量内存缓存以加快查找速度,但随着存储大小的增加,缓存中不存在值且需要从磁盘检索的值的概率(在插入或查找期间)增加,并且此外,随着散列大小的增加,磁盘查找本身的开销也变得更大。
  2. 本机存储中的数据检索已得到平衡,以充分利用文件系统页面大小,最大限度地提高 B 树节点的检索速度。这种优化依赖于重复使用相同数据块的连续查找,以便可以重复使用操作系统级别的页面缓存。然而,随着事务大小(以及 B 树)的增长,这种启发式开始失败的频率越来越高。
  3. 随着 B 树的大小增加,大型级联拆分的机会增加。

【讨论】:

猜你喜欢
  • 2018-03-06
  • 1970-01-01
  • 1970-01-01
  • 2010-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-12
相关资源
最近更新 更多