从顶点获取少量属性还是在 gremlin 中获取整个顶点更好
is it better to get few properties from a vertex or getting the whole vertex in gremlin
在考虑网络调用和查询处理时间时,这些查询中哪些查询具有成本效益
1)
g.V().has('personId','1234')
=> V[4232]
2)
g.V().has('personId','1234').values('name','age')
=> chris
=> 24
3)
g.V().has('personId','1234').valueMap('name','age')
=> [name:[chris],age:[24]]
4)
g.V().has('personId','1234').properties('name','age')
=> vp[name->chris
=>vp[age->24]
获取整个顶点是否会花费我们更多的网络带宽。我通常会得到顶点,因为查询处理很快就完成了
最便宜的是选项二和选项三。返回 Element
,即 Vertex
、Edge
、VertexProperty
比 return 单个结果或 Map
的成本更高或结果。即使是以下内容也比 return 整个 Element
:
便宜
g.V(1).valueMap(true)
从数据的角度来看与g.V(1)
基本相同。
基本规则最终与 SQL 没有太大区别。您可能不会 SELECT * FROM table
,也不应该 return 元素中的所有数据 - 只检索您需要的数据。
在考虑网络调用和查询处理时间时,这些查询中哪些查询具有成本效益
1)
g.V().has('personId','1234')
=> V[4232]
2)
g.V().has('personId','1234').values('name','age')
=> chris
=> 24
3)
g.V().has('personId','1234').valueMap('name','age')
=> [name:[chris],age:[24]]
4)
g.V().has('personId','1234').properties('name','age')
=> vp[name->chris
=>vp[age->24]
获取整个顶点是否会花费我们更多的网络带宽。我通常会得到顶点,因为查询处理很快就完成了
最便宜的是选项二和选项三。返回 Element
,即 Vertex
、Edge
、VertexProperty
比 return 单个结果或 Map
的成本更高或结果。即使是以下内容也比 return 整个 Element
:
g.V(1).valueMap(true)
从数据的角度来看与g.V(1)
基本相同。
基本规则最终与 SQL 没有太大区别。您可能不会 SELECT * FROM table
,也不应该 return 元素中的所有数据 - 只检索您需要的数据。