【发布时间】:2017-09-26 15:28:01
【问题描述】:
我正在为我的 ArangoDB 数据库建模,并且我创建的边缘集合列表越来越多。我可以将所有边缘组合成一个名为 relations 的边缘集合,并带有 type 参数。 它肯定会清理我的表列表,但它会对我的遍历查询有任何影响吗?会有正面或负面的影响吗?
【问题讨论】:
标签: arangodb
我正在为我的 ArangoDB 数据库建模,并且我创建的边缘集合列表越来越多。我可以将所有边缘组合成一个名为 relations 的边缘集合,并带有 type 参数。 它肯定会清理我的表列表,但它会对我的遍历查询有任何影响吗?会有正面或负面的影响吗?
【问题讨论】:
标签: arangodb
您应该为边缘集合添加一个以顶点为中心的索引。这允许您使用单个边缘集合,而不会对性能产生很大影响。
您基本上可以在“_from”或“_to”字段和type 属性上添加索引。
如果您的遍历查询需要两个方向,则需要添加两个索引,一个在“_to”+“_type”上,一个在“_from”+“_type”上
文档中的示例只是建议使用跳过列表索引,但您可能应该使用 hash-index,因为 type 字段包含离散值。
https://docs.arangodb.com/3.2/Manual/Indexing/IndexBasics.html#vertex-centric-indexes
【讨论】: