DOYUNG YOON created S2GRAPH-69:
----------------------------------

             Summary: Change IndexEdge's props data type. 
                 Key: S2GRAPH-69
                 URL: https://issues.apache.org/jira/browse/S2GRAPH-69
             Project: S2Graph
          Issue Type: Sub-task
            Reporter: DOYUNG YOON
            Assignee: DOYUNG YOON


User query traverse on IndexEdge, and current implemenation for deserialize 
bytes array into IndexEdge first(IndexEdgeDeserializable), then call 
IndexEdge#toEdge to create Edge class.

I found out following parts copy data which is unnecessary.

{noformat}
props.map { case (k, v) => k -> InnerValLikeWithTs(v, version) }
{noformat}

This inefficiency exist because IndexEdge use Map[Byte, InnerValLike] and Edge 
use Map[Byte, InnerValLikeWithTs] as type of props value.

It sounds like micro optimization but since this is called a lot, actually 
dependent on # fetched edges, I think improving this would create some changes 
on performance.

To remove unnecessary copy, I am suggesting change type of IndexEdge's props 
same with Edge's props type Map[Byte, InnerValLikeWithTs].




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to