[ https://issues.apache.org/jira/browse/S2GRAPH-69?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15316426#comment-15316426 ]
ASF GitHub Bot commented on S2GRAPH-69: --------------------------------------- Github user daewon commented on the issue: https://github.com/apache/incubator-s2graph/pull/51 Good idea. +1 > 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 > Labels: optimization, serde > Original Estimate: 168h > Remaining Estimate: 168h > > 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)