使用 OrientDB Studio 可视化图形

Visualizing graph with OrientDB Studio

我正在使用 OrientDB (2.2.10),偶尔我想目视检查我的数据集以确保我做的事情是正确的。在 OrientDB http://orientdb.com/orientdb/ 的这个页面上,您可以看到带有以下查询的大图的漂亮可视化:

select * from V limit -1;

所以我在我的数据集上尝试了相同的查询,但结果非常缓慢,我无法使用它。我的数据集不是很大(几百个顶点,几千条边)但结果仍然不可行。我尝试了所有主要的浏览器,但结果都是一样的。我的电脑也不是动力不足,我有一个四核 i7 和 16GB 内存。

作为一个非常简单的例子,我有下图: 酒吧 --WITHIN---> 城市 --LOCATED_IN--> 国家/地区

此处: 我至少能够获得一个关于如何在图形上执行此类查询的示例。我设法得到了我的图表的一个子集,例如:

select expand(
bothE('WITHIN').bothV()
) from Bar where barName='Foo' limit -1

我得到了 1 个 Bar 顶点、WITHIN 边和 City 顶点的图形。但是,如果我现在想更进一步,也获取城市所在的国家/地区,我将无法让这种查询方式为我工作。我试过这个:

select expand(
bothE('WITHIN').bothV()
.bothE('LOCATED_IN').bothV()
) from Bar where barName='Foo' limit -1

这会导致显示相同的子集。但是,如果我先 运行 第一个查询,然后不清除 canvas 运行 第二个查询,我确实得到了 3 个顶点。所以看起来我很接近,但我想在一个查询中获取所有 3 个顶点和它的边,而不必先 运行 一个然后另一个。有人能给我指出正确的方向吗?

如果你想得到所有三个顶点,从中间(城市)开始比进出得到酒吧和乡村要容易得多。我试过类似的小结构:

要获取城市、酒吧名称和国家/地区,您可以尝试这样的查询:

select name, in("WITHIN").name as barName,out("LOCATED_IN").name as barCountry from (select from City where name='Milan') unwind barName, barCountry

输出将是:

希望对您有所帮助。 如果它不适合您的情况,请告诉我。

你可以使用

traverse * from (select from bar where barName='Foo') while $depth <= 4

示例:我尝试使用这个小图

我得到了

希望对您有所帮助。