使用 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
示例:我尝试使用这个小图
我得到了
希望对您有所帮助。
我正在使用 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
示例:我尝试使用这个小图
我得到了
希望对您有所帮助。