我有一组可以可视化为有向图的数据:
A{id:1,父本:null},B{id:2,父母:1,3},C{id:3,父母:null},D{id:4,父母:2},F{id:5,父母:4},G{id:6,父母:3}

在ElasticSearch中对这类数据(子数据可以有多个父)建模的最佳方法是什么,以及如何检索给定节点id之一的整个图?
更新
人们建议使用Graph,但我只能使用ElasticSearch。因此,如果我将图形建模为ElasticSearch中的边(因为我只关心链接信息)。以下是上述示例的数据外观:
{id:e1,从:V1,到:V2},{id:e2,from:v3,to:v2},{id:e3,from:v3,to:v6},{id:e4,from:v2,to:v4},{id:e5,from:v4,to:v5}
如何检索具有性能的整个图?另外,我想知道,这是一个良好的ElasticSearch图形建模吗?
发布于 2016-02-24 10:03:30
您可以向文档中添加另一个gid字段,该字段可能包含图形ID
{gid: 123, id:e1, from:v1, to:v2},
{gid: 123, id:e2, from:v3, to:v2},
{gid: 123, id:e3, from:v3, to:v6},
{gid: 123, id:e4, from:v2, to:v4},
{gid: 123, id:e5, from:v4, to:v5}这样,您就可以使用一个term查询中的ID检索图形的所有节点,然后就可以使用from/to字段重建图。
例如,在节点红项目中,它们将其流图存储为JSON文档,而属于同一流的所有节点共享相同的流ID (参见这里的样本流中的z字段)。
https://stackoverflow.com/questions/35588049
复制相似问题