Gremlin 关系建议
Gremlin relationship recommendations
我正在尝试识别图中缺失的关系并提供建议以将用户添加到组中,因为他的同龄人在同一组中。
例子:
IT 经理 dave 有与组有关系的成员。我想找到共享同一组织或经理但不在该组中的所有顶点。
脚本示例:
g.addV('person').property('name','dave').as('d').
addV('person').property('name','rick').as('r').
addV('person').property('name','mavis').as('m').
addV('person').property('name','larry').as('l').
addE('manages').from('d').to('r').
addE('manages').from('d').to('m').
addE('manages').from('d').to('l').
addV('group').property('name','IT').as('IT').
addE('isIn').from('d').to('IT').
addE('isIn').from('r').to('IT').iterate()
正确的做法是什么?
如果你想识别缺失的关系,你可以这样做:
g.V().hasLabel('group').as('group').
in('isIn').where(outE('manages')).
project('group name', 'manager', 'not in group').
by(select('group').
values('name')).by('name').
by(out('manages').not(where(out('isIn').
where(eq('group')))).
values('name').fold())
*我假设每个组只有一个经理。
我正在尝试识别图中缺失的关系并提供建议以将用户添加到组中,因为他的同龄人在同一组中。 例子: IT 经理 dave 有与组有关系的成员。我想找到共享同一组织或经理但不在该组中的所有顶点。
脚本示例:
g.addV('person').property('name','dave').as('d').
addV('person').property('name','rick').as('r').
addV('person').property('name','mavis').as('m').
addV('person').property('name','larry').as('l').
addE('manages').from('d').to('r').
addE('manages').from('d').to('m').
addE('manages').from('d').to('l').
addV('group').property('name','IT').as('IT').
addE('isIn').from('d').to('IT').
addE('isIn').from('r').to('IT').iterate()
正确的做法是什么?
如果你想识别缺失的关系,你可以这样做:
g.V().hasLabel('group').as('group').
in('isIn').where(outE('manages')).
project('group name', 'manager', 'not in group').
by(select('group').
values('name')).by('name').
by(out('manages').not(where(out('isIn').
where(eq('group')))).
values('name').fold())
*我假设每个组只有一个经理。