AllegroGraph 中的 --with-indices 是啥

Posted

技术标签:

【中文标题】AllegroGraph 中的 --with-indices 是啥【英文标题】:What is --with-indices in AllegroGraphAllegroGraph 中的 --with-indices 是什么 【发布时间】:2015-01-26 05:16:46 【问题描述】:

我正在尝试将数据加载到 Allegro Graph 服务器中,其中一个参数是 --with-indices。谁能解释一下这是怎么回事?

我已阅读整个 Allegro Graph 文档,其中提到索引可以是 spogisopgi 等,但没有提及它们的含义。

请准确解释。 (我不是要spogisopgi等的完整形式。我想要的是它们的确切含义。)

【问题讨论】:

【参考方案1】:

您的三元组存储包含三元组spo(主语、谓语、宾语)。针对如此存储的图的查询可能必须遍历大量图才能找到与您的查询匹配的节点。 AllegroGraph 可以存储使遍历更快的索引:例如,查找所有首先匹配的谓词以及附加的主语和宾语节点,它可以使用首先查找谓词的索引pso。如果你的三元组有命名图,你可以添加g,并且你所有的三元组都有 ids i。所以 AG 可以使用索引psogi。 (来自文档:AllegroGraph Triple Indices)

使用一组默认索引创建 AG 三元存储。生成专门的索引是资源密集型的,但如果您知道您将获得哪些类型的查询,您可能会发现指定适当的索引以优化响应时间是值得的。

如果您从命令行加载:

以下示例将单个文件加载到 AllegroGraph 中。

./agload --with-indices "ospgi,posgi,spogi" 三元组存储会生成三个三元组索引:ospgi、posgi 和 spogi。

(来自docs for agload

如果您使用的是 REST 接口,则可以使用指定的索引创建存储库:

PUT /repositories/[名称]

带参数index:

索引 可以指定任意次数。应该保存索引 ID,并且 用于配置为商店创建的索引集。

(来自docs for put repo

或者你可以加载你的三元组,然后这样做:

PUT /repositories/[name]/indices/[type] 确保索引 由类型指示的存在于这家商店中。提交时生效 时间(当然,在使用共享后端或 一个自动提交会话)。

(来自docs for put index

【讨论】:

以上是关于AllegroGraph 中的 --with-indices 是啥的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法将 Java 服务器中的 GraphQL 查询转换为 SPARQL 查询?

快速启动语义网的最佳 rdf 数据库

iOS Xcode 中的 UIViewController 中的 UIView 中的 UITableView

如何用ruby中的数组中的元素替换字符串中的单词?

如何将视图中的 javascript 代码中的对象列表传递给控制器​​中的操作方法

如何从账户 A 中的 Lambda(VPC 中的 Lambda)调用账户 B 中的 AWS Lambda 函数(VPC 中的这个 Lambda)